17-11-2014 10:55:28

Door: Justin Rondeboom

SPF-records. Er heersen nogal wat misvattingen over deze onschuldig ogende regeltjes in je DNS-zone. Wij krijgen om de week wel iemand aan de lijn die zegt dat ze hun spamprobleem willen aanpakken met een SPF-record. Ze hebben dan via via gehoord dat dit een regelrechte spamkiller is. En dan moet de SPF-regel ook nog geconfigureerd worden. Sputterende mailservers en drooglopende mailstromen is veelal het gevolg.

Wat gaat hier nou mis? Het probleem is dat men al in de fout gaat bij het woordje “spam”. We moeten het namelijk hebben over “spoofing”.

Wat is nou e-mail spoofing?
Het e-mailadres waar vanaf spam verstuurd wordt is gemakkelijk te vervalsen. Het kan in principe alles zijn wat een spammer wil. Zo kunnen ze zonder problemen jouw eigen e-mailadres opgeven als verzendadres.

Dit is omdat het SMTP-protocol standaard geen authenticatie of check hierop heeft. Je kunt bijvoorbeeld zonder al te veel moeite een e-mail opstellen met als verzendadres "president@whitehouse.gov".

Die e-mail zal probleemloos aankomen, tenzij er een SPF-record in de DNS-zone van whitehouse.gov staat en de ontvangende mailserver deze raadpleegt na het ontvangen van de e-mail.

OK, wat is SPF dan precies?
Sender Policy Framework (SPF) gaat niet over het tegenhouden van spam. Het is ontwikkeld om het SMTP-protocol van wat meer beveiliging te voorzien. Het enige wat het doet is, door middel van een TXT-record in de DNS-zone, aangeven welke mailserver(s) geautenticeerd zijn om e-mail te versturen vanaf jouw maildomein. Op deze manier zorgt SPF ervoor dat “anderen” geen gespoofde spam van jouw maildomein(en) zullen ontvangen.

Belangrijk om te weten is dat jouw SPF-maatregel dus geen impact heeft op spam of e-mail die naar jou verstuurd wordt.

Wat zijn de voordelen?
Andere mailservers kunnen het SPF-record raadplegen om te bepalen of e-mail die ze ogenschijnlijk van jou ontvangen hebben, inderdaad van jouw mailserver komt. Is dit niet het geval, dan is er sprake van e-mail spoofing en kan de e-mail dus gefilterd worden.

Zo maakt een SPF-record het wat moelijker voor spammers om je e-mailadres te spoofen (let op: moeilijker, niet onmogelijk!). Ook zul je mogelijk minder "bounce back" e-mails ontvangen van spam die vanaf één van jouw e-mailadressen verstuurd is naar een onbestelbaar e-mailadres.

Dit werkt in principe goed, maar er zitten ook nadelen aan een SPF-setup.

Nadelen
Ten eerste houdt het dus geen spam tegen. Het gaat hier alleen om spam dat van gespoofde e-mailadressen komt. SPF is dus niets meer dan een anti-spoofing maatregel.

Dan nog is het vrij eenvoudig om een e-mail zo op te stellen dat de SPF-check niets zal uitmaken en de gespoofde e-mail alsnog doorkomt.

Ook is SPF geen wereldwijde standaard. Niet elke mailserver zal controleren op SPF-records. Die mailservers zullen spoof e-mails dus gewoon accepteren.

Verder wordt de SPF-syntax al snel ingewikkeld als er sprake is van telewerkers/thuiswerkers; mensen die vanuit huis via een SMTP-server van zijn/haar provider e-mails versturen. Elk afzonderlijk IP-adres die elke thuiswerker gebruikt zal dan in het SPF-record geplaatst moeten worden. Dat wordt al gauw onhandelbaar.

Iets anders wat BIT vaak ziet bij SPF-verzoeken is het gebruik van de parameter ~all (softfail) in de syntax. Deze parameter houdt kort gezegd in dat e-mail van andere bronnen ook geaccepteerd mag worden, maar met een kanttekening. Dit maakt de SPF-regel effectief overbodig; e-mails die een softfail krijgen zullen niet automatisch gedropt worden, maar worden gemarkeerd. Deze e-mails kunnen dan eventueel op client-niveau (bij de ontvanger) als spam gefilterd worden aan de hand van de markering.

De softfail functie is dan ook bedoeld om je SPF-record te testen en zo alle mogelijke mailservers te verzamelen. Als je weet dat al jouw e-mail echt alleen van de genoemde IP-adressen komt, dan is -all de enige juiste parameter. Laat je de e-mail toch door met een softfail, dan kan het voorkomen dat de ontvanger veel spam krijgt vanaf een gespoofd adres en vervolgens jouw maildomein als onbetrouwbaar ziet, softfail of geen softfail.

Een ander probleem is dat SPF het doorsturen van e-mail moeilijker maakt. Bij het doorsturen van e-mail wordt het oorspronkelijke verzendadres behouden, maar zal deze verstuurd worden vanaf een andere mailserver. Bij een SPF-check zal de doorgestuurde e-mail dus geblokkeerd worden.

Ten slotte is SPF niet erg gebruikersvriendelijk. Een klein foutje in je SPF-configuratie kan al betekenen dat er valide e-mail tegengehouden wordt. Kortom: het is belangrijk goed te weten hoe je mailsetup in elkaar steekt en hoe e-mailprotocols werken.

Wat vinden jullie nou van dat SPF-gebeuren?
BIT ervaart dat, ondanks dat er SPF-records geplaatst worden, er toch e-mails binnen kunnen komen van gespoofde e-mailadressen. Ook komt het veel voor dat er legitieme e-mail geblokkeerd wordt, waarna men de SPF-syntax dusdanig gaat versoepelen dat het nut ervan nihil wordt. Het effect van een SPF-record is dus wat ons betreft minimaal en het wordt te vaak onterecht aangegrepen als een oplossing tegen spam.