Waarom is het belangrijk om je DKIM-sleutels te roteren?

Als je je DKIM-sleutels regelmatig ververst, verklein je de kans dat aanvallers je e-maildomein misbruiken voor bijvoorbeeld spammen, spoofen of CEO-fraude.

Periodiek roteren beschermt tegen ‘gekraakte’ sleutels

DKIM gebruikt een cryptografische sleutelpaar: 

  1. een geheime sleutel voor het maken van digitale handtekeningen
  2. een publiek bekende sleutel voor het verifiëren van digitale handtekeningen 

Als je DKIM hebt ingesteld, voegt je verzendende mailserver een digitale handtekening toe aan de e-mailberichten die hij verzendt. Zo’n digitale handtekening kun je als ontvanger gebruiken om vast te stellen of een e-mailbericht daadwerkelijk afkomstig is van de afzender die bij het bericht wordt vermeld. Een meer gedetailleerde uitleg over hoe DKIM werkt, vind je hier.

Een aanvaller die over genoeg computerkracht, tijd en geduld beschikt, kan met een groot aantal ontvangen e-mailberichten de geheime DKIM-sleutel ‘kraken’. Hij kan deze sleutel dan gebruiken om zelf digitale handtekeningen op e-mailberichten te zetten. Op die manier kan hij zich als iemand anders voordoen, namelijk de eigenaar van de sleutel. En DKIM merkt dat niet op.

Als je periodiek je sleutels roteert, lopen aanvallers altijd achter. Tegen de tijd dat ze een sleutel hebben gekraakt, is die niet meer in gebruik. De gekraakte sleutel is dan waardeloos geworden, want je kunt er geen geldige handtekeningen meer mee zetten.

Periodiek roteren beschermt tegen DKIM-replay-aanvallen

Bij een DKIM-replay-attack maakt een aanvaller misbruik van jouw domeinreputatie om spam te versturen. Dat werkt als volgt:

  1. De aanvaller stuurt een e-mailbericht met spaminhoud via jouw mailserver of een gedeeld third party-systeem naar één e-mailadres dat hij zelf controleert. (Een voorbeeld van een gedeeld third party-systeem is een SaaS-dienst die gebruikmaakt van een en dezelfde DKIM-sleutel voor meerdere klanten.)
  2. De mailserver voegt een DKIM-handtekening toe aan het e-mailbericht.
  3. De aanvaller kopieert de inhoud van het verzonden e-mailbericht, inclusief de geldige DKIM-handtekening.
  4. De aanvaller verzendt het gekopieerde bericht mét DKIM-handtekening via een andere mailserver als spam naar een groot aantal ontvangers.
  5. De ontvangende mailservers checken de DKIM-handtekening en zien dat die klopt met de publieke sleutel.

Vanwege de manier waarop DKIM is ontworpen, is het voldoende als er minimaal één handtekening in het e-mailbericht klopt om het bericht op basis van DKIM als authentiek te beschouwen. In dit geval is dat dus de misbruikte DKIM-handtekening. En omdat één positieve DKIM-verificatie of SPF-verificatie voldoende is voor een positieve DMARC-verificatie kan DMARC hiermee omzeild worden. De ontvangende mailservers zien de spamberichten daarom niet aan voor wat ze zijn: spam. En zo komt die spam gewoon in de mailbox van de ontvangers terecht.

DMARC-verificatie kan DMARC hiermee omzeild worden. De ontvangende mailservers zien de spamberichten daarom niet aan voor wat ze zijn: spam. En zo komt die spam gewoon in de mailbox van de ontvangers terecht.

DKIM-replay-attacks kunnen je domeinreputatie schaden. Als een e-mailprovider zoals Gmail of Outlook 365 duizenden keren hetzelfde e-mailbericht ontvangt dat van jouw DKIM-handtekening is voorzien, kan deze provider – onterecht – concluderen dat jouw e-maildomein een bron van spam is. En zo kan je domein op een internationale spam-blacklist terechtkomen. Dan worden alle e-mailberichten die afkomstig zijn van je domein wereldwijd als spam gemarkeerd, ook de legitieme berichten die naar andere ontvangers worden gestuurd. Die komen dan ten onrechte in de spamfolder van de ontvanger terecht, of worden zelfs helemaal niet bij de ontvanger afgeleverd!

Als je periodiek je sleutels roteert, kunnen aanvallers niet onbeperkt hetzelfde spambericht met jouw DKIM-handtekening via andere servers doorsturen. Nadat je je sleutels hebt vervangen, komt het bericht niet meer met succes door de DKIM-controle van ontvangende mailservers. Het wordt dan weer correct als niet legitieme e-mail gezien. Het is een effectieve manier om een gaande DKIM-replay-attack tegen je domein een halt toe te roepen, zoals Protonmail in december 2021 deed toen zij het slachtoffer werden van zo’n aanval tegen hun domein.

Controleer de huidige beveiliging van jouw domeinnaam: