Skip to main content
Version: 3.0.0-preview

CIS.M365.2.1.8 - (L1) Ensure that SPF records are published for all Exchange Domains

Overview​

Every custom domain that is accepted by Exchange Online publishes an SPF record that ends in a hard fail (-all) or soft fail (~all).

SPF lists the servers that may send mail for a domain. Receiving servers use it to reject, or to mark as suspicious, mail that pretends to come from your domain. Without an SPF record, or with one that ends in a neutral or permissive qualifier, anyone can send mail that looks like it comes from you without raising a flag.

The test follows a redirect modifier only when the record has no all mechanism, since receivers ignore the redirect in that case. Domains in the onmicrosoft.com namespace are skipped. Parked domains that never send mail should publish a record of "v=spf1 -all".

Remediation action​

  1. Open the DNS zone of each custom domain at your DNS host.
  2. Create or edit the TXT record at the domain root so that it lists your sending services and ends with -all (or ~all). For Exchange Online only, use v=spf1 include:spf.protection.outlook.com -all.
  3. Wait for the change to propagate and check the record with Resolve-DnsName -Name <domain> -Type TXT.

Test Metadata​

FieldValue
Test IDCIS.M365.2.1.8
SeverityMedium
SuiteCIS
ProductDefender
FeatureEmail authentication
AreaEmail and collaboration protection
Resource typeDomain
User impactLow
Implementation costMedium
MITRE ATT&CKT1566 Phishing, T1684.002 Email Spoofing
Supports benchmarkCIS Microsoft 365 Foundations Benchmark (version 7.0.0), requirement 2.1.8
Benchmark levelL1
Benchmark profilesE3 Level 1
Supports controlscis-m365:2.1.8, nist-800-53-r5:SI-8
PowerShell testTest-MtCisSpfRecordsPublished
ServicesExchangeOnline

Source​