Cybreach Consulting Prendre RDV
Retour aux articles
Vulnérabilités

Sécurité email : SPF, DKIM, DMARC et usurpation d'identité de l'expéditeur

Le protocole SMTP (Simple Mail Transfer Protocol) n'a pas de mécanisme d'authentification natif : n'importe qui peut envoyer un email avec n'importe quelle adresse expéditeur. SPF, DKIM et DMARC sont des extensions qui ajoutent des mécanismes de vérification. Leur absence permet à un attaquant d'envoyer des emails convaincants au nom de votre organisation, facilitant les attaques de phishing, de BEC (Business Email Compromise) et d'ingénierie sociale.

SPF (Sender Policy Framework)

SPF est un enregistrement DNS TXT qui liste les serveurs autorisés à envoyer des emails au nom de votre domaine. Quand un serveur de messagerie reçoit un email de votre domaine, il vérifie si l'IP de l'expéditeur figure dans votre enregistrement SPF. Si ce n'est pas le cas, l'email est suspect. Un SPF absent permet à n'importe quel serveur d'envoyer des emails en votre nom. Un SPF trop permissif (+all) est équivalent à l'absence de SPF.

Exemple d'enregistrement SPF

# Enregistrement DNS TXT pour example.com :
example.com. IN TXT "v=spf1 include:_spf.google.com include:sendgrid.net ip4:203.0.113.10 -all"

# -all : rejeter les emails qui ne correspondent pas (strict, recommandé)
# ~all : soft fail (marquer comme suspect, pas rejeter) - moins sécurisé
# +all : accepter tout - ne pas utiliser

# Tester : dig TXT example.com | grep spf

DKIM (DomainKeys Identified Mail)

DKIM ajoute une signature cryptographique à chaque email envoyé. Le serveur expéditeur signe l'email avec une clé privée. Le serveur destinataire vérifie la signature avec la clé publique publiée dans le DNS du domaine. DKIM garantit deux choses : l'email provient bien d'un serveur contrôlant la clé privée du domaine, et le contenu de l'email n'a pas été modifié en transit. DKIM seul ne suffit pas : un attaquant peut envoyer un email signé DKIM depuis un sous-domaine ou un domaine similaire.

DMARC (Domain-based Message Authentication, Reporting, and Conformance)

DMARC coordonne SPF et DKIM et définit ce que le serveur destinataire doit faire quand les vérifications échouent. Il permet aussi de recevoir des rapports sur les emails envoyés au nom de votre domaine. Les trois politiques DMARC : none (surveiller uniquement, ne rien bloquer), quarantine (mettre en spam les emails qui échouent), reject (rejeter les emails qui échouent). Une politique p=none ne protège pas contre l'usurpation.

Enregistrement DMARC recommandé

# Enregistrement DNS TXT pour _dmarc.example.com :
_dmarc.example.com. IN TXT "v=DMARC1; p=reject; pct=100; rua=mailto:[email protected]; ruf=mailto:[email protected]; sp=reject"

# p=reject : rejeter les emails qui échouent SPF et DKIM
# pct=100 : appliquer à 100% des emails (commencer à 25% pour une transition progressive)
# rua : adresse de réception des rapports agrégés
# sp : politique pour les sous-domaines

Progression recommandée

Déployer SPF, DKIM et DMARC progressivement pour éviter de bloquer des emails légitimes. Étape 1 : mettre en place SPF avec ~all (soft fail) et DKIM sur tous les serveurs d'envoi. Étape 2 : déployer DMARC avec p=none et analyser les rapports pendant 2 à 4 semaines. Étape 3 : identifier et corriger les serveurs légitimes manquants. Étape 4 : passer à p=quarantine puis p=reject. Étape 5 : changer SPF de ~all à -all.

Une question après la lecture ?

Votre domaine peut-il être usurpé pour envoyer des emails ? Envoyez un message.

Ou réservez directement un cadrage de 30 minutes

Réserver un appel