Wat is het verschil tussen een sterke en een zwakke DMARC-policy?

DMARC heeft drie tags waarmee je een policy kunt aangeven: p=none, p=quarantine en p=reject. In de praktijk leidt dat tot vijf verschillende situaties:

Je geeft een lege ofwel geen policy op

Er vinden geen checks plaats en DMARC beschermt je niet tegen spoofing. Alle e-mail wordt doorgelaten.

Je geeft een van de drie policy’s op, maar daarbij maak je een syntaxfout

DMARC heeft geen hygiënecontrole op syntax, dus het vertelt je niet dat er iets niet klopt (hetzelfde geldt SPF en DKIM). Maar ondertussen vinden er daardoor geen checks plaats en beschermt DMARC je niet tegen spoofing. Ook al denk je dat dat wel gebeurt! Schijnveiligheid dus. Leuk om te weten: DMARCSaaS kan wel deze syntaxcontrole voor je uitvoeren.

Je gebruikt p=none als policy

Er gebeurt dan niets na de DMARC-check. Er vindt een passieve controle plaats: je dwingt niks af. Foutieve e-mail wordt doorgelaten, zoals ook gebeurt als er geen policy is.

Je gebruikt p=quarantine als policy

Dit is een ‘tussenvorm’, die je kunt gebruiken als je er niet zeker van bent dat je DMARC goed hebt ingesteld. Met deze policy wordt geen mail geweigerd. In plaats daarvan merkt de ontvangende partij mail die niet positief door de DMARC-check komt aan als spam. 

Wat er daarna met de mail gebeurt, is afhankelijk van de ontvangende partij. Die kan er in het beste geval voor kiezen om de mail in de spamfolder te laten plaatsen. Maar je hebt ook het risico dat zo’n partij de mail ongewild gewoon in de inbox aflevert. Daar heb je geen controle over.

Idealiter gebruik je geen p=quarantine en heb je DMARC zo ingeregeld, dat mails van hackers zelfs niet in de spambox van de ontvangende partij belanden maar altijd worden geweigerd. 

Je gebruikt p=reject als policy

De ontvangende partij weigert mail die niet positief door de DMARC-check komt. Alleen als je deze policy gebruikt, kun je SPF, DKIM en DMARC correct afdwingen. Helaas zijn er ontvangende partijen, zoals Microsoft 365, die een opgelegde policy p=reject ongevraagd eenzijdig omzetten naar een p=quarantine, waarmee de kracht van deze policy volledig wordt ondermijnd.

Als je het ons vraagt: p=reject is de enige correcte policy. Aan de andere policy’s heb je eigenlijk niks. De policy p=quarantine kan nuttig zijn als je DMARC nog naar jouw wens aan het inrichten bent, maar vervang die zodra het kan door p=reject

Controleer de huidige beveiliging van jouw domeinnaam: