我的GitHub
0%

无星的渗透之旅速成篇(八)-邮件钓鱼

背景

几天了,毫无进展

钓鱼试一下把

邮件钓鱼好像很有意思

SPF

首先我们需要了解SPF

SPF的全称是Sender Policy Framework,即发件人策略框架

说简单一点,SMTP框架设置的很简略,允许任何人声明他是谁并给你发邮件,但是其实并不能保证他真的是谁

那么就要打补丁了

补丁就是SPF

SPF其实就是一条DNS记录

比如腾讯的SPF声明它的邮件服务器ip段是a.a.a.1-a.a.a.254

比如你通过自己的邮箱服务器,声明自己是腾讯,并发送邮件,你的ip是b.b.b.1

那么收件方的收件服务器就会去解析你的SPF记录,是否是腾讯的服务器发送的邮件

如果不是,那么很明显,你是伪造的了

SPF校验

那如果腾讯没有声明他的SPF呢?

是的盲生,你发现了华点,如果对方没有声明,那么收件服务器就会认为他SPF校验通过了

上面说了,大部分的大公司,都会声明自己的SPF

但是很多小公司就不一定了

我们可以通过下面两个命令,看是否有声明

1
2
3
4
5
6
7
# windows
win: nslookup -type=txt qq.com
nslookup -q=txt qq.com

linux: dig qq.com txt

mac: dig qq.com txt

Swaks

kali内置

让我们来试试

参数

1
2
3
4
5
--from  test@qq.com     //发件人邮箱;
--ehlo qq.com //伪造邮件ehlo头,即是发件人邮箱的域名。提供身份认证
--body "http://www.baidu.com" //引号中的内容即为邮件正文;
--header "Subject:hello" //邮件头信息,subject为邮件标题
--data ./Desktop/email.txt //将正常源邮件的内容保存成TXT文件,再作为正常邮件发送;

基本语法

1
swaks --body "内容" --header "Subject:标题" -t xxxxx@qq.com -f "admin@qq.com"  --server 你的邮件服务器地址 -p 25 -au <USER> -ap <PASS>

SPF绕过

由于邮件显示的是Header中的From不是smtp.from,因此可以将smtp.from设置为正常的邮件服务器地址,伪造一个Mail.From(发件人)即可。

1
swaks --to xxx@gmail.com --from @kevin.com(你的邮件地址) --h-From: '管理员<admin@qq.com>' --ehlo gmail.com --body hello --server 邮件服务器地址 -p 25 -au 账号 -ap 密码

如果我想去除Mailer特征,就可以这么做:

1
swaks --header-X-Mailer gmail.com --to xxx@gmail.com --from xxx@kevin.com(你的邮件地址) --h-From: '管理员<admin@qq.com>' --ehlo gmail.com --body hello --server 邮件服务器地址 -p 25 -au 账号 -ap 密码

gophish

https://github.com/gophish/gophish

我是阿星,阿星的阿,阿星的星!