1.邮件伪造

SMTP协议中,允许发件人伪造绝大多数的发件人特征信息。
这就导致了可以伪造别人发送邮件。

2.验证方式

nslookup -type=txt 域名
如下则存在邮件伪造漏洞
image.png
如下,则不存在
image.png

3.payload验证

  1. swaks --body "test" --header "Subject:test标题" -t 目标邮箱 -f "伪造的邮箱【发件人】"
  • —body:内容
  • —header:标题
  • -t:我们的邮箱
  • -f:伪造的邮箱

swaks --body "test" --header "Subject:test标题" -t jltdwssywz1@163.com -f "admin@nanhuafinancial.co.uk"
image.png
到目标邮箱中查看是否发送成功
image.png
成功接收到伪造的邮件
4.防御手段
为了防止邮箱伪造,就出现了SPF。
SPF(或是Sender ID)是Sender Policy Framework的缩写。
当你定义了你域名的SPF记录后,接收邮件方会根据你的SPF记录来判断连接过来的IP地址是否被包含在SPF记录里面,如果在,则认为是一封正确的邮件,否则则认为是一封伪造的邮件。现在绝大部份反垃圾邮件系统都支持SPF过滤,这种过滤一般不会有误判,除非是邮件系统管理员自己把SPF记录配置错误或遗漏.
至于domain key则是由Yahoo所提出的。必需配合软件和加密技术,比较麻烦。目前使用的也不多。 Google目前所谓的支援domainkey也只是在寄信的时候加入,免得被yahoo退信,本身并没有要求寄件者要有domainkey。