E-mail spoofing en phishing voorkomen met SPF, DKIM en DMARC

In de afgelopen jaren zijn de meldingen met betrekking tot e-mailfraude (ofwel spoofing) fors gestegen. Criminelen bootsen je e-mailadres na en misbruiken deze vervolgens om massaal nepfacturen en phishingmails te versturen.

Het wordt steeds belangrijker om jouw mailverkeer te beveiligen om spoofing te voorkomen en jouw reputatie te beschermen. Daarnaast worden mailberichten die niet voorzien zijn van extra beveiligingsinstellingen steeds vaker en sneller als ongewenst gemarkeerd of geweigerd bij de ontvangende partij.

E-mail spoofing voorkomen

Om jouw mail te beschermen is het belangrijk om extra beveiligingsinstellingen te activeren die de authenticiteit – de echtheid – van het mailverkeer tussen verzender en ontvanger verifiëren. Hiervoor kun je extra instellingen als SPF, DKIM en DMARC gebruiken.

Dit klinkt misschien cryptisch en ingewikkeld, maar dat valt dus reuze mee. In dit artikel zal ik met enkele simpele voorbeelden toelichten hoe dit in zijn werk gaat en wat er zelf aan kunt doen.

Neem je het veilingpakket af bij xel dan worden de instellingen automatisch voor je ingesteld en ben je ervan verzekerd dat jouw e-mailadres niet misbruikt kan worden door anderen.

Wat is een SPF?

SPF staat voor Sender Policy Framework.

In een SPF-record geef je aan vanuit welke (mail)servers en domeinen er mail verstuurd mag worden.

Hoe werkt het?

De SPF wordt als een TXT-record toegevoegd aan de DNS van jouw domeinnaam en bevat alle IP-adressen van de mailservers die bevoegd zijn om jou mail te versturen.

Op het moment dat je een bericht stuurt, zal de ontvangende mailsoftware automatisch nagaan of er een SPF-record aanwezig is. Als er een record aanwezig is, dan wordt er gecontroleerd of het IP-adres van de mailserver dat het bericht heeft verstuurd, vermeld staat.

Staat deze vermeld in de SPF-record dan zal het bericht worden geaccepteerd door de mailserver van de ontvanger. Staat deze niet vermeld in de SPF-record dan kan het bericht worden geweigerd, in de ongewenste mail terecht komen of alsnog toegelaten worden. Dit is afhankelijk van andere instellingen waar we later op terugkomen. Maak je helemaal geen gebruik van een SPF-record dan is kans groot dat je bericht als verdacht wordt aangemerkt en in de ongewenste mail terecht komt.

Bijna iedere partij die e-maildiensten aanbiedt, heeft wel een SPF-record waar je gebruik van kunt maken. Ook xel heeft een eigen SPF-record die je kunt gebruiken als je gebruik maakt van de e-maildiensten bij xel.

SPF record van xel: v=spf1 include:spf.xel.nl ~all

De scherp oplettende lezer zal nu denken, het ging toch om IP-adressen? Waarom is er dan geen IP-adres zichtbaar in de SPF-record van xel? Goed gezien!

Bij xel maken we gebruik van meerdere mailservers, wat inhoudt dat er eigenlijk meerdere IP-adressen in de SPF-record moeten worden opgenomen. Om te voorkomen dat dit iedere keer aangepast moet worden als er iets wijzigt aan de mailservers van xel, wordt er gebruik gemaakt van een domeinnaam.

xel kan achter de schermen IP-adressen verwijderen of toevoegen om ervoor te zorgen dat de SPF-record altijd up-to-date is zonder dat je hier als klant wat voor hoeft te doen. Dit is een techniek die de meeste partijen toepassen om het gebruik van een SPF-record eenvoudiger te maken.

SPF-record instellen

Om een SPF-record in the stellen moet je eerst een TXT-record aanmaken via DNS beheer. Er zal dan worden gevraagd om een naam en een waarde. Als naam kun je altijd een ‘@’ opgeven. De waarde ontvang je van de partij die de SPF-record aanbiedt. Bij xel is dit dus ‘v=spf1 include:spf.xel.nl ~all’.

Je kunt maar één SPF-record hebben

Maar het is goed mogelijk dat je mail verstuurd vanuit meerdere domeinnamen en mailservers, bijvoorbeeld om nieuwsbrieven of facturen te versturen.

Deze mailservers en domeinnamen moet je samenvoegen in één SPF-record.

Voorbeeld :

