声明:该公众号大部分文章来自作者日常学习笔记,未经授权,严禁转载,如需转载,联系洪椒公众号。请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。
0x00 前言
由于个人的安全意识水平存在差异,钓鱼邮件往往很容易成功让人中招。本篇主要介绍邮件钓鱼时绕过 SPF 伪造发信人信息。
0x01 SPF
1、什么是 SPF
SPF 发件人策略框架(Sender Policy Framework)电子邮件认证机制,主要作用是防止伪造邮件地址。
SPF记录的本质,是向收件人宣告:本域名的邮件从清单上所列IP发出的都是合法邮件。
当在DNS中定义了域名的SPF记录后,为了确认邮件声称发件人不是伪造的,邮件接收方首先检查邮件域名的SPF记录,来确定发件人的IP地址是否被包含在SPF记录中,若包含,则认为是一封正确的邮件,否则认为是一封伪造的邮件并退回,或将其标记为垃圾/仿冒邮件。
2、如何判断 SPF
dig -t txt qq.com //linux
nslookup -type=txt qq.com //windows
"v=spf1 -all" (拒绝所有,表示这个域名不会发出邮件)
"v=spf1 +all" (接受所有)
"v=spf1 ip4:192.168.0.1/16 -all"(只允许 192.168.0.1/16 范围内的IP发送邮件)
"v=spf1 mx -all"(允许当前域名的 mx 记录对应的IP地址发送邮件)
"v=spf1 mx mx:test.example.com -all"(允许当前域名和 test.example.com 的 mx 记录对应的IP地址发送邮件)
"v=spf1 a mx ip4:173.194.72.103 -all"(允许当前域名的 a 记录和 mx 记录和一个给定的IP地址发送邮件)
"v=spf1 include:example.com -all"(采用和 example.com 一样的SPF记录)
如果邮箱没有配置 SPF ,就可以直接伪造邮箱地址发送邮件。下图是没有配置SPF 的邮箱系统。
0x02 无 SPF 伪造
1、Swaks 使用说明
本篇使用 Swaks 工具进行邮件伪造,该工具在 kail 中已经集成,以下是该工具的一些参数介绍。
-t –to 目标地址 -t test@test.com
-f –from 来源地址 (发件人) -f "text"
–protocol 设定协议(未测试)
--body "http://www.baidu.com" //引号中的内容即为邮件正文
--header "Subject:hello" //邮件头信息,subject为邮件标题
-ehlo 伪造邮件ehlo头
--data ./Desktop/email.txt //将TXT文件作为邮件发送
2、临时邮箱
下面是测试需要用到的临时邮箱地址。
http://24mail.chacuo.net/
https://www.linshi-email.com/
3、伪造过程
1.检测
nslookup -type=txt iubridge.com
检测发现该地址没有配置 SPF。
2.伪造
swaks --header-X-Mailer "" --header-Message-Id "" --header-"Content-Type"="text/html" --from "QQ安全中心" --ehlo shabimeiguo -header "Subject: 测试" --body 这是一个测试 --to khyscqharm@iubridge.com
0x03 有 SPF 伪造
如果邮箱存在 SPF ,本篇会介绍4种绕过方法。
1、修改字眼
如果邮箱配置了 SPF,我们又不在其 SPF 配置的IP地址中,就无法直接伪造邮箱地址。但是我们依然可以通过修改字眼的方式来迷惑对方,如修改一些单词为数字,如字母 l 可以修改为数字 1 等等。
swaks --body "test" --header "Subject:testT" -t xxx@qq.com -f message@adobe.com.cn
将 message@adobe.com 伪造成 message@adobe.com.cn
2、邮件转发
所谓的邮件转发,就是我们注册一个开启了 POP3 服务的邮箱,使用该邮箱来转发我们的邮件。
注册一个邮箱开启 POP3 转发,需要保存好授权码,本篇使用的是 163 邮箱。
将要发送的邮件导出 EML 模版
修改内置的发件人内容时间等
使用 swaks 发送邮件。
swaks --to 收信人 -f 发信人 --data 1.eml --server smtp.163.com -p 25 -au 帐号 -ap 授权码
成功伪造了发件人,不过依然不是很隐蔽,因为下面显示了由什么邮箱地址转发。
3、第三方邮箱系统
因为使用自己的邮箱进行转发的话,很容易就暴露了我们的个人信息,所以推荐使用第三方平台进行邮件转发,这样代发显示就是第三方平台,避免了过多的暴露我们自己的信息。
下面是第三方邮箱系统的网址,本篇使用的是 SendCloud 平台。
https://www.smtp2go.com/ //smtp2go(速度慢但免费发送量大)
https://www.sendcloud.net/ //SendCloud(速度快但免费发送量少)
首先新增域名,将域名配置中的发信配置一个个添加到域名解析中去。
接着生成新的API_KEY ,这里需要保存好,后面发送邮件会用到。
最后测试发送,发信地址处输入我们要伪造的地址。
成功伪造发件人地址,后面代发地址显示的也是第三方转发平台。
4、Gophish 工具批量发送
在我们进行邮件钓鱼时,往往需要大批量的发送邮件,这时候一款支持批量发送邮件的工具就显得尤为重要,本篇主要介绍 Gophish 这一款工具。
项目地址
https://github.com/gophish/gophish
使用手册
https://docs.getgophish.com/user-guide/
本篇使用的 windows 版本,直接运行 exe 版本即可,服务会在本地 3333 端口开启。
1.首先配置发件接口,将我们开启了 POP3 服务的邮箱配置上去。
配置好了之后可以点下面的发送邮件进行测试。
2.然后配置发信模版,找一个要伪造的邮箱内容,将源码导入进入。
可以配置伪造的地址。
可以自行选择是否添加附件。
3.配置触发页面,配置这个是为了方便我们进行钓鱼,这个配置好后邮件里的地址都会指向我们配置的,比如我在这里配置为百度的地址。
4.配置收信人地址,这里是为了添加多个用户,从而可以实现批量发送。本篇测试使用只添加了一个用户。
5.所有配置完成后就可以发送邮件了。
成功伪造发件人信息。
邮件所有地址都指向百度。
0x05 后记
本篇主要介绍了绕过 SPF 从而伪造发件人信息。在发送钓鱼邮件时,如果安全意识比较薄弱的人,看到发信人显示的是高信誉的邮箱,往往很容易相信邮件的内容,进而点击邮件的网站或下载了附件,从而成功被攻击者钓鱼。借助此篇也希望能让大家对邮件钓鱼的技术多一些了解,多一些防范。
转载:https://mp.weixin.qq.com/s/W52bs3_Q9cK1fbAnUpMvZg
1.本站上传的源码,均为平台购买,作者提供,网友推荐,互联网平台整理而来,请下载后24小时内删除。如有需要,请购买正版.
2.请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。
3.站内资源若侵犯了您的合法权益,请指出本站立即改正。
4.上述内容仅供学习参考及技术交流之用,未经相关的知识产权权利人同意,用户不得进行商业使用。
5.保姆式服务,百分百售后!
评论(4)
有偿找大佬帮忙,合法,事后必重谢!
加我13627417135
酬谢:别人连接我家里WIFI,我想查看对方的手机内容。573243910@qq.com
诚心找作者:做PC免杀以上面图片的内容,高薪聘请+TG:aa330222