伪造邮件
-
邮件服务商之间转发邮件是不需要认证的,也就是说MTA(Mail Transfer Agent, 通过SMTP协议发送、转发邮件)到MTA之间转发邮件是不需要认证的,这是SMTP协议本身定义的。所以协议钓鱼邮件就可以伪称来自某某MTA发送钓鱼邮件。
-
互联网上有一些邮件域名没有配置SPF(Sender Policy Framework,发信人策略框架)记录或者SPF记录值设置不当,就会被用作伪造邮件的mail_from 后缀域名。
-
SMTP协议本身不需要身份认证.我们平常用的MUA(Mail User Agent,接收邮件所使用的邮件客户端,使用IMAP或POP3协议与服务器通信),比如foxmail等,发送邮件需要谁是邮件服务商人为要求的,不是SMTP协议本身要求的。
-
mail_from 和from 的区别
mail_from: 是信封上的发件人,由[前缀@域名]组成,是实际发件人
from: 信封内容里的发件人。 也就是我们平时收到邮件所看到的发件人,称为:显示发件人
如果mail_from (实际发件人) 和 from (显示发件人) 不一致,则收到的邮件会显示 本邮件由<实际发件人>代发, 以提醒收件人两者的不同。实际发件人>
有的ESP(邮件服务商)并不会要求mail_from 和from完全一致,而只是要求两者的域名相同(比如QQ 邮箱 和Gmail邮箱)。
-
reply-to: 信件回复的收件人, 用户直接回复邮件时,reply-to就是默认收件人。 如果用户不指定它, from就是默认收件人.
-
mail_to 和 to的区别
mail_to 是实际收件人(信封上的收件人), 而 to 是显示收件人(即信封内容中的收件人), to 也是可以伪造的(to 支持别名显示,别名也是可以伪造的),类似于from.
现如今的钓鱼邮件都是通过注册相似的邮箱,或者设置邮箱的显示名称,盼着被害人有看走眼的那一刻,轻信邮件的内容。这种方法需要一定的社工技巧,以及诱导性的语言来诱使被害人上钩。但是对于有一定的经验以及眼力的人来说,还是可以识破骗子的伎俩。
swaks是由John Jetmore编写和维护的一种功能强大,灵活,可脚本化,面向事务的SMTP测试工具。可向任意目标发送任意内容的邮件。“swaks”这个名字是”SWiss Army Knife Smtp”的首字母缩略词.
swaks可以最大程度的欺骗你的邮箱,更不要提你的眼睛。当然,此方法不是适用于任何邮箱,毕竟每种邮箱的过滤机制都不相同。
swaks
安装
kali自带swaks工具,其他发行版可以自行安装,在我的manjaro中安装很简单, yaourt swaks即可搞定。
基本用法
基本方法:swaks –to <要测试的邮箱> 用来测试邮箱的连通性,或直接输入swaks会提示输入to的目标邮箱:要测试的邮箱>
$swaks
To: xxxxx@qq.com
=== Trying xxxxx.qq.com:25...
=== Connected to xxxxx.qq.com.
<- 220 bizmx23.qq.com MX QQ Mail Server
-> EHLO localhost.localdomain
<- 250-bizmx23.qq.com
<- 250-SIZE 73400320
<- 250-STARTTLS
<- 250 OK
-> MAIL FROM:<x@localhost.localdomain>
<- 250 Ok
-> RCPT TO:<xxxxx@qq.com>
<- 250 Ok
-> DATA
<- 354 End data with <CR><LF>.<CR><LF>
-> Date: Tue, 20 Nov 2018 14:32:44 +0800
-> To: xxxxx@qq.com
-> From: x@localhost.localdomain
-> Subject: test Tue, 20 Nov 2018 14:32:44 +0800
-> Message-Id: <20181120143244.008303@localhost.localdomain>
-> X-Mailer: swaks v20181104.0 jetmore.org/john/code/swaks/
->
-> This is a test mailing
->
->
-> .
<- 250 Ok: queued as
-> QUIT
<- 221 Bye
=== Connection closed with remote host.
然后登陆邮箱,没有问题的话即可成功收到测试邮件。
选项
使用命令swaks –help可以查看详细的帮助说明。比较常用的选项如下:
-t –to 目标地址 -t xxx@xxx.com
-f –from 来源地址 (发件人) -f “xxxxxx@xxx.com”
-h –helo 邮件头
–timeout 设置超时,单位是秒,默认30s
–protocol 设定协议
-d –data 设定邮件内容,\n换行,一些常用内容如下:
To:收件人\n
From:发件人\n
Subject:主题\n
Date:日期\n
Subject:标题\n
–body 邮件内容,如果参数为-,则可以手动输入内容,直到按Ctrl+D结束输入后自动发送;或者使用swaks –body - <文件名> 将文件内容输入为邮件内容.文件名>
–attach 包含附件
-ah –add-header 添加邮件头内容
–header 邮件头内容 –header “Subject:主题” 可设定邮件主题
-stl –show-time-lapse显示每个操作的时间间隔
-ha –hide-all 隐藏所有输出
-S –silent 自定义输出,参数如下:
1,直到发生错误才输出;
2,只输出错误;
3,不输出.
–help 显示命令帮助
–verison 显示版本信息
输出内容的含义:
“===”:swaks输出的信息行
“*“:swaks中产生的错误
” ->”:发送到目标的预期行(无错误)
“<- “:服务器的预期回复(无错误)
“<**”:服务器返回的错误信息
使用示例
swaks --body "test message 1" --header "Subject:test subject" -t xxxxx@xx.com -f "fffff@fff.com"
版权声明:本文为博主原创文章,转载请注明出处。 旭日酒馆