【笔记】Swaks学习笔记

前言

通过swaks发送电子邮件
如果受害者使用的邮件服务提供商没有设置SPF,则可以直接发送伪造的电子邮件

下载依赖

MacOS

1
brew install swaks

查询受害者使用的邮件服务提供商是否设置SPF

<domain>:受害者使用的邮件服务提供商域名

1
nslookup -type=TXT <domain>
  • 如果受害者使用的邮件服务提供商没有设置SPF,则可以进行邮件伪造
  • 如果受害者使用的邮件服务提供商设置了SPF,但是可以符合SPF定义的要求,也可以进行邮件伪造

直接发送邮件

  • 如果对方没有设置SPF,则直接可以使用伪造的发件人

-f "管理员<admin@example.com>"--from "管理员<admin@example.com>":发件人,如果没有指定,则发件人与收件人相同,用于测试
-t "admin@bb.com"--to "admin@bb.com":收件人

1
swaks -f "管理员<admin@example.com>" -t "admin@example.com" -header "Subject: 标题" --body "文本内容"

伪造发件人邮箱中的部分字母

  • 通过障眼法伪造发件人邮箱中的部分字母

admin@aa.com.cn:加了额外的后缀
admin@aa.c0m:改了字母为数字
admin@aα.com:改为了希腊字母

1
swaks -f "管理员<admin@aa.com.cn>" -t "admin@example.com" -header "Subject: 标题" --body "文本内容"

指定模板文件发送邮件

--data <file>.eml:指定模板文件

1
swaks -f "管理员<admin@example.com>" -t "admin@example.com" --data <file>.eml

指定代发邮件服务器

--server <domain_smtp>:SMTP服务器域名
-p <port_smtp>:SMTP服务器端口,如果没有指定,则默认为25端口
-au <username>:SMTP服务器登录用户名
-ap <password>:SMTP服务器登录密码

1
swaks -f "管理员<admin@example.com>" -t "admin@example.com" --server <domain_smtp> -p <port_smtp> -au <username> -ap <password> --data <file>.eml

完成