ASSP – The Poor Man’s/Company’s Anti-Spam Solution

In een serie van 2 artikelen wil ik een open source product beschrijven waar ik zelf erg enthousiast over ben: ASSP. In het eerste artikel ga ik in op algemene zaken rond het bestrijden van spam. In het tweede artikel zal ik beschrijven hoe je ASSP installeert.

Introductie

De afgelopen tijd hebben we regelmatig berichten gepost die aangeven dat vooral de jongere generatie E-mail niet meer als voornaamste communicatiemethode op Internet ziet. Dat neem echter niet weg dat E-mail voor veel bedrijven en particulieren nog steeds een zeer belangrijke methode vormt om met elkaar te communiceren. Al vele jaren wordt deze communicatiewijze echter gehinderd door spamberichten.Op dit moment bestaat ruim 95% van het mailverkeer op het internet uit spamberichten. Zonder een anti-spam oplossing zie je dus tussen alle spamberichten de legitieme e-mails niet meer.

Daarom is een hele bedrijfstak opgestaan die zich richt op het bestrijden van die spam. Consumenten kunnen meestal een beroep doen op de anti-spam oplossing van hun provider, bedrijven kunnen hun toevlucht nemen tot anti-spam/anti-virus appliances als bijvoorbeeld de Barracuda’s of IBM Lotus Protector of cloud-based oplossingen als bijvoorbeeld Messagelabs of het door Google ingelijfde Postini. Er blijft echter altijd nog een groepje particulieren over die hun eigen mail server draaien en daardoor geen gebruik kunnen maken van de anti-spam oplossing van hun provider en kleinere bedrijven die niet willen vertrouwen op een cloudgebaseerde anti-spam oplossing en ook geen duur device kunnen/willen bekostigen om de spam in hun eigen infrastructuur aan te pakken. Voor hen is dit een interessant artikel over een mogelijk oplossing die als grootste pluspunten heeft dat ie goed werkt én gratis is: ASSP.

ASSP

ASSP staat voor Anti-Spam SMTP Proxy en is een open source project op Sourceforge. Het is geschreven in Perl, bestaat al zo’n 10 jaar en wordt nog steeds actief onderhouden. De ontwikkelaars antwoorden ook zeer snel op vragen in het forum. Om duidelijk te maken wat ASSP precies doet gebruik ik de tekst van de oprichter van ASSP: John Hanna (originele tekst in het Engels)

Het is me al lange tijd duidelijk dat de beste plaats om spam te stoppen bij de SMTP-server van een organisatie is. Dit om de volgende redenen:
1. De meeste spam heeft een ongeldig bounce adres, dus een kennisgeving dat een bericht niet afgeleverd kon worden. komt meestal terecht bij de postmaster van een domein, waardoor er nog meer bandbreedte wordt verspild (noot van auteur: Spammers misbruiken het non delivery gedrag van sommige bedrijven zelfs om via die route spam te versturen. Hierdoor lijkt het of de spam van dat bedrijf afkomstig is). Het niet versturen van een dergelijke kennisgeving is een probleem voor vals-positieven. De SMTP-server is de enige plaats waar spam kan worden gestopt voordat deze in uw systeem terecht komt.
2. De enige mogelijke feedback voor spammers dat een adres ongeldig is, is van de SMTP-server.
3. Spam die via uw SMTP-server in de mailboxen terecht komt, lijdt tot kosten voor uw organisatie: opslag, overdracht, back-up, verwijdering – op al deze manieren kost spam u geld. De enige manier om de kosten te minimaliseren is om de spam af te wijzen op het punt waar mail uw organisatie binnenkomt.

Echter, SMTP server software paketten zijn traag om nieuwe technologie toe te voegen, en spammers zijn snel en flexibel, in staat om nieuwe technologie toe te passen zo snel als deze beschikbaar is. Bijgevolg zijn de meeste SMTP-servers slecht uitgerust om spam tegen te houden.
Bovendien zou een anti-spam oplossing werken met alle bestaande SMTP-servers als dit programma is uitgevoerd op een tweede niveau – een transparante SMTP filtering proxy. Dit was mijn doel voor dit project.
Ik wilde een server die verbindingen accepteert op poort 25, het SMTP verkeer doorgaf aan de officiële SMTP-server en de antwoorden weer teruggaf aan de SMTP-client. Maar als genoeg van het bericht was doorgegeven om de  legitimiteit ervan te valideren kan de ASSP-server ofwel de rest van het bericht direct aan de officiële SMTP-server doorgeven of de verbinding met de officiële SMTP-server verbreken en de rest van het bericht negeren.
Het Anti-Spam SMTP Proxy (ASSP) server project is een open source platform-onafhankelijke SMTP Proxy server die whitelists en Bayesiaanse filtering gebruikt om de planeet van de plaag van ongevraagde e-mail (UCE) te verlossen. UCE moet worden gestopt bij de SMTP-server. Anti-spam gereedschap moet zich kunnen aanpassen aan nieuwe spam en configureerd worden voor de specifieke e-mail patronen van een domein. Deze gratis, makkelijk te gebruiken tool werkt met elke SMTP server en bereikt deze doelen waarbij er geen tussenkomst van de operator is vereist na de eerste installatie fase.

