Wat is een CAA-record?
Een CAA-record (Certificate Authority Authorization) is een DNS-recordtype dat aangeeft welke Certificate Authorities (CA's) SSL/TLS-certificaten mogen afgeven voor een domein. De CAA treedt op als beveiligingscontrole, waardoor niet-geautoriseerde afgifte van certificaten wordt voorkomen, zelfs als een aanvaller een CA in gevaar brengt.
Waarom CAA Records Matter
Zonder CAA-gegevens kunnen honderden vertrouwde CA's een certificaat afgeven voor uw domein. Dit leidt tot risico's:
- CA Compromis: Als een vertrouwde CA is gecompromitteerd, aanvallers kunnen krijgen certificaten voor uw domein
- Mis-issue: CA's geven af en toe onjuist certificaten af
- Social Engineering: Aanvallers kunnen een CA erin luizen om onbevoegde certificaten uit te geven.
CAA records verminderen het aanvalsoppervlak door te beperken welke CA's kunnen uitgeven voor uw domein.
Hoe werkt CAA?
1. Domeineigenaar publiceert CAA records in DNS
2. Certificaatverzoeker vraagt een CA om een certificaat
3. CA controles CAA records voor het domein
4. CA-emissies alleen indien toegestaan (of er geen CAA-gegevens bestaan)
5. Indien onbevoegd, moet CA het verzoek weigeren
Verplichte CA-controle
Met ingang van september 2017 moeten alle CA's de CAA-gegevens controleren alvorens certificaten af te geven. Dit maakt deel uit van de basisvereisten voor CA/Browser Forum.
CAA-recordformaat
example.com. IN CAA 0 issue "letsencrypt.org"
Onderdelen:
- 0: Vlaggen (0 = niet-kritisch, 128 = kritisch)
- issue/issuewild/iodef: Eigenschapstag
- "letsencrypt.org": Onroerend goed waarde (de geautoriseerde CA)
Eigenschap-tags
| Tag | Betreft | Voorbeeld |
|---|---|---|
| probleem | Machtig CA voor alle certificaten | nummer "letsencrypt.org" |
| uitgiftewild | Machtig CA voor wildcard certificaten | uitgavewild "digicert.com" |
| iodef | Ongeautoriseerde pogingen melden | iodef "mailto:security@example.com" |
CAA-recordvoorbeelden
Single CA (Let's Encrypt only)
example.com. CAA 0 issue "letsencrypt.org"
Meerdere CA's
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issue "digicert.com"
example.com. CAA 0 issue "sectigo.com"
Wildcard beperking
Let's Encrypt for regular certs, DigiCert for wildcards:
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issuewild "digicert.com"
Alles ontkennen (geen certificaten)
Nuttig voor domeinen die nooit certificaten mogen hebben:
example.com. CAA 0 issue ";"
Met rapportage
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 iodef "mailto:security@example.com"
Gemeenschappelijke CA-identificatiecode
| CA | Identificatie |
|---|---|
| Laten we versleutelen | letsencrypt.org |
| DigiCert | digicert.com |
| Sectigo (Comodo) | sectigo.com |
| GlobalSign | globalsign.com |
| Go Daddy. | godaddy.com |
| Amazon | amazon.com |
| Google Trust Services | pki.goog |
Controleer de documentatie van uw CA voor de exacte identificatiecode.
Uitvoeringsgegevens van de CAA
Via DNS Provider
De meeste DNS-aanbieders hebben CAA-recordondersteuning in hun interface.
Via zonebestand
; 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"
Overerving van de CAA
CAA records volgen DNS hiërarchie:
- Als example.com CAA records heeft, gelden ze voor subdomeinen
- Subdomeinen kunnen hun eigen CAA records hebben (override ouder)
- Geen CAA records = elke CA kan uitgeven
example.com. CAA 0 issue "letsencrypt.org" ; Applies to all
api.example.com. CAA 0 issue "digicert.com" ; Override for api
Controle van de CAA-gegevens
Met opgraving:dig example.com CAA
; ANSWER SECTION:
example.com. 300 IN CAA 0 issue "letsencrypt.org"
DomScan gebruiken:
curl "https://domscan.net/v1/health?domain=example.com"
# Reports hasCAA in security details
CAA Best Practices
1. Altijd CAA instellen: Verminder uw aanvalsoppervlak
2. Inclusief alle CA's die u gebruikt: Vergeet CDN/cloud provider CA's niet
3. Instellen van iodef: Wordt op de hoogte gebracht van ongeoorloofde pogingen
4. Test vóór handhaving: Controleren of uw CA's nog steeds kunnen uitgeven
5. Houd records bijgewerkt: Nieuwe CA's toevoegen alvorens certificaten aan te vragen
Gemeenschappelijke CAA-aangelegenheden
Certificate revitation fails: CA niet in › records CDN-certificaten falen: CDN-provider CA niet geautoriseerd Missing subdomein CAA: Kind erft de ouder en stelt indien nodig specifieke gegevens inCAA is een eenvoudige maar krachtige beveiligingscontrole die elk domein moet implementeren.