Vous avez sûrement déjà reçu un email frauduleux où l’expéditeur usurpait l’identité d’une société connue, souvent une banque, pour vous inviter à cliquer sur un lien. C’est ce qu’on appelle le phishing. Pour usurper l’identité d’un tiers, nul besoin d’être un génie de l’informatique. Le protocole d’envoi des emails (SMTP), ne prévoit à la base aucun mécanisme d’authentification. On peut envoyer un email au nom de n’importe qui sans aucune difficulté.
Enfin, c’était surtout vrai au début des années 2000. L’augmentation du nombre d’emails envoyés, en particulier les emails non désirés, a incité les FAI à mettre en place des normes de vérification comme SPF, DKIM et DMARC
SPF, DKIM et DMARC : définitions et objectifs
Le protocole SPF
SPF, pour Sender Policy Framework, est un moyen de limiter l’usurpation d’identité en publiant dans les DNS de votre nom de domaine la liste des serveurs, ou plus précisément des adresses IP, qui sont autorisés à envoyer du courrier avec ce domaine.
Concrètement, cela ne veut pas dire que tous vos mails passeront désormais la barrière des filtres anti-spams. SPF est loin d’être le seul critère utilisé par les filtres anti-spam. L’intérêt est surtout d’éviter que son nom de domaine soit détourné. Un nom de domaine disposant d’un enregistrement SPF configuré correctement sera plus difficile à exploiter par les spammeurs. Néanmoins, un email qui ne dispose pas d’une signature SPF ne sera pas pour autant considéré comme un spam.
Prenons un exemple simple. Supposons que nous souhaitions publier un enregistrement TXT sur le serveur DNS du nom de domaine sendinblue.com. Voilà ce que ce cela donnerait :
brevo.com IN TXT "v=spf1 a ip4:80.12.95.191 -all
Quelques petites explications. Les serveurs ayant pour adresse IP 80.12.95.191 ont le droit d’envoyer des emails au nom de Brevo.com. Le “a” devant l’adresse UP signifie que toutes les adresses IP de l’enregistrement A ont également le droit d’envoyer des emails pour ce nom de domaine. Enfin, le “-all” signifie que toutes les autres IP doivent être rejetées. Pour générer l’enregistrement TXT à saisir dans votre DNS, vous pouvez utiliser un générateur comme celui de Mailradar.
Pour vérifier que cela fonctionne correctement, assurez-vous de retrouver la mention "spf=pass" dans l’en-tête des emails que vous envoyez.

Le protocole DKIM
Né de la fusion des protocoles DomainKeys (Yahoo) et Identified Internet Mail (Cisco), le protocole DKIM, DomainKeys Identified Mail, fait le lien entre le nom de domaine expéditeur et le message. L’objectif du protocole DKIM n’est pas uniquement de prouver que le nom de domaine n’a pas été usurpé, mais que le message n’a pas été altéré durant sa transmission.
Ce protocole repose sur une procédure cryptographique, avec une clé publique publiée dans le zone DNS du domaine émetteur, et une clé privée, utilisée pour encoder le message. Pour mettre en place une signature DKIM, vous devez :
Créer un couple clé privée / clé publique au format RSA 1024 bits
Publier dans les DNS de votre domaine la clé publique
Configurer l’envoi de vos messages pour l’encodage avec la clé privée
Si cela fonctionne bien, vous devriez retrouver le code suivant dans l’en-tête de votre email.