John stipt hier een paar belangrijke punten aan. Ik zie nog weleens organisaties waar, vaak vanuit het management, de gedachte leeft dat elke mail geaccepteerd moet worden om uit te sluiten dat er ook maar 1 valse positieve is (een legitieme mail die voor spam wordt aangezien). Om de medewerkers niet te belasten met het zoeken van hun legitieme mails tussen de spam staat er een spamfilter achter de SMTP server die de spam eruit vist en in een speciale mailbox opslaat die door een administrator bekeken moet worden, waarna de valse positieven alsnog naar het correcte adres kunnen worden gestuurd.

Het gevolg van deze methode is echter dat een administrator dagelijks naar een mailbox met duizenden spam mails zit te kijken om daar misschien 1 of 2 valse positieven uit te halen. Dat betekent dat je als bedrijf dus arbeidsuren steekt in spambestrijding, netwerkverkeer om de spam in de mailbox te krijgen, opslagruimte om die spam op te slaan en misschien zelfs backupruimte omdat die mailbox meegenomen wordt in de backup. Dat zijn een hoop kosten uit angst dat je misschien één mail mist. Terwijl deze mail staat te wachten, en dat is vaak meer dan een paar uur, weet de afzender echter niet dat de mail (nog) niet is aangekomen. Als een SMTP proxy de mail direct had gereject had de afzender hier wel meteen bericht van gekregen en wist dus wat er aan de hand was. Dan had deze waarschijnlijk een andere manier gezocht om contact met de organisatie op te nemen. In mijn ogen verdient dit ruimschoots de voorkeur boven een anti-spam oplossing achter de SMTP server.

Gereedschappen om spam te bestrijden

Door de jaren heen zijn verschillende gereedschappen bedacht om legitieme mail van spam te kunnen onderscheiden. Een deel van die gereedschappen vind je ook terug op mailservers als Lotus Domino en MS Exchange, maar meestal niet het volledige pakket. Het grootste verschil, zoals John Hanna ook al aangaf, is dat een gespecialiseerd pakket veel sneller nieuwe gereedschappen kan inzetten tegen spam dan een mailserver, waarvoor de anti-spam gereedschappen slechts een zeer klein deel van de functionaliteit vormen, dat kan.

Whitelisting / Blacklisting

Some organisaties hebben zwarte lijsten gecreëerd van IP adressen waarvandaan spam verstuurd wordt over het Internet en zij bieden de mogelijkheid om gratis of tegen een kleine vergoeding (meestal afhankelijk van hoevaak je de blacklist aanroept en dus van het mailvolume dat je domein moet verwerken) gebruik te maken van deze lijsten. Voorbeelden zijn Spamhaus and Spamcop. Een Nederlandse lijst is de virbl van Bit. Als je een dergelijke lijst gaat gebruiken (en dat raad ik zeker aan) is het goed om je even te verdiepen in de verschillende types lijsten. Sommige zijn een stuk uitgebreiden en bevatten bijvoorbeeld ook heel veel dynamisch toegewezen IP adressen die weliswaar nog nooit spam verstuurd hebben, maar waarvan het onwaarschijnlijk is dat er een legitieme mailserver draait die direct contact zoekt jouw maildomein. Naast zwarte lijsten zijn er ook witte lijsten van IP adressen waarop legitieme mailservers draaien die nooit spam versturen. Door gebruik te maken van zo’n witte lijst kun je, als je een mail krijgt van een server op die lijst, de overige spam checks overslaan en de mail meteen afleveren bij de geadresseerde. Een voorbeeld van zo’n lijst is de DNSWL.Hierbij wordt ook nog een betrouwbaarheidsscore meegegeven, waardoor de anti-spam software dus ook zo ingesteld kan worden dat IP adressen op die lijst maar met een lagere betrouwbaarheid toch de overige spam checks doorgaan.

Greylisting

