Spamabwehr vor Kapitulation: Greifen gängige Methoden noch?

(http://www.zdnet.de/magazin/39192575/spamabwehr-vor-kapitulation-greifen-gaengige-methoden-noch.htm)

von Christoph H. Hochstätter, 25. Juni 2008

Immer häufiger versagen Anti-Spam-Maßnahmen: Die Inbox erhält unerwünschte Mails. Wichtige Mails landen hingegen im Spam-Ordner. ZDNet untersucht die eingesetzten Methoden und zeigt, was man besser machen kann.

Ohne wirksame Spambekämpfung wäre es heutzutage schier unmöglich, sich in der eigenen Mailbox zurechtzufinden. Experten sind sich zwar nicht ganz einig, wie hoch der Prozentsatz des Spams am gesamten E-Mail-Aufkommen im Internet ist, Schätzungen unter 90 Prozent gibt es allerdings nicht.

Die Methoden zur Spambekämpfung sind alles andere als perfekt. Die Probleme sind allgemein bekannt: In der Inbox befinden sich häufig doppelt so viele Spam-Mails wie gezielt gerichtete Mails. Andererseits findet man ab und zu die E-Mail eines Bekannten im Spam-Ordner, oder sie kommt gar nicht erst an. Das bezeichnet man als "False Positive".

False Positives sind besonders kritisch. Eine einzige nicht zugestellte E-Mail kann leicht zu Missverständnissen zwischen Sender und Empfänger führen. Oft haben E-Mail-Nutzer keinen Einfluss darauf, ob eine vom Server als Spam erkannte E-Mail im Spam-Ordner landet oder kommentarlos gelöscht wird.

Die meisten Anbieter von E-Mail-Accounts für Privatanwender erlauben zwar umfangreiche Einstellmöglichkeiten, was mit vermeintlichen Spam-Mails passieren soll, anders sieht es jedoch für die Nutzer von Firmen-Accounts aus. Hier dominiert Microsoft Exchange als E-Mail-Plattform.

Das zugehörige Sicherheitsprodukt Forefront Security for Exchange Server[1] löscht standardmäßig alle E-Mails, die als Spam erkannt werden. Diese E-Mails kommen erst gar nicht beim Benutzer an. Dies lässt sich umstellen, jedoch liegt die Entscheidung darüber beim Administrator. Meist belassen es die Administratoren beim Standard, um ein Überlaufen der User-Mailboxen zu verhindern. False Positives sind so vorprogrammiert.

Die Auswirkungen von False Positives wären deutlich geringer, wenn es eine Möglichkeit gäbe, den Absender zu informieren, dass die E-Mail nicht zugestellt wurde. Darauf wird in der Regel allerdings verzichtet. Spammer benutzen meist echte E-Mail-Adressen als Absender. Der Grund ist einfach: Wird eine E-Mail mit einer nicht existierenden Domain als Absender verschickt, so lehnen SMTP[2]-Mailer eine solche E-Mail ab.

Spammer müssen daher zumindest beim Domainnamen nach dem "@" auf existierende Domains zurückgreifen. Meist gilt das auch für den Benutzernamen vor dem "@". Denn es gibt die Möglichkeit, auch diesen Namen auf Echtheit zu überprüfen.

Das dafür vorgesehene Kommando VRFY (Verify) ist bei den meisten Mailern zwar deaktiviert, jedoch kann ein Mailer die Echtheit überprüfen, indem er vor der Zustellung versucht dem Absender eine Sondierungsmail (Probe) zu schicken. Ist der Absendername gefälscht, bekommt er einen Fehler zurück. Ist der Absendername echt, bricht er die Verbindung ab.

Diese Form der "Sondierung" ist äußerst umstritten, wird in der Praxis jedoch häufig verwendet. Lehnt nun ein Mailer eine E-Mail ab, weil er sie als Spam eingestuft hat, so sollte er dem Absender nicht antworten. Da die E-Mail-Adresse des Absenders gefälscht ist, bekäme ein Unbeteiligter eine Nachricht, dass seine Mail, die er gar nicht verfasst hat, abgelehnt wurde. Da Spam ein Massenphänomen ist, müssten unbeteiligte Nutzer weiteren unabsichtlich erzeugten Spam in Form von Nichtzustellungsmeldungen ertragen.

Diese Form des ungewollten Spams wird als Backscatter[3] bezeichnet. Backscatter tritt ab und zu auf, weil sich viele Mail-Administratoren der Backscatter-Problematik nicht bewusst sind.

Für den Absender einer E-Mail, die sich als False Positive herausstellt, bedeutet dies, dass er in der Regel niemals erfährt, dass seine Mail nicht zugestellt wurde. Der Empfänger hingegen bekommt erst gar keine Mail.Für die Spamerkennung gibt es äußerst unterschiedliche Ansätze. Älteste Methode ist das Content-Filtering. Dabei wird E-Mail auf bestimmte Worte und Phrasen überprüft. Enthält eine Mail beispielsweise das Wort "Viagra", so wird sie als Spam eingestuft. Da Spammer allerdings äußerst professionell arbeiten, leiten sie Gegenmaßnahmen ein. Einfachste Methode ist die Verfremdung des Wortes. So wird beispielsweise "Vi Ag*ra" statt "Viagra" geschrieben, um den Content-Filter zu überlisten.

Seit der Einführung von Content-Filtering liefern sich Spammer und Anti-Spammer ein erbittertes Duell, in dem sie versuchen, sich gegenseitig auszutricksen. Ein Beispiel ist die Versendung von Spam-Mails mit Bildern statt Text. Verwendet man im Bild nicht gerade eine übliche Schriftart, etwa Arial, so kann eine Anti-Spam-Lösung auch mittels OCR[4] keine Wörter und Phrasen finden.

Klassisches Content-Filtering, wie es clientseitig der Outlook-Junk-Mail-Filter und serverseitig SpamAssassin[5] realisieren, bedeutet letztendlich einen Kampf gegen Windmühlen. Die Fehlerrate bleibt hoch. False Positives können nicht vermieden werden.

Wesentlich effektiver ist ein verteilter Ansatz. Hierzu werden sogenannte Spamfallen aufgestellt. Eine Spamfalle besteht aus einem nicht genutzten E-Mail-Account. Die zugehörige E-Mail-Adresse wird unsichtbar auf Webseiten platziert, so dass sie von den Webspidern der Spammer gefunden wird. Alle dort eingehenden E-Mails sind somit Spam, da außer Spammern niemand E-Mail an diese Adressen schickt. Zudem kann man sich weiter absichern, indem man mehrere Fallen aufstellt. E-Mails mit identischem Inhalt, die beispielsweise in zehn von 50 Spamfallen eingehen, sind eindeutig als Spam zu klassifizieren.

Von diesen E-Mails wird ein Fingerprint mit wenigen Bits, typischerweise 64 oder 128, erstellt. Es ist dabei egal, ob der Inhalt aus Text, Bildern oder einer Schadsoftware besteht. Ein wenig Fingerspitzengefühl muss man jedoch an den Tag legen, da auch Spam-Mails geringfügige Unterschiede im Inhalt haben, beispielsweise eine Anrede wie "Dear user@example.com".

Die Fingerprints werden in einer Datenbank gesammelt, die man relativ klein halten kann, da die Fingerprints wenig Platz in Anspruch nehmen. Ein 64-Bit-Fingerprint birgt die Wahrscheinlichkeit eines false Positives von 18 Trillionen zu eins. Pro zusätzlich verwendetem Bit im Fingerprint halbiert sich diese Wahrscheinlichkeit.

Dieses Verfahren bietet eine sehr gute Spam-Erkennung bei einer Wahrscheinlichkeit von False Positives, die gegen Null tendiert. Voraussetzung zur Nutzung des Verfahrens ist immer ein Dienstanbieter. Für die Betreiber von Firmen-Mailservern bietet eleven[6] seinen Fingerprint-Dienst eXpurgate an. In kleineren Installation bis etwa 500 Benutzern kann E-Mail an die firmeneigene Domain mittels MX-Record[7] über die Server von eleven geroutet werden. Beim eigenen SMTP-Server kommen nur E-Mails an, die nicht als Spam erkannt wurden.

Legt man größten Wert auf Vertraulichkeit oder verwaltet eine größere Installation, kann eXpurgate auch auf eigenen Servern inhouse betrieben werden. Die Datenbank mit den Fingerprints wird dabei laufend aktualisiert.

Die Firma Cloudmark[8] hingegen richtet sich an ISPs[9], die Mailboxen von mehreren Millionen Kunden betreiben. Das Prinzip ist ähnlich, jedoch ist man vor andere Probleme gestellt. Die Datenbank der Fingerprints wird komplett im Hauptspeicher realisiert, um den Durchsatz hoch zu halten.Einen ganz anderen Ansatz verfolgt DNS-Blacklisting[10]. Hier wird der Inhalt einer E-Mail gar nicht berücksichtigt. Auch DNS-Blacklisting arbeitet mit Spamfallen. Allerdings wird die IP-Adresse[11] des Absender auf eine "schwarze Liste" gesetzt. Mailserver können diese Liste abfragen und E-Mails von den gelisteten IP-Adressen zurückweisen.

Die Chance von False Positives ist jedoch recht hoch. Typischerweise verbleiben IP-Adressen einige Tage bis einige Wochen auf den schwarzen Listen. Geht kein weiterer Spam ein, so werden die IP-Adressen von der Liste gestrichen.

Der Erkennungsquote ist nur mäßig und liegt bei etwa 80 Prozent. Darüber hinaus haben kleinere Firmen mit eigenem Mailserver häufig Grund zur Klage. Besitzt eine kleine Firma nur eine öffentliche IP-Adresse, so kann sie leicht auf eine schwarze Liste geraten, wenn ein Rechner im Unternehmensnetz von einem Botnetz[12] übernommen wird. Bis die IP-Adresse wieder von der Liste genommen wird, kann auch der offizielle Mailserver keine Mails mehr versenden.

Bei großen ISPs ist DNS-Blacklisting beliebt, da wenig Ressourcen in Anspruch genommen werden. Äußerst problematisch ist die pauschale und dauerhafte Listung von IP-Adressen, die von ISPs an Privatkunden vergeben werden. Das wird beispielsweise von Spamhaus.org[13] praktiziert. Von den betroffenen Internetanschlüssen können faktisch keine E-Mails direkt versendet werden, da viele große Mailanbieter, etwa Web.de, GMX und Windows-Live-Mail (vormals Hotmail), Mails ablehnen, die von bei Spamhaus.org gelisteten IP-Adressen stammen.

Außerdem nimmt die Effektivität von DNS-Blacklisting kontinuierlich ab. Ein ZDNet-Test zeigt, dass viele Spam-Mails am Ende durchkommen. Ein von ZDNet aufgestellter SMTP-Server verwendet dazu Blacklisten von Spamhaus.org. Es gehen etwa zehn bis 15 Spam-Mails pro Stunde ein. Im ersten Versuch werden die meisten abgewiesen. Doch die Botnetze der Spammer geben nicht auf. Ein und dieselbe Spam-Mail trifft nacheinander aus den unterschiedlichsten Teilen der Welt ein. Am Ende findet sich meist eine IP-Adresse, die nicht bei Spamhaus.org erfasst ist.

Ähnliches gilt für Greylisting. Diese Technologie ist mittlerweile ohne jeden Effekt. Beim Greylisting weist der Mailserver jede E-Mail grundsätzlich mit einem temporären Fehler zurück. Das SMTP-Protokoll unterscheidet grundsätzlich temporäre und permanente Fehlercodes. Ein permanenter Fehler ist beispielsweise "E-Mail-Adresse unbekannt". Der dreistellige Fehlercode beginnt in diesem Fall mit einer fünf. Ein temporärer Fehler kann hingegen vorliegen, wenn der SMTP-Server seinen LDAP-Server[14] mit den Routing-Informationen gerade nicht erreichen kann. Der zurückgegebene Fehlercode beginnt mit einer vier, um dem Absender zu signalisieren, dass er es später noch einmal versuchen soll.

Ältere Spamsoftware unternimmt keinen zweiten Versuch. Echte SMTP-Mailer hingegen folgen den Vorgaben des Protokolls. Doch nichts ist einfacher für die Programmierer der Botnetze, als Greylisting auszuhebeln. Der einzige Effekt von Greylisting besteht mittlerweile darin, dass E-Mails etwa eine halbe Stunde Verspätung haben.Wenn Fingerprinting teuer und ressourcenintensiv ist, Greylisting nicht mehr wirkt und Blacklisting dem Prinzip der Netzneutralität widerspricht, dass jeder Netzknoten mit jedem anderen frei kommunizieren kann, dann stellt sich die Fragen nach Alternativen.

Ein interessanter Vorschlag kam im Jahre 2004 von Bill Gates: Jede E-Mail soll einen Betrag von etwa einem Cent kosten. Man hätte erwartet, dass er genug von Marketing versteht, und Welle der Entrüstung vorherzusehen, die er mit dem Vorschlag auslöste, einen bisher kostenlosen Dienst im Internet zu einem kostenpflichtigen zu machen.

Doch so absurd ist der Vorschlag nicht. Auf diese Art und Weise hebelt man das Geschäftsmodell der Spammer aus. Ein Spammer muss täglich mehrere Millionen E-Mails aussenden, damit sich die Sache lohnt. Bei einem Preis von einem Cent pro Mail kommen auf den Spammer tägliche "Portokosten" von einigen zehntausend Euro zu. Private Nutzer, die maximal 100 E-Mails pro Monat versenden, zahlen hingegen nicht mehr als einen Euro.

Erst auf den dritten Blick wird die Undurchführbarkeit deutlich. So müsste beispielsweise ein Sportverein möglicherweise auf Rundschreiben an seine Mitglieder verzichten, weil die Kosten zu hoch sind. Viele seriöse Opt-In-Newsletter[15] müssten eingestellt werden.

Lösen ließe sich die Spamproblematik mit dem Sender-Policy-Framework (SPF[16]). Dabei trägt jeder Domaininhaber selbst im DNS ein, von welchen Rechnern im Internet er E-Mails versendet. Da Spammer echte Domainnamen als Absender verwenden müssen, kann der empfangende SMTP-Server per DNS[17] abfragen, ob die E-Mail von einer IP-Adresse kommt, die der Domaininhaber explizit zugelassen hat.

Ein Spammer kann diesen Mechanismus nur mit IP-Spoofing umgehen. Das können Provider mit heutigen Routing-Protokollen allerdings wirkungsvoll verhindern. Einem Provider, der IP-Spoofing zulässt, muss man mindestens eine aktive Duldung von Spam unterstellen.

Schwieriger gestaltet sich die Problematik von Wegwerf-Domains. Ein Spammer kann eine Domain registrieren, der er einen dazu passenden SPF-Record spendiert. Da sein Botnetz jedoch möglicherweise sehr groß ist, muss er viele und vor allem große Subnetze in den SPF-Record eintragen. Mailserver könnten dann SPF-Records, die mehr als 1000 mögliche SMTP-Server für eine Domain ausweisen, als Spam-Domains einstufen.

SPF funktioniert allerdings nur, wenn sich alle Mailserverbetreiber daran beteiligen. SPF wurde bereits im Jahre 2003 entwickelt und im April 2006 als RFC 4408[18] mit dem Status "Experimental" veröffentlicht.

In der Praxis gibt es jedoch Umsetzungsprobleme. Viele Mailer unterstützen keine Auswertung von SPF-Records. Dazu gehören beispielsweise Microsoft Exchange und Sendmail. Hier müssen externe Lösungen implementiert werden. Einer der wenigen SMTP-Server, die SPF von Haus aus beherrschen, ist Communigate[19].

Viele ISPs haben zwar selbst SPF-Records für ihre Domains im DNS realisiert, für die Domains ihrer Kunden ist es heute oft noch unmöglich, SPF-Records anzulegen. Darüber hinaus zeigen erste Erfahrungen, dass viele SPF-Einträge falsch oder nicht aktuell sind. Das liegt daran, dass man sich durchaus einige Gedanken machen muss, wie man seinen SPF-Eintrag aufbaut. Will man fremde SMTP-Server verwenden, beispielsweise der Firma oder der Universität, verwenden, um Mails mit der eigenen Domain als Absender zu verschicken, so müssen sie im SPF-Record eingetragen und bei Bedarf aktualisiert werden.

Mailserver-Betreiber scheuen sich deshalb vor der Auswertung der SPF-Einträge. Sind sie falsch oder veraltet, kommt es zu False Positives. Außerdem kann es bei der Weiterleitung von E-Mails Probleme geben. Folgt man dabei dem Protokoll nicht exakt, so kann ein Mailer nicht mehr feststellen, dass er für die SPF-Auswertung das weiterleitende E-Mail-Konto verwenden muss.Alle heute verwendeten Ansätze zur Spambekämpfung sind unzureichend. Den besten Schutz können Mailserverbetreiber erreichen, indem sie eine Kombination aus content-basiertem Fingerprinting und SPF einsetzen, wobei SPF vor allem einer Entlastung des ressourcenintensiven Fingerprintings dienen kann.

Die Entlastungsfunktion kann aber erst wirkungsvoll greifen, wenn die vielen technischen Probleme mit SPF gelöst sind und alle Domaininhaber richtige, aktuelle SPF-Records pflegen. Letzteres dürfte noch längere Zeit ein Problem bleiben.

DNS-Blacklisting beschränkt viele Nutzer in der Art und Weise, wie sie Mail nutzen können. Der Betrieb eines eigenen Mailservers wird oft unmöglich, wenn man von seinem ISP eine pauschal gelistete IP-Adresse bekommt. Zudem nimmt die Effektivität ständig ab.

Bekommt man die Spam-Problematik langfristig nicht ohne Nutzereinschränkungen in den Griff, so sollten wenigstens effektivere Methoden eingesetzt werden. Dies kann nur dadurch gelingen, dass man die Gesamtzahl der SMTP-Server im Internet auf wenige Tausend beschränkt. Dort müsste jeder Benutzer ein Account haben, was ihn zu etwa 1000 Mails pro Monat berechtigt. Nutzer mit höherem Bedarf, etwa Newsletterversender, könnten diesen Bedarf beim Betreiber des Mailservers anmelden.

Diese radikale Maßnahme wäre aber letztendlich eine Kapitulation des Internets vor den Spammern. Die Nutzer ziehen ein Netz vor, in dem jeder mit jedem frei kommunizieren darf und es somit keinen Unterschied zwischen Anbieter und Nutzer gibt, wie das beispielsweise bei BTX[20] der Fall war, das durch das Internet innerhalb weniger Jahre trotz politischer Gegenwehr verdrängt wurde.

URLs in diesem Artikel:
[1] = http://www.microsoft.com/forefront/serversecurity/exchange/en/us/overview.aspx
[2] = http://de.wikipedia.org/wiki/Smtp
[3] = http://de.wikipedia.org/wiki/Backscatter_(E-Mail)
[4] = http://de.wikipedia.org/wiki/Texterkennung
[5] = http://de.wikipedia.org/wiki/Spamassassin
[6] = http://www.eleven.de/
[7] = http://de.wikipedia.org/wiki/MX_Resource_Record
[8] = http://www.cloudmark.com/
[9] = http://de.wikipedia.org/wiki/Internetdienstanbieter
[10] = http://www.zdnet.de/security/praxis/0,39029462,39160890,00.htm
[11] = http://de.wikipedia.org/wiki/Ip-adresse
[12] = http://de.wikipedia.org/wiki/Botnet
[13] = http://www.spamhaus.org/
[14] = http://de.wikipedia.org/wiki/Ldap
[15] = http://de.wikipedia.org/wiki/Opt-In
[16] = http://de.wikipedia.org/wiki/Sender_Policy_Framework
[17] = http://de.wikipedia.org/wiki/Domain_Name_System
[18] = http://tools.ietf.org/html/rfc4408
[19] = http://www.zdnet.de/enterprise/server/0,39023275,39161702,00.htm
[20] = http://de.wikipedia.org/wiki/Bildschirmtext