Um Spam-Erkennungssoftware zu verwirren, greifen Spammer zu immer perfideren Methoden. So entstellen sie beispielsweise Text und Subject, bis kaum noch lesbare Information übrig bleibt. Sie setzen zwischen die einzelnen Buchstaben Sonderzeichen, so dass ein einfacher Textvergleich nicht funktioniert: V.a.l.i.u.m ist eben nicht dasselbe wie Valium.
Gegen solche solche Tricks ist Spamassassin mittlerweile gewappnet. Für die gängigsten Werbe-Produkte prüft er, ob ein so entstellter (engl. "gappy", lückenhafter) Markenname vorkommt. Eigentlich stellen sich die Spammer damit selbst ein Bein, denn im normalen E-Mail-Verkehr dürfte selten ein entsprechender Name auftauchen. Damit sinkt die Zahl der "False Positives", der irrtümlich als Spam klassifizierten Nutz-Mails.
Gemeinsam Spam finden
Um die Aufklärungsquote zu steigern, greift der Spamdetektiv zu fortgeschrittenen Methoden: Spamassassin befragt Server, die im Internet kursierende Spam-Mails registrieren. Ähnlich funktionieren so genannte Blacklists wie die Spamhaus-Liste [1], die Adressen von Spamservern enthalten. Spamassassin führt für jede E-Mail mehrere Hundert solcher Überprüfungen durch. Neugierige finden eine Seite mit allen Tests auf der Homepage [2].
Erkennt Spamassassin eine Mail als Spam, markiert er sie durch zusätzliche Header-Zeilen, zum Beispiel X-Spam-Flag: YES. Mailprogramme oder weitere Filter lesen den Header und verfahren mit der E-Mail nach Benutzerwunsch, schmeißen sie entweder gleich weg oder legen sie in einen speziellen Mail-Folder ab. In weiteren Header-Zeilen liefert Spamassassin Zusatzinformationen zu seinen Tests:
X-Spam-Status: Yes, hits=7.1 ↩ tagged_above=-99.0 required=5.0 ↩ tests=BAYES_99,FORGED_YAHOO_RCVD,↩ MORTGAGE_PITCH
Neben der Einordnung der Mail als Spam (Yes) finden sich hier die erreichte Punktezahl (hits), der Spam-Grenzwert (required) und die durchgeführten Tests.
Zuhause filtern.
Wer den Mailserver nicht selbst betreibt, kann Spamassassin nicht dort laufen lassen. Als Ausweg bietet sich der Einsatz auf dem Client an, also auf dem Rechner, der die Mails vom Server holt. Die Lösung hat den kleinen Schönheitsfehler, vor dem Spamcheck die Mails erst zu herunterladen. Die Werbe-Mails kosten also immer noch Ressourcen, tauchen aber wenigstens nicht mehr im Mailprogramm auf.
Installation
Spamassassin ist weit verbreitet, deshalb gibt es für viele Distributionen fertige Pakete. Die meisten führen Spamassassin sogar auf den Installationsmedien, man muss es nur noch mit dem Paketmanager installieren. Fedora Core 2 wie auch Suse 9.1 bringen Version 2.6.3 mit.
Ein RPM des aktuellen Spamassassin 3.0.1 von http://atrpms.net/ finden Sie auf der Heft-CD. Dessen Installation ist allerdings eher etwas für Fortgeschrittene, denn häufig fehlen den Standard-Distributionen die nötigen, aktuellen Bibliotheken. Die findet man zwar auch leicht über entsprechende Suchmaschinen. Sie auf der eigenen Distribution zu installieren, ist aber wegen der Vielzahl an Abhängigkeiten nicht ganz einfach.
Der Artikel beschränkt sich deshalb auf Spamassassin 2.6. Die Antispam-Software setzt folgende Perl-Pakete voraus: perl-Time-HiRes, perl-Digest-SHA1, perl-Digest-HMAC und perl-Net-DNS. Installiert man mit einem grafischen Paketmanager, löst er solche Abhängigkeiten auf. Andernfalls ist Handarbeit gefragt.
Debian-User installieren die nötige Software am einfachsten mit apt-get install spamassassin. Allerdings müssen auch sie sich mit Version 2.64 begnügen.
Damit die Mailprogramme nach Spam suchen, muss im Hintergrund bereits Spamassassin laufen. Unter Fedora richtet das dauerhaft der Befehl chkconfig spamassassin on ein und startet das Programm auch gleich. Unter Suse erledigt dasselbe inserv spamd. Debian kennt zu diesem Zweck das Skript update-rc.d, das als Parameter den Servicenamen (spamassassin), das Kommando start, die Nummer des Skripts und schließlich den Runlevel verlangt.



