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 l'ACS enregistre l'importance
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.
Fonctionnement de l'ACA
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'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:security@example.com" |
Exemples d'enregistrement CAA
Une seule CA (encryptons seulement)
example.com. CAA 0 issue "letsencrypt.org"
Plusieurs CA
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issue "digicert.com"
example.com. CAA 0 issue "sectigo.com"
Restriction concernant les cartes sauvages
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"
Tous (pas de certificat)
Utile pour les domaines qui ne devraient jamais avoir de certificats:
example.com. CAA 0 issue ";"
Avec les rapports
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 iodef "mailto:security@example.com"
Identificateurs communs de l'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 oeuvre des dossiers de l'ACS
Par l'intermédiaire du fournisseur DNS
La plupart des fournisseurs de DNS ont un support d'enregistrement CAA dans leur interface.
Fichier par zone
; Allow Let's Encrypt and DigiCert
@ IN CAA 0 issue "letsencrypt.org"
@ IN CAA 0 issue "digicert.com"
@ IN CAA 0 iodef "mailto:security@example.com"
Héritage 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 dossiers 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
Pratiques exemplaires de l'ACS
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
Questions communes relatives aux ACA
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.