Check ID:
Provider: Cloudflare
Service:
Severity: MEDIUM
Categories:
Resource type:
zone_record_dmarc_existsProvider: Cloudflare
Service:
zoneSeverity: MEDIUM
Categories:
email-securityResource type:
ZoneWhat this check verifies
Cloudflare zones are assessed for DMARC (Domain-based Message Authentication, Reporting, and Conformance) records by checking if a TXT record exists at_dmarc subdomain with an enforcement policy (p=reject or p=quarantine) to actively block or quarantine spoofed emails.
Risk
Without DMARC or withp=none, there is no active protection against email spoofing. Attackers can spoof emails for phishing campaigns to steal credentials. Domain reputation is damaged by spoofed emails. The p=none policy only generates reports but does not block or quarantine spoofed emails.
Recommendation
Implement DMARC with an enforcement policy (p=reject or p=quarantine).
p=reject: receiving servers should reject emails that fail authenticationp=quarantine: receiving servers should send suspicious emails to spam folderp=none: only monitoring, provides no protection (will fail this check)- Ensure SPF and DKIM are properly configured before enabling enforcement
- Configure
ruato receive aggregate reports on authentication results - Use
pctparameter to gradually roll out enforcement (e.g.,pct=10for 10% of emails)
Remediation
- Terraform
- Dashboard steps
References
Where this check fires
This check runs on every scheduled scan against your Cloudflare account. Findings appear at Cloud Security → Findings filterable byCheck ID = zone_record_dmarc_exists. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to Cloudflare checks