由于个人的安全意识水平存在差异,钓鱼邮件往往很容易成功让人中招。本篇主要介绍邮件钓鱼时绕过 SPF 伪造发信人信息。
SPF 发件人策略框架(Sender Policy framework)电子邮件认证机制,主要作用是防止伪造邮件地址。
SPF记录的本质,是向收件人宣告:本域名的邮件从清单上所列IP发出的都是合法邮件。
当在DNS中定义了域名的SPF记录后,为了确认邮件声称发件人不是伪造的,邮件接收方首先检查邮件域名的SPF记录,来确定发件人的IP地址是否被包含在SPF记录中,若包含,则认为是一封正确的邮件,否则认为是一封伪造的邮件并退回,或将其标记为垃圾/仿冒邮件。
dig -t txt qq.com //linux
nslookup -type=txt qq.com //windows
如果邮箱没有配置 SPF ,就可以直接伪造邮箱地址发送邮件。下图是没有配置SPF 的邮箱系统。
本篇使用 Swaks 工具进行邮件伪造,该工具在 kail 中已经集成,以下是该工具的一些参数介绍。
下面是测试需要用到的临时邮箱地址。
1.检测
检测发现该地址没有配置 SPF。
2.伪造
如果邮箱存在 SPF ,本篇会介绍4种绕过方法。
如果邮箱配置了 SPF,我们又不在其 SPF 配置的IP地址中,就无法直接伪造邮箱地址。但是我们依然可以通过修改字眼的方式来迷惑对方,如修改一些单词为数字,如字母 l 可以修改为数字 1 等等。
将 message@adobe.com 伪造成 message@adobe.com.cn
所谓的邮件转发,就是我们注册一个开启了 POP3 服务的邮箱,使用该邮箱来转发我们的邮件。
注册一个邮箱开启 POP3 转发,需要保存好授权码,本篇使用的是 163 邮箱。
将要发送的邮件导出 EML 模版
修改内置的发件人内容时间等
使用 swaks 发送邮件。
成功伪造了发件人,不过依然不是很隐蔽,因为下面显示了由什么邮箱地址转发。
因为使用自己的邮箱进行转发的话,很容易就暴露了我们的个人信息,所以推荐使用第三方平台进行邮件转发,这样代发显示就是第三方平台,避免了过多的暴露我们自己的信息。
下面是第三方邮箱系统的网址,本篇使用的是 SendCloud 平台。
首先新增域名,将域名配置中的发信配置一个个添加到域名解析中去。
接着生成新的API_KEY ,这里需要保存好,后面发送邮件会用到。
最后测试发送,发信地址处输入我们要伪造的地址。
成功伪造发件人地址,后面代发地址显示的也是第三方转发平台。
在我们进行邮件钓鱼时,往往需要大批量的发送邮件,这时候一款支持批量发送邮件的工具就显得尤为重要,本篇主要介绍 Gophish 这一款工具。
项目地址
使用手册
本篇使用的 windows 版本,直接运行 exe 版本即可,服务会在本地 3333 端口开启。
1.首先配置发件接口,将我们开启了 POP3 服务的邮箱配置上去。
配置好了之后可以点下面的发送邮件进行测试。
2.然后配置发信模版,找一个要伪造的邮箱内容,将源码导入进入。
可以配置伪造的地址。
可以自行选择是否添加附件。
3.配置触发页面,配置这个是为了方便我们进行钓鱼,这个配置好后邮件里的地址都会指向我们配置的,比如我在这里配置为百度的地址。
4.配置收信人地址,这里是为了添加多个用户,从而可以实现批量发送。本篇测试使用只添加了一个用户。
5.所有配置完成后就可以发送邮件了。
成功伪造发件人信息。
邮件所有地址都指向百度。