EMAIL-004 critical DNS Authentication
DMARC configured
DMARC records with enforcement policy (quarantine/reject), reporting configured, reports reviewed
Question to ask
"What's your DMARC policy — p=none is basically nothing."
Verification guide
Severity: Critical
DMARC (Domain-based Message Authentication, Reporting & Conformance) tells receiving servers what to do when SPF/DKIM fail, and provides reporting on authentication failures.
Check automatically:
- Query DMARC for root domain and subdomains:
# DMARC is always at _dmarc subdomain
dig TXT _dmarc.example.com +short
dig TXT _dmarc.mail.example.com +short
dig TXT _dmarc.transactional.example.com +short
- With Cloudflare API:
curl -X GET "https://api.cloudflare.com/client/v4/zones/{zone_id}/dns_records?type=TXT" \
-H "Authorization: Bearer $CF_API_TOKEN" | jq '.result[] | select(.name | contains("_dmarc"))'
- Analyze DMARC record:
v=DMARC1- version tagp=none|quarantine|reject- policy for root domainsp=none|quarantine|reject- subdomain policy (if different)rua=mailto:...- aggregate reporting addressruf=mailto:...- forensic reporting address (optional)
Ask user:
- If
p=none: "Is this intentional monitoring mode? How long has it been in monitoring?" - "Do you actively review DMARC reports?"
Cross-reference with:
- EMAIL-002 (SPF must pass for DMARC to work)
- EMAIL-003 (DKIM must pass for DMARC to work)
Pass criteria:
- DMARC record exists for root domain
- Subdomains have DMARC or inherit from root (check
sp=policy) - Policy is
p=quarantineorp=reject - Reporting address configured (
rua=mailto:...) - Reports are actually reviewed
Partial (acceptable):
p=noneduring initial rollout to monitor before enforcement - note duration and plan
Fail criteria:
- No DMARC record
- No reporting address configured (can't monitor failures)
p=nonefor extended period with no plan to enforce
Evidence to capture:
- DMARC records per domain/subdomain
- Policy levels (none/quarantine/reject)
- Subdomain policy (
sp=) if different from root - Reporting addresses
- Whether reports are reviewed (and by whom)
- Duration and plan if in monitoring mode