Qu’est-ce que le DNS CAA et comment le valider et l’implémenter ?



Optimisez la sécurité de vos certificats TLS grâce à l’enregistrement DNS CAA.

Qu’est-ce que l’enregistrement DNS CAA ?

L’enregistrement CAA, un type spécifique d’entrée DNS, permet de contrôler quelles autorités de certification (CA) sont habilitées à émettre des certificats pour votre nom de domaine. En clair, vous spécifiez publiquement qui est autorisé à délivrer vos certificats SSL/TLS. Bien que rendu obligatoire fin 2017, son adoption reste limitée, avec moins de 5% des sites populaires l’ayant mis en œuvre.

Illustrons avec un exemple : le site « gf.dev » de toptips.fr a configuré les enregistrements CAA suivants :

gf.dev. 3586 IN CAA 0 issue "digicert.com; cansignhttpexchanges=yes"
gf.dev. 3586 IN CAA 0 issuewild "comodoca.com"
gf.dev. 3586 IN CAA 0 issue "comodoca.com"
gf.dev. 3586 IN CAA 0 issuewild "digicert.com; cansignhttpexchanges=yes"
gf.dev. 3586 IN CAA 0 issuewild "letsencrypt.org"
gf.dev. 3586 IN CAA 0 issue "letsencrypt.org"

Ces configurations indiquent que seuls DigiCert, Comodo et Let’s Encrypt sont autorisés à émettre des certificats pour « gf.dev ». Toute tentative par une autre CA, comme Thawte, serait bloquée. Notez la présence de deux types d’entrées : « issue » et « issuewild ».

  • issue : Permet à la CA d’émettre un certificat uniquement pour le domaine spécifié.
  • issuewild : Autorise la CA à émettre un certificat wildcard, utilisable pour le domaine et ses sous-domaines.

L’enregistrement CAA peut également inclure « iodef » (Incident Object Description Exchange Format), permettant à la CA de notifier les violations via email ou d’autres coordonnées.

Quelles sont les conséquences de l’absence d’enregistrement CAA ?

Si aucun enregistrement CAA n’est configuré pour un domaine, toute entité peut générer une demande de signature de certificat (CSR) et obtenir un certificat signé par n’importe quelle autorité de certification. Cette situation crée une vulnérabilité de sécurité significative.

Ces explications sont-elles claires ?

Récapitulons les abréviations utilisées :

  • DNS : Domain Name System (Système de Noms de Domaine)
  • CA : Certificate Authority (Autorité de Certification)
  • CAA : Certification Authority Authorization (Autorisation de l’Autorité de Certification)
  • TLS : Transport Layer Security (Sécurité de la Couche Transport)
  • SSL : Secure Sockets Layer (Couche de Sockets Sécurisée)

Comment vérifier un enregistrement DNS CAA ?

Plusieurs méthodes sont possibles pour vérifier l’existence et la configuration d’un enregistrement CAA. Vous pouvez utiliser la commande « dig » directement depuis votre terminal :

dig caa $VOTRESITE.COM

Par exemple, pour toptips.fr.com :

[email protected]:~# dig caa toptips.fr.com

; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> caa toptips.fr.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54430
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;toptips.fr.com.			IN	CAA

;; ANSWER SECTION:
toptips.fr.com.		3600	IN	CAA	0 issuewild "comodoca.com"
toptips.fr.com.		3600	IN	CAA	0 issuewild "letsencrypt.org"
toptips.fr.com.		3600	IN	CAA	0 issue "comodoca.com"
toptips.fr.com.		3600	IN	CAA	0 issue "digicert.com; cansignhttpexchanges=yes"
toptips.fr.com.		3600	IN	CAA	0 issue "letsencrypt.org"
toptips.fr.com.		3600	IN	CAA	0 issuewild "digicert.com; cansignhttpexchanges=yes"

;; Query time: 7 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Tue Oct 08 07:12:21 UTC 2019
;; MSG SIZE  rcvd: 298

[email protected]:~#

Pour une vérification à distance, vous pouvez utiliser l’outil en ligne Testeur DNS CAA.

Comment ajouter un enregistrement CAA ?

L’ajout d’un enregistrement CAA se fait de la même manière que pour les autres types d’enregistrements DNS, tels que A, NS ou CNAME.

Si vous utilisez Cloudflare, allez dans l’onglet DNS, puis « Ajouter un enregistrement » et choisissez CAA comme type.

Pour GoDaddy, rendez-vous dans « Gestion DNS » et ajoutez un nouvel enregistrement.

En cas de doute, contactez votre fournisseur de DNS ou d’hébergement pour obtenir de l’aide.

Conclusion

Si ce n’est pas déjà fait, renforcez la sécurité de votre domaine en implémentant un enregistrement CAA. Cette mesure de protection est gratuite et simple à mettre en œuvre.

Avez-vous apprécié cet article ? N’hésitez pas à le partager !