电子邮件安全机制
协议介绍
钓鱼邮件的伪造及发送中可能会简单的涉及几个协议,其中 POP3,IMAP,SMTP 为邮件基础协议,故此处不再介绍,只将下文中有所涉及的电子邮件安全的三种主要机制:SPF、DKIM、DMARC 协议做为简单介绍
- 发件人策略框架(SPF)
- 域名密钥识别邮件(DKIM)
- 基于域的消息验证、报告和一致性(DMARC)
SPF 协议
SPF 是 Sender Policy Framework 的缩写,一种以 IP 地址认证电子邮件发件人身份的技术。
接收邮件方会首先检查域名的 SPF 记录,来确定发件人的 IP 地址是否被包含在 SPF 记录里面,如果在,就认为是一封正确的邮件,否则会认为是一封伪造的邮件进行退回
简单来说主要作用是防止伪造邮件地址。
而邮件伪造也是 SPF 配置不当所致,若 SPF 配置未正确配置,那么任何人都可以像邮件服务器自定义内容发送邮件。
检查是否开启 SPF
要想查看一个域名是否配置了 SPF,可以用 nslookup 或者 dig 查看:
如已开启 SPF,则为下图所示:
nslookup -type=txt qq.com

dig +short txt qq.com

也可以通过在线网站测试 https://emkei.cz/

DKIM 协议
DKIM,电子邮件验证标准——域名密钥识别邮件标准。
DKIM 的英文全称是:DomainKeys Identified Mail,是由 IETF 开发而成。DKIM 是一种非常重要的协议标准。是为了解决最为严重的电子邮件欺诈问题和邮件被拒收、进入垃圾箱等问题而制定的一种标准。从某种意义上来讲,DKIM 是一种身份安全通行证。

支持 DKIM 的邮箱发送的邮件都会生成一对公钥和私钥,私钥由发送者保存,公钥存放在 From 字段指定域名的 txt 记录中。邮件发送时,用私钥加密邮件头的某些字段,并附上邮件内容的 hash 值,让用户收到邮件时,查找此原来的公钥,对加密的内容进行解密。
DMARC 协议
DMARC 表示“基于域的消息验证、报告和一致性”,是一种邮件身份验证协议,是一种基于现有的 SPF 和 DKIM 协议的可扩展电子邮件认证协议,还会添加一个报告功能,让发送人和接收人可以改善和监测域,防止收到欺骗性邮件。

其核心思想是邮件的发送方通过特定方式(DNS)公开表明自己会用到的发件服务器(SPF)、并对发出的邮件内容进行签名 (DKIM),而邮件的接收方则检查收到的邮件是否来自发送方授权过的服务器并核对签名是否有效。
简而言之,DMARC 协议的主要目的是识别并拦截钓鱼邮件,使钓鱼邮件不再进入用户邮箱中(收件箱 or 垃圾箱),减少邮箱用户打开/阅读到钓鱼邮件的可能性,从而保护用户的帐号密码等个人信息安全