关于邮件伪造
电子邮件欺骗(email spoofing)的根本原因是SMTP协议是不需要身份验证的,攻击者可以利用这个特性伪造电子邮件头,从任意电子邮件地址发送任何人,导致信息看起来来源于某个人或某个地方,而实际却不是真实的源地址
为了防止这种钓鱼邮件的伪造,就出现了SPF。
当你定义了你域名的SPF记录后,接收邮件方会根据你的SPF记录来判断连接过来的IP地址是否被包含在SPF记录里面,如果在,则认为是一封正确的邮件,否则则认为是一封伪造的邮件。现在绝大部份反垃圾邮件系统都支持SPF过滤,这种过滤一般不会有误判,除非是邮件系统管理员自己把SPF记录配置错误,也就是人为的漏洞。
这里查看域名163.com配置的SPF
伪造163.com,尝试向…qq.com发送伪造邮件
由于SPF的配置,阻止了我们发送伪造的邮件
但是,不是说配置了SPF就达到了绝对安全,由于人为的不正当配置,导致了安全问题的发生
第1种情况:邮件服务器不支持SPF检查或者说不支持SPF解析,即使配置了SPF,也都无效,攻击者仍然可以进行伪造邮件发送给受害者。
第2种情况:SPF解析在了公网DNS,而邮件的服务器配置在了内部DNS,这会导致内部DNS无法进行SPF解析,从而可以从公网上任意伪造邮件发送给受害者。
第3种情况:SPF配置在了内网的IP段,内网SMTP服务器开启匿名邮件并信任IP段,只要黑客在内网下,就可以执行伪造邮件。
这张图是以域名为evil.com不正当配置的SPF
以evil.com发送伪造邮件给…qq.com
我们已经成功发送了出去
可以看到QQ邮箱已成功接收到了该伪造邮件