[Aufmachergrafik: heller, corporate design] Neue Tricks – neue Filter

Ordnungsmerkmale

erschienen in: <kes> 2004#3, Seite 13

Rubrik: Management und Wissen

Schlagwort: Content-Security

Schlagwort: Spam-Filtertechnik

Zusammenfassung: Seit geraumer Zeit spielen Spammer und Anti-Spam-Unternehmen Katz und Maus. Waren die ersten Spams noch geradlinige ASCII-Texte, so hat sich inzwischen ein kompliziertes Versteckspiel entwickelt: Spammer verwenden Taktiken wie zufällig generierte unsichtbare Textbausteine, versteckte Links und HTML-Formatierung, um Filter zu täuschen – doch die lernen mit.

Autor: Von Helmut Zeller, München

Zwei Dinge treiben Spammer an: möglichst viel Geld zu verdienen und zweitens, möglichst viele Spam-Filter auszutricksen. Spammer sind dabei unglaublich schnell und gewieft – und immer im Wettlauf mit den Entwicklern von Anti-Spam-Software. Sobald eine Taktik nicht mehr gelingt, weil die Filter darauf eingerichtet sind, versuchen die Spammer neue, komplexere Methoden. Mit Open-Source-Filterprogrammen können sie die Wirksamkeit ihrer Spam dabei bequem vorab testen.

Von Schlüsselwortsuchen über schwarze Listen bis zu lernfähigen Filtern, die auf künstlicher Intelligenz basieren, gibt es viele Wege, um Spam abzuwehren. Keine einzelne Technik kann jedoch auf lange Sicht die Lösung sein. Entwickler von wirksamen Anti-Spam-Lösungen setzen heute auf eine Kombination verschiedener Ansätze. Dabei achten sie auf drei Faktoren: den Ursprung der E-Mail, ihren Inhalt sowie eingebettete Links, die den Empfänger zu Spam-Seiten im Internet weiterleiten.

Source Blocking

Um ihre wahre Identität zu verstecken und sich vor Strafverfolgung zu schützen, fahren Spammer bekanntermaßen gerne auf dem Trittbrett eines fremden Mailservers oder PCs mit. Sie missbrauchen dazu so genannte Open-Proxy-Server: falsch konfigurierte Computer, die es erlauben, ihre Internetverbindung mit einem fremden Computer zu teilen und so elektronischen Datenverkehr weiterzuleiten. Fehlerhafte Software oder Trojaner wie SoBig.E können Rechner ohne das Wissen ihres Besitzers zu solchen Open-Proxy-Servern machen. Open Proxies sind dabei nicht mit Open (SMTP-)Relays zu verwechseln: Diese – ebenfalls falsch konfigurierten – "echten" Mailserver kommen zwar beim Versenden vom Spam auch zum Einsatz, können jedoch genau so gut Ursprung von legitimer Post sein.

Zum anonymen Verschicken ihrer elektronischen Wurfsendungen verbinden sich Spammer durch einen Open Proxy als http-Service mit dem Mailserverdes Empfängers und verstecken den SMTP-Inhalt in den verschickten Daten: Der Mailserver ignoriert die http-Header und akzeptiert die SMTP-Kommandos. Weil der Open Proxy wiederum reine TCP/IP-Verbindungen weiterleitet und die Header löscht, ist es später nicht möglich, den wahren Ursprung einer derart "eingelieferten" E-Mail zurückzuverfolgen.

Die simpelste Methode des Source-Blocking ist eine einfache schwarze Liste von IP-Adressen, die als Absender von Spams bekannt sind. Solche Black-Lists, die auch kostenlos im Internet zu finden sind, beruhen oft auf einer umfassenden Datenbasis und einem Netz von E-Mail-Anwendern, die regelmäßig Hinweise einschicken.

