我正在评估我的网站上的漏洞报告:
我刚刚检查了 XXXXXX 域的 DMARC 记录和 DMARC 策略,没有。
有效地允许垃圾邮件来自该域。
但是我们的域名已经使用 SPF。如果已经使用 SPF,DMARC 是否还能提供额外的安全性?
答案1
DMARC 会告知接收邮件服务器在收到看似来自贵组织的邮件但未通过身份验证检查或不符合 DMARC 策略记录中的身份验证要求时应采取什么措施。未经身份验证的邮件可能冒充贵组织,或可能由未经授权的服务器发送。
DMARC 始终与以下两种电子邮件身份验证方法或检查一起使用:
发件人策略框架 (SPF) 允许域所有者授权允许为域发送电子邮件的 IP 地址。接收服务器可以验证看似来自特定域的邮件是否由域所有者允许的服务器发送。
域名密钥识别邮件 (DKIM) 为每封已发送的邮件添加数字签名。接收服务器使用签名来验证邮件是否真实,以及在传输过程中是否被伪造或更改。
SPF 有一个已知弱点。应用 SPF 策略的邮件服务器会检查 RFC5321.Mailfrom 标头(通常称为“来自标头的信封”),而电子邮件客户端通常将 RFC5322.Mailfrom 标头(通常称为“来自标头的消息/信件”)显示给用户作为电子邮件的来源。
对手意识到了这个弱点,并利用它来绕过 SPF 检查,方法是使用他们在信封标题中控制的域,以及在消息/信件标题中使用他们想要欺骗(但不控制)的域。
DMARC 通过检查这两个标头是否对齐来解决这个弱点。
DMARC 使域所有者能够向收件人邮件服务器建议在处理声称来自所有者域的入站电子邮件时应做出的策略决策。具体来说,域所有者可以要求收件人:
- 允许、隔离或拒绝未通过 SPF 和 DKIM 验证的电子邮件
- 收集统计数据并通知域名所有者有关虚假声称来自其域名的电子邮件
- 通知域名所有者有多少封电子邮件通过和未通过电子邮件身份验证检查
- 发送从失败的电子邮件中提取的域所有者数据,例如来自电子邮件正文的标头信息和网址。
DMARC 产生的通知和统计数据将作为汇总报告和取证报告发送:
- 汇总报告定期提供有关电子邮件的高级信息,例如它们来自哪个 Internet 协议 (IP) 地址以及它们是否未通过 SPF 和 DKIM 验证
- 取证报告实时发送,提供有关特定电子邮件验证失败原因的详细信息,以及电子邮件标题、附件和电子邮件正文中的网址等内容。
答案2
SPF 不知道标识符对齐。在 DMARC 之前,更多的接收者会遵守 SPF HARDFAIL (-ALL)。现在很少有人遵守 Hardfail,而且没有一个主要的 MBP 会遵守它。
自从 DMARC 出现以来,DKIM 就不再是一个策略层。您必须拥有 dmarc 才能获得报告和合理的策略层,该策略层考虑到 spf 情况下 5322.From 与 5321.from 的对齐。以及与 DKIM 中的 d= 域的对齐。spf 和 dkim 都不知道对齐。因此,spf 和 dkim 只能传递而不考虑对齐,并且都不能提供报告。由于我可以使用自己的域传递 spf,并使用 dkim 签名我伪造您域的电子邮件,因此 spf 和 dkim 最有用的作用是向 dmarc 提供传递和对齐数据,然后 dmarc 可以报告,以便您可以制定使用 dmarc 实施的良好策略决策,从 p=none 开始,直到 p=reject。