Qu'est-ce qu'un enregistrement CAA?
Un enregistrement CAA (Certificate Authority Authorization) est un type d'enregistrement DNS qui spécifie quelles autorités de certification (AC) sont autorisées à délivrer des certificats SSL/TLS pour un domaine. CAA agit comme un contrôle de sécurité, empêchant la délivrance de certificats non autorisés, même si un attaquant compromet une AC.
Pourquoi les enregistrements CAA sont importants
Sans les enregistrements CAA, des centaines d'AC de confiance pourraient délivrer un certificat pour votre domaine. Cela crée des risques :
- Ca Compromise: Si une CA de confiance est compromise, les attaquants pourraient obtenir des certificats pour votre domaine
- Délivrance: Les AC délivrent parfois des certificats de manière incorrecte
- Génie social : Les attaquants pourraient tromper une AC en lui délivrant des certificats non autorisés
Les enregistrements CAA réduisent la surface de l'attaque en limitant les CA qui peuvent émettre pour votre domaine.
Comment fonctionne la CAA
1. Domain propriétaire publie CAA records in DNS
2. Certificat demandeur demande un certificat
3. Vérifications CA Enregistrements CAA pour le domaine
4. Émissions d'AC seulement si elles sont autorisées (ou s'il n'y a pas de dossiers d'AC)
5. Si non autorisé, l'AC doit refuser la demande
Vérification obligatoire de l'AC
En septembre 2017, toutes les AC sont tenues de vérifier les dossiers de l'ACA avant de délivrer des certificats. Cela fait partie des exigences de base du forum CA/Browser.
Format d’un enregistrement CAA
example.com. IN CAA 0 issue "letsencrypt.org"
Composantes:
- 0 : drapeaux (0 = non critiques, 128 = critiques)
- Émission/sauvegarde/iodef: Étiquette de propriété
- "letsencrypt.org": Valeur de la propriété (l'AC autorisée)
Étiquettes de propriété
| Balise | Objet | Exemple |
|---|---|---|
| Numéro | Autoriser l'AC pour tous les certificats | Numéro "letsencrypt.org" |
| Numéro | Autoriser l'AC pour les certificats wildcard | Numéro "digicert.com" |
| iodef | Signaler les tentatives non autorisées | iodef "mailto:[email protected]" |
Exemples d’enregistrements CAA
Une seule AC (Let’s Encrypt uniquement)
example.com. CAA 0 issue "letsencrypt.org"
Plusieurs AC
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issue "digicert.com"
example.com. CAA 0 issue "sectigo.com"
Restriction des certificats wildcard
Autorise le chiffrement pour les certs réguliers, DigiCert pour les wildcards :
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issuewild "digicert.com"
Tout refuser (aucun certificat)
Utile pour les domaines qui ne devraient jamais avoir de certificats:
example.com. CAA 0 issue ";"
Avec signalement
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 iodef "mailto:[email protected]"
Identifiants courants des AC
| Pays | Identification |
|---|---|
| Encryptons | letsencrypt.org |
| DigiCert | digicert.com |
| Sectigo (Comodo) | sectigo.com |
| GlobalSign | globalsign.com |
| GoDaddy | godaddy.com |
| Amazonie | amazon.com |
| Google Trust Services | Pki.goog |
Vérifiez la documentation de votre CA pour l'identificateur exact à utiliser.
Mise en œuvre des enregistrements CAA
Via le fournisseur DNS
La plupart des fournisseurs de DNS ont un support d'enregistrement CAA dans leur interface.
Via un fichier de zone
; Allow Let's Encrypt and DigiCert
@ IN CAA 0 issue "letsencrypt.org"
@ IN CAA 0 issue "digicert.com"
@ IN CAA 0 iodef "mailto:[email protected]"
Héritage des enregistrements CAA
Les dossiers de l'ACA suivent la hiérarchie DNS :
- Si example.com possède des enregistrements CAA, ils s'appliquent aux sous-domaines
- Les sous-domaines peuvent avoir leurs propres CAA (parent supérieur)
- Aucun enregistrement CAA = n'importe quelle CA peut émettre
example.com. CAA 0 issue "letsencrypt.org" ; Applies to all
api.example.com. CAA 0 issue "digicert.com" ; Override for api
Vérification des enregistrements CAA
Utilisation de fouilles :dig example.com CAA
; ANSWER SECTION:
example.com. 300 IN CAA 0 issue "letsencrypt.org"
Utilisation de DomScan:
curl "https://domscan.net/v1/health?domain=example.com"
# Reports hasCAA in security details
Bonnes pratiques CAA
1. Configurer toujours CAA: Réduire votre surface d'attaque
2. Inclure toutes les CA que vous utilisez: N'oubliez pas CDN / fournisseur de nuages CA
3. Présenter iodef: Être informé des tentatives non autorisées
4. Test avant exécution: Vérifiez que vos AC peuvent encore émettre
5. Tenir les dossiers à jour : Ajouter de nouvelles AC avant de demander des certificats
Problèmes courants liés à la CAA
Le renouvellement du certificat échoue: l'AC ne figure pas dans les dossiers de l'ACA—les ajouter avant l'expiration du certificat Les certificats CDN échouent: l'AC du fournisseur de CDN n'est pas autorisée — vérifiez quelle CA votre CDN utilise Missing sous-domaine CAA: L'enfant hérite du parent CAA — établit des dossiers spécifiques au besoinCAA est un contrôle de sécurité simple mais puissant que chaque domaine devrait mettre en œuvre.