Aber: Sind die Listen nicht auf dem neuesten Stand oder schlecht recherchiert, dann enthalten sie sehr wahrscheinlich auch unschuldige Absender. Open Proxies können zum Beispiel in der Zwischenzeit abgesichert worden sein. Sind sie nach wie vor auf der schwarzen Liste, heißt das, dass auch legitime E-Mails ausgefiltert werden und ein Programm, das diese Liste verwendet, somit False Positives erzeugt. Die meisten dieser schwarzen Listen befinden sich außerdem auf speziellen DNS-Servern, was bedeutet, dass das Filterprogramm langwierige Abfragen durchführen muss.

Um die False-Positive-Rate niedrig zu halten, bieten manche Anti-Spam-Lösungen "weiße Listen", die Post von bekannten Firmen grundsätzlich erlauben. Für diese gelten jedoch dieselben Grenzen wie für die schwarzen Listen – ganz abgesehen von dem hohen Administrationsaufwand, der für den Benutzer oft damit verbunden ist.

Am besten und schnellsten sind dynamische Open-Proxy-Listen, die sich per Download direkt in das eigene Netzwerk holen lassen und in kurzen Zeitabständen immer wieder komplett neu erstellt werden: Anstatt ständig weitere IP-Adressen hinzuzufügen, prüfen diese Listen auch die alten Einträge. Wird beispielsweise eine Sicherheitslücke geflickt, dann wird dieser ehemals zweifelhafte Server sofort von der Liste entfernt. Und zukünftige Spam-Filter werden nicht mehr nur schwarz und weiß sehen, sondern auch wissen, in welchem Maß eine IP-Adresse als Versender von Spam im Gegensatz zu legitimer E-Mail aufgefallen ist. In Kombination mit Authentifizierungstechniken (vgl. S. 19) kann Spam dadurch noch besser eingedämmt werden.

Open-Proxy-Server sind allerdings nicht die einzige Methode, Spam-Sendungen zu verschicken. Manche Spammer eröffnen mit gefälschten Daten ein neues E-Mail-Konto, senden ihre Wurfsendung(en) los und schließen den Account nach der Aktion sofort wieder. In solchen Fällen helfen andere Kriterien, die E-Mail als Spam zu identifizieren.

[Ablauf im Brightmail-System]
Abbildung 1: Spam-E-Mails erfordern eine kontinuierliche Beobachtung entweder durch den Kunden oder einen Dienstleister oder beide (im Bild: Spam-Analyse, Regelerzeugung und -austausch im Brightmail-System).

Header und Nachrichtentext

Es gibt verschiedene Methoden, den Nachrichten- und Header-Text einer Spam-Mail zu untersuchen. Header-Regeln suchen etwa nach wiederkehrenden Merkmalen und Trends in den Verwaltungsdaten von Spam-Mails. Das können gefälschte Received-Zeilen im Zustellvermerk sein oder "Fingerabdrücke" von Spammer-Werkzeugen. Damit eine Nachricht immer ganz oben im Posteingang angezeigt wird, verwenden Spammer gelegentlich auch gefälschte Zeitangaben. Zusätzlich kann ein Filter den Header einer eingehenden E-Mail mit den Signaturen von bekannten aktuellen Spam-Attacken vergleichen, was allerdings genauso wie das Source-Blocking eine breite und aktuelle Datenbasis voraussetzt.