Een methode die anti-spam producten in recenter jaren zijn gaan gebruiken en die ASSP ook ondersteunt is greylisting. Deze methode maakt gebruik van de regel in het SMTP protocol dat als een ontvangende SMTP server het contact met de versturende SMTP server verbreekt met een code 451 (Requested action aborted: local error in processing), de versturende SMTP server het later nog eens hoort te proberen. Een valide SMTP server zal dit ook doen, maar voor software die spam verstuurt (meestal een trojan/virus op een gehackte computer in een botnet) is dit veel te veel moeite. Greylisting wordt toegepast op IP adressen die nog niet eerder mail naar je domein hebben gestuurd en niet op een zwarte of witte lijst voorkomen. Greylisting is zeer effectief, maar heeft tot nadeel dat mail van onbekende domeinen vertraagd wordt. Ook wordt bij deze methode wel verwacht dat dezelfde versturende SMTP server weer contact opneemt om het nogmaals te proberen. Dit hoort ook zo te zijn, maar er zijn domeinen, specifiek Google, die dit niet doen. In ASSP kun je dit soort domeinen uitsluiten voor greylisting.

Bayesiaanse filtering

Een ander gereedschap in de strijd tegen spam is Bayesiaanse statistiek. Hiermee wordt op basis van de inhoud van een mail de kans berekend dat deze mail een spam mail is. Omdat de kenmerken van een spam mail verschillen per organisatie (voor Pfizer zal het woord Viagra bijvoorbeeld een heel normaal woord zijn in een mail), dient een database opgebouwd te worden. Hievoor worden initieel een hoop spam mails opgeslagen en als er genoeg zijn verzameld worden deze gevoed aan een routine die hiervan de baysian database voor een organisatie bepaalt. Hierna kan Bayesiaanse filtering een effectief middel zijn om spam van legitieme mail (ham) te onderscheiden.

Sender Policy Framework (SPF)

Toen SPF een jaar of 6 geleden werd geïntroduceerd, werd het gezien als een belangrijk potentieel wapen tegen spam. SPF is echter nooit geworden wat men ervan verwachtte, doordat spammers razendsnel hun werkwijze aangepast hebben en het ook nooit overal is geïmplementeerd. SPF gaat ervan uit dat alle DNS records die verwijzen naar mail domein worden uitgebreid met een DNS TXT record waarin wordt beschreven welke IP adressen mail mogen versturen namens dat domein. Daarbij kan dan nog aangegeven worden of het alleen door die IP adressen wordt verstuurd, waarschijnlijk alleen door die adressen of dat het zeer goed mogelijk is dat mail namens dat domein ook door andere IP adressen wordt verstuurd. Als een mail van een domein wordt verstuurd door een IP adres op die lijst verhoogd dit uiteraard de betrouwbaarheid dat dit een legitieme mail is van dat domein. Dit betekent echter niet dat het geen spam mail is voor de ontvangende kant, aangezien spammers ook gewoon SPF records in DNS kunnen aanmaken voor hun domeinen. Daarnaast hebben veel domeinen geen SPF record. Als je zelf een mailserver draait is het handig om te zorgen dat er een SPF record voor je domein in DNS bestaat om de kans dat een ontvangende SMTP server jouw mail als spam beschouwt te verkleinen, maar SPFs toepasbaarheid om spam van ham te onderscheiden is helaas beperkt.

Conclusie

Door het gebruik van een goede anti-spam oplossing is het probleem van spam vrij goed binnen de perken te houden. Daarbij verdienen oplossingen die voor je SMTP server draaien, zoals speciale appliances, cloud-based anti-spam oplossingen of een SMTP proxy als ASSP die als schildwacht dienen voor je SMTP server, de voorkeur boven oplossingen die achter je SMTP server draaien. De speciale appliances en cloud-based oplossingen doen hun werk goed, maar als je zo min mogelijk geld uit wilt geven aan spam bestrijding, maar wel een goede bestrijding wilt is ASSP een goede en goedkope (want het product zelf is gratis) oplossing.

ASSP kan op veel platformen geïnstalleerd worden. Hoewel een Windows installatie wellicht het eenvoudigste is, is Linux in dit geval een beter platform omdat het hiermee makkelijker is om je ASSP installatie te beschermen tegen hackpogingen en de beschikbare resources zo efficiënt mogelijk in te zetten. In een vervolgartikel zal ik daarom ingaan op de installatie van ASSP op Linux.

Advertenties
Tagged with: , , , ,
Geplaatst in Blogs
One comment on “ASSP – The Poor Man’s/Company’s Anti-Spam Solution
  1. santa schreef:

    Great blog.

Geef een reactie

Vul je gegevens in of klik op een icoon om in te loggen.

WordPress.com logo

Je reageert onder je WordPress.com account. Log uit / Bijwerken )

Twitter-afbeelding

Je reageert onder je Twitter account. Log uit / Bijwerken )

Facebook foto

Je reageert onder je Facebook account. Log uit / Bijwerken )

Google+ photo

Je reageert onder je Google+ account. Log uit / Bijwerken )

Verbinden met %s

Archief
%d bloggers liken dit: