Filter, die zurückschlagen
August 2003
Wir könnten die Genauigkeit von Bayesschen Spamfiltern verbessern, indem wir Links folgen, um zu sehen, was am anderen Ende wartet. Richard Jowsey von death2spam macht das jetzt in Grenzfällen und berichtet, dass es gut funktioniert.
Warum das nur in Grenzfällen tun? Und warum nur einmal?
Wie ich in Will Filters Kill Spam? erwähnte, hätte das Folgen aller URLs in einem Spam eine amüsante Nebenwirkung. Wenn beliebte E-Mail-Clients dies tun würden, um Spam zu filtern, würden die Server des Spammers eine ernsthafte Belastung erfahren. Je mehr ich darüber nachdenke, desto besser scheint es eine Idee zu sein. Dies ist nicht nur amüsant; es wäre schwer, sich einen besser zielgerichteten Gegenschlag gegen Spammer vorzustellen.
Daher möchte ich denjenigen, die an Spamfiltern arbeiten, eine zusätzliche Funktion vorschlagen: einen "bestrafen"-Modus, der, wenn er aktiviert ist, jede URL in einem verdächtigen Spam n Mal crawlt, wobei n vom Benutzer eingestellt werden kann. [1]
Wie viele Leute bereits bemerkt haben, ist eines der Probleme mit dem aktuellen E-Mail-System, dass es zu passiv ist. Es tut, was man ihm sagt. Bisher scheinen alle Vorschläge zur Behebung des Problems neue Protokolle zu beinhalten. Dieser würde es nicht.
Wenn auto-abrufende Spamfilter weit verbreitet wären, würden sie das E-Mail-System zurückschlagen. Das riesige Volumen des Spams, das bisher zugunsten des Spammers wirkte, würde nun gegen ihn wirken, wie ein Ast, der ihm ins Gesicht zurückschnappt. Auto-abrufende Spamfilter würden die Kosten des Spammers erhöhen und seine Verkäufe senken: Seine Bandbreitennutzung würde durch die Decke gehen, und seine Server würden unter der Last ins Stocken geraten, was sie für die Leute, die auf den Spam reagiert hätten, unzugänglich machen würde.
Pumpen Sie eine Million E-Mails pro Stunde heraus, erhalten Sie eine Million Treffer pro Stunde auf Ihren Servern.
Wir müssten sicherstellen, dass dies nur bei verdächtigen Spams geschieht. Grundsätzlich ist jede URL, die an Millionen von Menschen gesendet wird, wahrscheinlich eine Spam-URL. Daher würde das Einreichen jeder HTTP-Anfrage in jeder E-Mail fast immer gut funktionieren. Aber es gibt einige Fälle, in denen dies nicht zutrifft: zum Beispiel die URLs am Ende von E-Mails, die von kostenlosen E-Mail-Diensten wie Yahoo Mail und Hotmail gesendet werden.
Um solche Websites zu schützen und Missbrauch zu verhindern, sollte der automatische Abruf mit Blacklists von Spam-beworbenen Websites kombiniert werden. Nur Websites auf einer Blacklist würden gecrawlt werden, und Websites würden nur nach Überprüfung durch Menschen auf die Blacklist gesetzt werden. Die Lebensdauer eines Spams muss mindestens mehrere Stunden betragen, daher sollte es einfach sein, eine solche Liste rechtzeitig zu aktualisieren, um einen Spam zu beeinträchtigen, der eine neue Website bewirbt. [2]
Hochvolumiges Auto-Retrieval wäre nur für Benutzer mit Hochgeschwindigkeitsverbindungen praktikabel, aber es gibt genug davon, um Spammer ernsthafte Probleme zu bereiten. Tatsächlich spiegelt diese Lösung das Problem perfekt wider. Das Problem mit Spam ist, dass der Spammer, um ein paar leichtgläubige Leute zu erreichen, E-Mails an alle sendet. Die nicht leichtgläubigen Empfänger sind lediglich Kollateralschäden. Aber die nicht leichtgläubige Mehrheit wird keinen Spam mehr erhalten, bis sie aufhören kann (oder droht aufzuhören), die leichtgläubigen Leute davon abzuhalten, darauf zu reagieren. Auto-abrufende Spamfilter bieten ihnen eine Möglichkeit, dies zu tun.
Würde das Spam töten? Nicht ganz. Die größten Spammer könnten ihre Server wahrscheinlich gegen auto-abrufende Filter schützen. Der einfachste und billigste Weg, dies zu tun, wäre jedoch, funktionierende Abmelde-Links in ihre E-Mails aufzunehmen. Und dies wäre eine Notwendigkeit für kleinere Akteure und für "legitime" Websites, die Spammer zur Bewerbung beauftragt haben. Wenn also auto-abrufende Filter weit verbreitet wären, würden sie zu auto-abmeldeenden Filtern werden.
In diesem Szenario würde Spam, wie Betriebssystemabstürze, Viren und Popups, zu einer dieser Plagen werden, die nur Leute plagen, die sich nicht darum kümmern, die richtige Software zu verwenden.
Anmerkungen
[1] Auto-abrufende Filter müssen Weiterleitungen folgen und sollten in einigen Fällen (z. B. eine Seite, auf der nur "Klicken Sie hier" steht) mehr als eine Linkebene verfolgen. Stellen Sie außerdem sicher, dass die HTTP-Anfragen von denen beliebter Webbrowser nicht zu unterscheiden sind, einschließlich der Reihenfolge und des Referrers.
Wenn die Antwort nicht innerhalb von x Zeit zurückkommt, standardmäßig auf eine ziemlich hohe Spam-Wahrscheinlichkeit.
Anstatt n konstant zu machen, könnte es eine gute Idee sein, es zu einer Funktion der Anzahl der Spams zu machen, die erwähnt wurden, die die Website erwähnen. Dies würde eine weitere Schutzebene gegen Missbrauch und Unfälle hinzufügen.
[2] Die ursprüngliche Version dieses Artikels verwendete den Begriff "Whitelist" anstelle von "Blacklist". Obwohl sie wie Blacklists funktionieren sollten, zog ich es vor, sie Whitelists zu nennen, weil sie dadurch möglicherweise weniger anfällig für rechtliche Angriffe wären. Dies hat die Leser jedoch nur verwirrt.
Es sollte wahrscheinlich mehrere Blacklists geben. Ein einzelner Ausfallpunkt wäre sowohl für Angriffe als auch für Missbrauch anfällig.
Vielen Dank an Brian Burton, Bill Yerazunis, Dan Giffin, Eric Raymond und Richard Jowsey für das Lesen von Entwürfen hiervon.