Filters die Terugvechten
Augustus 2003
We kunnen de nauwkeurigheid van Bayesiaanse spamfilters mogelijk verbeteren door ze links te laten volgen om te zien wat er aan de andere kant wacht. Richard Jowsey van death2spam doet dit nu in grensgevallen, en meldt dat het goed werkt.
Waarom dit alleen in grensgevallen doen? En waarom maar één keer?
Zoals ik al vermeldde in Will Filters Kill Spam?, zou het volgen van alle URL's in een spam een amusant neveneffect hebben. Als populaire e-mailclients dit zouden doen om spam te filteren, zouden de servers van de spammers een serieuze klap krijgen. Hoe meer ik hierover nadenk, hoe beter het idee lijkt. Dit is niet zomaar amusant; het zou moeilijk zijn om een perfectere gerichte tegenaanval op spammers te bedenken.
Dus ik wil een extra functie voorstellen aan degenen die aan spamfilters werken: een "bestraffen" modus die, indien ingeschakeld, elke URL in een verdachte spam n keer zou spideren, waarbij n door de gebruiker kan worden ingesteld. [1]
Zoals velen hebben opgemerkt, is een van de problemen met het huidige e-mailsysteem dat het te passief is. Het doet wat je zegt. Tot nu toe lijken alle suggesties om het probleem op te lossen nieuwe protocollen te betrekken. Deze niet.
Indien wijdverbreid gebruikt, zouden automatisch ophalende spamfilters het e-mailsysteem terug laten kaatsen. Het enorme volume van de spam, dat tot nu toe in het voordeel van de spammers werkte, zou nu tegen hen werken, als een tak die terugveert in hun gezicht. Automatisch ophalende spamfilters zouden de kosten van de spammers verhogen, en hun verkopen verlagen: hun bandbreedtegebruik zou door het dak gaan, en hun servers zouden onder de belasting tot stilstand komen, waardoor ze onbeschikbaar zouden worden voor de mensen die op de spam hadden gereageerd.
Pomp een miljoen e-mails per uur uit, krijg een miljoen hits per uur op je servers.
We zouden ervoor moeten zorgen dat dit alleen gebeurt bij verdachte spams. Als regel geldt dat elke URL die naar miljoenen mensen wordt gestuurd waarschijnlijk een spam-URL is, dus het indienen van elk HTTP-verzoek in elke e-mail zou bijna altijd prima werken. Maar er zijn een paar gevallen waarin dit niet waar is: de URL's onderaan e-mails verzonden vanaf gratis e-maildiensten zoals Yahoo Mail en Hotmail, bijvoorbeeld.
Om dergelijke sites te beschermen, en om misbruik te voorkomen, moet automatisch ophalen worden gecombineerd met zwarte lijsten van gespamde sites. Alleen sites op een zwarte lijst zouden worden gecrawld, en sites zouden pas op de zwarte lijst worden gezet na inspectie door mensen. De levensduur van een spam moet minstens enkele uren zijn, dus het moet gemakkelijk zijn om een dergelijke lijst tijdig bij te werken om een spam die een nieuwe site promoot, te belemmeren. [2]
Hoog-volume automatisch ophalen zou alleen praktisch zijn voor gebruikers met verbindingen met hoge bandbreedte, maar er zijn er genoeg van om spammers serieuze problemen te bezorgen. Inderdaad, deze oplossing spiegelt het probleem netjes. Het probleem met spam is dat de spammer, om een paar goedgelovige mensen te bereiken, naar iedereen mailt. De niet-goedgelovige ontvangers zijn slechts nevenschade. Maar de niet-goedgelovige meerderheid zal geen spam meer ontvangen totdat ze kunnen stoppen (of dreigen te stoppen) de goedgelovigen met reageren. Automatisch ophalende spamfilters bieden hen een manier om dit te doen.
Zou dat spam doden? Niet helemaal. De grootste spammers zouden waarschijnlijk hun servers kunnen beschermen tegen automatisch ophalende filters. De makkelijkste en goedkoopste manier om dit te doen zou echter zijn om werkende afmeldlinks in hun e-mails op te nemen. En dit zou een noodzaak zijn voor kleinere spelers, en voor "legitieme" sites die spammers inhuren om hen te promoten. Dus als automatisch ophalende filters wijdverbreid zouden worden, zouden ze automatisch-afmeldende filters worden.
In dit scenario zou spam, net als OS-crashes, virussen en pop-ups, een van die plagen worden die alleen mensen treffen die niet de moeite nemen om de juiste software te gebruiken.
Noten
[1] Automatisch ophalende filters zullen omleidingen moeten volgen, en moeten in sommige gevallen (bijv. een pagina die alleen zegt "klik hier") meer dan één niveau van links volgen. Zorg er ook voor dat de http-verzoeken ononderscheidbaar zijn van die van populaire webbrowser, inclusief de volgorde en de referrer.
Als het antwoord niet binnen x tijd terugkomt, ga dan uit van een redelijk hoge spamkans.
In plaats van n constant te maken, zou het een goed idee kunnen zijn om er een functie van te maken van het aantal spams dat is gezien met vermelding van de site. Dit zou een verder beschermingsniveau tegen misbruik en ongelukken toevoegen.
[2] De oorspronkelijke versie van dit artikel gebruikte de term "whitelist" in plaats van "blacklist". Hoewel ze als zwarte lijsten zouden werken, gaf ik er de voorkeur aan ze whitelists te noemen omdat dit ze minder kwetsbaar zou maken voor juridische aanvallen. Dit leek de lezers echter alleen maar te verwarren.
Er zouden waarschijnlijk meerdere zwarte lijsten moeten zijn. Een enkel storingspunt zou kwetsbaar zijn voor zowel aanval als misbruik.
Dank aan Brian Burton, Bill Yerazunis, Dan Giffin, Eric Raymond, en Richard Jowsey voor het lezen van concepten hiervan.