邮件伪造实践
2020-01-18 21:59:27 Author: mp.weixin.qq.com(查看原文) 阅读量:107 收藏

0x00前言

在进行红队模拟攻击的过程中我们往往需要对某些目标进行水坑攻击或者钓鱼,针对个人目标或集团发起攻击,往往需要批量地发送邮件去欺骗目标获取到目标权限,普通的不明邮件很难取得目标的信任还会引起目标的警觉。所以我们需要进行邮件伪造取得目标的信任。成为增加攻击的机率。伪造也是APT攻击中常用手段之一。所以在进行模拟攻击的同时也可以发现企业自身的安全问题,加强企业对自身安全的建设和改进。

0x01基本协议

1).POP3:

POP3即“Post Office Protocol - Version 3”,其作用是客户端连接服务器下载服务器中所有未阅读的邮件。

2).IMAP:

IMAP即“Internet Mail Access Protocol”,它不同于POP3,POP3协议并不会将客户端对邮件进行的操作同步至服务器。当使用IMAP协议与邮件服务器交互的时候,你在客户端对邮件进行的操作都会同步到服务器上,所以IMAP也叫做交互式邮件存取协议。

3).SMTP

SMTP协议即“Simple Mail Transfer Protocol”简单邮件传输协议。它是用于从源地址到目标地址传输邮件的规范。通过该协议来控制邮件的中转。而我们常用的邮件供应商所提供的邮件服务,基本都是采用的SMTP协议进行传输。
SMTP协议同时也要求了客户端连接服务器需要进行认证(如果允许匿名登录那就另当别论了)。但是它也仅仅只要求了客户端需要与服务端进行认证。而SMTP服务器之间传输邮件的过程是不需要进行认证的。这也就是邮件伪造的关键点所在。

4).SPF

SPF即“Sender Policy Framework”是一种以IP地址认证电子邮件发件人身份的技术。接收邮件方会首先检查域名的SPF记录,来确定发件人的IP地址是否被包含在SPF记录里面,如果在,就认为是一封正确的邮件,否则会认为是一封伪造的邮件进行退回。
SPF可以防止别人伪造你来发邮件,是一个反伪造性邮件的解决方案。当你定义了你域名的SPF记录之后, 接收邮件方会根据你的SPF记录来确定连接过来的IP地址是否被包含在SPF记录里面,如果在,则认为是一封正确的邮件,否则则认为是一封伪造的邮件。

0x02伪造

Swaks是由John Jetmore编写和维护的一种功能强大,灵活,可脚本化,面向事务的SMTP测试工具。可向任意目标发送任意内容的邮件,详细使用方法请百度。Kail Linux预装这款工具,所以我将使用Kail Linux演示。

首先,我们知道,腾讯邮箱是做了SPF策略的。当我们使用Swaks去伪造管理员用户的时候,是无法伪造成功的。如下,550错误

使用清风大佬的方法去绕过。修改“发件人别名”在其中填充大量的特殊字符,从而使邮箱客户端截取实际发件人失败,导致实际显示效果为我们伪造的邮箱及发件人。

Payload

管理员 <admin@qq.com>                                                                                                                            ···                         ···

使用Google的Gmail测试失败,初步怀疑原因是在设置Payload的时候被过滤了空格导致显示出了邮箱。

但在手机上看的时候已经非常逼真了。

END x0rz4


文章来源: https://mp.weixin.qq.com/s/YEQypEgpd6eUmKOi6cQwVg
如有侵权请联系:admin#unsafe.sh