Der Nachrichtentext einer Spam-Mail besteht normalerweise aus einer Kombination von verräterischen Wörtern wie zum Beispiel Kredit, Mortgage oder Sex und "harmlosen" Wörtern. Einfach alle E-Mails auszusortieren, die beispielsweise "Sex" enthalten wäre allerdings nur eine sichere Methode, um eine hohe False-Positive-Rate zu erzielen. Viele Filter vergleichen deshalb den Anteil an "harmlosen" mit dem Anteil an verräterischen Wörtern und prüfen die Wahrscheinlichkeit, mit der bestimmte Begriffe Indikatoren für Spam oder "nicht Spam" sind (Bayes-Filter, vgl. <kes> 2003#1, S. 6). Als Reaktion darauf wandeln Spammer deshalb zum einen die Spam-Begriffe derart ab, dass sie schwieriger zu erkennen sind, und versuchen zum anderen so viel "unschuldigen" (üblicherweise erwünschten) Text wie möglich in der Nachricht unterzubringen.

So entstehen die allfälligen Beispiele Kred1t für Kredit, M0rtg4ge statt Mortgage oder S. e. x. statt Sex, oder Spammer fügen sinnlose Akzente hinzu, um Schlüsselwortsuchen zu umgehen. "Unschuldiger" Text wird zufällig generiert oder aus Internet-Quellen entnommen und zwischen den eigentlichen Spam-Text gestreut. Auf diese Weise können Spammer jede einzelne Nachricht einer Attacke einmalig aussehen lassen.

Noch raffinierter gehts mit HTML: Durch die Formatierung von Text lassen sich auf die gleiche Weise Wörter abändern oder hinzufügen, ohne dass die Darstellung für den menschlichen Leser verändert aussieht. Durch die Verwendung von Schrift in der gleichen Farbe wie der Hintergrund (etwa weiß auf weiß – auch bekannt als unsichtbare Tinte oder "Invisible Ink") und winzige Font-Größen können Spammer Ablenkungsmanöver für den Filter in ihrer Nachricht unterbringen, ohne die Lesbarkeit des Texts zu beeinträchtigen. Beliebt sind auch bedeutungslose HTML-Kommentare <!– This is not displayed–> oder Meta-Tags innerhalb eines Spam-Worts wie "Vi<agag>agra".

Weil die meisten Filter jedoch längst HTML interpretieren können, setzen Spammer neuerdings auch Cascading Style Sheets (CSS) ein, um diese Tricks wieder aufzuwärmen.

Das Verwenden von HTML und Textformatierungen hat aus Spammer-Sicht auch noch andere Vorteile: Weil die Mails interessanter aussehen, hoffen die Spammer, mehr Aufmerksamkeit zu erzielen. Sie können außerdem verfolgen, wie viele Nachrichten tatsächlich angezeigt wurden (Elemente aus dem Web nachgeladen haben) und ob ein Empfänger per Klick auf einen Link auf die Wurfsendung reagiert hat.

Gute Filtersoftware muss daher mit HTML und mittlerweile auch CSS klarkommen. Die eingesetzten Algorithmen sind mit Noise Reduction und Fuzzy-Logik in der Lage, irrelevante Informationen und Hintergrundrauschen wie zufällig erzeugte, sinnlose Zeichenketten auszublenden. Anhand von Signaturen (Hash-Werte), die allen Varianten einer Spam-Nachricht innerhalb einer Attacke gemeinsam sind, kann eine Anti-Spam-Software dann feststellen, ob verschiedene Spam-Mails denselben Ursprung haben, und sie entsprechend blockieren. Diese Methode steht und fällt wiederum mit der Beobachtung laufender Spam-Aktionen. Je aktueller die Informationen über neu auftretende Spam-Arten sind, auf die ein Filter zurückgreifen kann, desto höher sind auch sein Wirkungsgrad und seine Genauigkeit.

Oft gesehene Spam-Charakteristiken sind außerdem die ausufernde Verwendung von Ausrufezeichen oder so genannte Unsubscribe-Zeilen, mit denen sich der Empfänger angeblich von der Spammer-Liste entfernen lassen kann (tatsächlich aber dem Spammer vor allem eine Rückmeldung über eine gültige E-Mail-Adresse zukommen lässt). Heuristische Filter durchsuchen die gesamte E-Mail auf solche Merkmale hin: Sie analysieren den Textkörper, den Ursprung, den Header und zusätzlich in der E-Mail enthaltene Informationen und suchen nach deutlichen Spam-Eigenschaften – zum Beispiel Worten in Großbuchstaben, verstecktem HTML-Text oder gefälschte Received-Zeilen.

Diese Merkmale werden mit Punktzahlen versehen, gewichtet und ab einer bestimmten Schwelle wird eine Nachricht als Spam klassifiziert. Wenn heuristische Filter richtig trainiert sind, können sie sehr wirksam sein und auch Spams erkennen, die zu einer ganz neuen Welle gehören. Sind sie hingegen nicht richtig konfiguriert, können sie jedoch auch zu einem hohen Anteil von False Positives führen.

URL-Regeln

Der weitaus größte Teil der Spam-Mails – geschätzte 90 Prozent – enthalten inzwischen Links, um den Empfänger zu einer Webseite zu locken, wo er Produktwerbung findet oder seine Kreditkartendetails preisgeben soll. Dank HTML wirken die angezeigten URLs oft nicht Spam-typisch, sondern verstecken sich zum Beispiel zwischen Textzeilen, hinter Bildern oder seriös aussehenden Link-Texten. Die echte URL kann der Empfänger meist eingeblendet sehen, wenn er mit der Maus auf den Link zeigt – sofern der Mail-Client Javaskript interpretiert, lassen sich allerdings auch diese eingeblendeten Informationen fälschen.

Kennt eine Filtersoftware eine Spam-Website, dann kann sie in E-Mails natürlich auch gezielt nach dieser Adresse suchen. Um es dem Filter zu erschweren, den Link zu finden, wandeln Spammer die Schreibweise auf alle möglichen Arten ab. Ähnlich wie bei Spam-verdächtigen Wörtern kennen Spammer eine Reihe von Wegen, URLs zu variieren, sodass sie unterschiedlich aussehen, aber dennoch alle auf die gleiche Webseite zeigen. Das fängt beim Einfügen von bedeutungslosen und zufällig generierten Zeichenketten an, aber Spammer verwenden auch Escape-Codes und HTML-Maskierung. So zeigen zum Beispiel alle Links in Abbildung 2 auf die Homepage von Brightmail.

http://www.brightmail.com
http://209.157.160.5
http://3516768261
http://0xd19da005
http://%77%77%77.brightmail.com
http://www.B&#66rightmail.com
http://%32%30%39.157.160.5
http://any%20characters@www.brightmail.com

Abbildung 2: URLs lassen sich auf vielfältige Weise maskieren.

Weil Filter solche Schreibweisen inzwischen durchschauen und auch zufällig generierte Zeichenketten ausblenden sowie nach ähnlichen Mustern suchen, versuchten Spammer auf Web-Umleitungen (Redirects) und Subdomains auszuweichen (z. B. http://rd.yahoo.com/any/random/text/that/I/want/*http://www.brightmail.com). Die neueste Generation von URL-Filtern ist jedoch auch auf solche Tricks vorbereitet.

Fazit

Es gibt kein Allheilmittel gegen Spam. Nur eine Kombination von mehreren, ständig aktualisierten Filtermethoden, die auf unterschiedliche Merkmale von Spam ansprechen, ist wirksam. Der wichtigste Punkt ist, nicht einfach "drauf los" zu filtern, sondern sicherzustellen, dass erwünschte E-Mails auch weiterhin im Postfach landen. Um eine hohe Genauigkeit und einen hohen Wirkungsgrad zu erreichen, ist deshalb eine Kombination von zwei Ansätzen die empfehlenswerteste Lösung:

Mehrschichtige Lösungen, wie etwa von Brightmail, können heute Wirkungsgrade von über 98 Prozent und Genauigkeiten von nur einer False Positive in einer Million aussortierter Nachrichten erreichen. Wichtig ist dabei, nicht nur auf ein Maximum an Wirkungsgrad zu zielen, denn anders als bei Viren und Würmern stellen vereinzelt "durchgerutschte" Spam-E-Mails ja keine Gefahr dar. Im Spam-Filter untergegangene erwünschte Nachrichten können jedoch zu deutlichen Irritationen oder sogar Problemen führen.

Helmut Zeller (hzeller@brightmail.com) ist Director Channel Sales CEE bei Brightmail.