Stel, je maakt gebruik van de e-maildiensten bij xel en wil voor het versturen van nieuwsbrieven SendGrid gebruiken. Je krijgt dan zoals hieronder te zien is te maken met twee SPF records en moet deze dan samen voegen.

v=spf1 include:spf.xel.nl ~all
v=spf1 include:sendgrid.net ~all

Na het samenvoegen van de SPF records ziet het record er als volgt uit:

v=spf1 include:spf.xel.nl include:sendgrid.net ~all

Je kopieert dus enkel het ‘include’ deel van de tweede record er tussenuit en voegt deze toe aan de eerste record.

Wil je de SPF-record van xel of een andere partij instellen?

Lees dan ons artikel ‘Hoe stel je de DNS records van jouw domeinnaam in?’.

Wat is DKIM?

DKIM staat voor DomainKeys Identified Mail en voorkomt ook dat onbekenden berichten namens jou kunnen versturen.

De DKIM protocol is echter geen vervanging van de SPF, maar een toevoeging voor extra veiligheid.

Hoe werkt DKIM?

De DKIM werkt met een Privé- en een Publieke sleutel. De Privésleutel is enkel bedoeld voor de verzender en dient dus nooit met anderen te worden gedeeld. Met de privésleutel kunnen berichten met een encryptie in de header worden verstuurd.

De publieke sleutel, die vermeld staat in het DNS, kan door de ontvangende partij vervolgens worden gebruikt om de encryptie die verstopt is in de header te openen en het bericht zo te verifiëren.

Neem je het veilingpakket af bij xel dan worden de DKIM sleutels automatisch gegenereerd en voor jouw domeinnaam ingesteld. Hier hoef je zelf dus niets voor te doen.

Externe e-maildienst

Maak je gebruik van een externe e-maildienst (bijvoorbeeld Outlook, G Suite of SendGrid) dan kun je navragen bij de externe partij of er een mogelijkheid voor DKIM beschikbaar is.

Als dit het geval is dan ontvang je enkel de publieke sleutel en zul je verzocht worden om deze als TXT-record toe te voegen aan de DNS van jouw domeinnaam. Dit is gelukkig slechts een kwestie van kopiëren en plakken.

Wil je de DKIM-record van een andere partij instellen? Lees dan ons artikel ‘De DNS records van jouw domeinnaam beheren’.

Wat is DMARC?

DMARC staat voor Domain-based Message Authentication, Reporting and Conformance en is bedoeld om aan te geven wat er met de berichten moet gebeuren als deze niet door de SPF en/of DKIM controle komen.

De opties zijn;

  • None (bericht doorlaten en geen actie ondernemen);
  • Quarantine (bericht doorlaten en plaatsen in de ongewenste mail);
  • Reject (bericht weigeren en eventueel een bouncebericht terugsturen);

Ook kun je de DKIM protocol gebruiken om rapporten te genereren waarop te zien is welke berichten door de check heen zijn gekomen en welke niet.

Neem je een veilingpakket af bij xel dan zijn deze rapporten in een duidelijk overzicht terug te vinden in jouw xel omgeving.

DMARC-record aanmaken en instellen

De DMARC protocol wordt, net als de DKIM- en de SPF-record, als een TXT-record toegevoegd aan de DNS van je domeinnaam en bepaalt op basis van de ingestelde waarden wat er moet gebeuren met een bericht dat niet door de controle heen komt.

Er zijn DMARC record generators waarmee je op een eenvoudige manier de DMARC record kunt samenstellen. Een Nederlandse tref je op dmarcadvisor.nl.

Wil je de DMARC-record instellen voor jouw domeinnaam? Lees dan ons artikel ‘De DNS records van jouw domeinnaam beheren’.

DKIM tags

Hieronder tref je een overzicht van de diverse tags die aan een DKIM-record kunnen worden toegevoegd.

Tag Verplicht Uitleg Voorbeeld
V Ja Welke DMARC versie gebruiken?  v-DMARC1
P Ja Welk beleid toepassen? p=quarantine
pct Nee Op welke percentage?  pct=100
rua Nee Rapportage versturen naar?  rua=mailto:rapporten@domein.nl
sp Nee Welk beleid toepassen (subdomein)?  sp=none
aspf Nee Uitlijning voor SPF toepassen? aspf=r

Aan de hand van de hierboven genoemde voorbeelden zou de DMARC-record er uiteindelijk zo uitzien:

v=DMARC1; p=quarantine; pct=100; rua=mailto:rapporten@domein.nl; sp=none; aspf=r;

 

Heb je na het lezen van het artikel nog vragen of kom je er niet uit dan kun je gerust contact opnemen met onze servicedesk.