33

基于Tor网络的钓鱼邮件分析

 5 years ago
source link: http://www.freebuf.com/articles/system/175721.html?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

一、背景

五月十一日,我们的蜜罐系统捕获到来自[email protected]邮箱的钓鱼邮件。其中uscourtsgov就已经是一个很唬人的服务器名称了。邮件伪装美国法院的传票,并会要求受害者打开邮件的附件(一个加密的word文档)了解详细的信息。

rimu2mB.jpg!web

这个钓鱼邮件很有意思,作者对文档进行加密,可以有效的防止各个邮件服务器的拦截,并且会给受害者营造一个神秘的氛围,让人忍不住就想打开瞧一瞧。我们输入文档密码,word提示我们是否启用宏。

uYNVjue.jpg!web

当我们启用宏后,会看到一个提示信息。大体的意思是,“本文档无法打开,请更换一台计算机试试“。看到这里读者们是不是很奇怪,我们明明打开了文档,为什么还会出现类似兼容性的提示呢?其实这个提示信息应该是宏产生,作者的目的是想让受害者在多个计算机中打开这个文档。作者的小心思可见一斑啊。

fUjy6nV.jpg!web

点击确定后显示给我们的是word的文本内容,文档模仿成一个微软的信息提示。内容的大体意思是提示受害者这个文档要在pc上使用MS打开,并且要允许宏运行。作者这么做的目的是为了防止此文档在web或其他应用中打开,导致宏无法运行

我们可以看出此钓鱼邮件是经过精心设计的,既然花了这么大的心思,作者对于后续的攻击也肯定是付出了很大的努力。这次钓鱼邮件的分析也将是一场有趣的旅程。

二、攻击流程

我们在执行完word文档后,发现系统出现了一些可疑的网络行为,所以在进行详细分析之前,我们先总体上对钓鱼邮件的攻击流程进行跟踪,从宏观上掌握此次事件的整体流程,随后再对具体的步骤进行详细的分析。大体的分析出了以下的攻击步骤:

1.  受害者接收钓鱼邮件,打开邮件附件的word文档,并执行宏脚本。

2.  宏脚本下载执行一个名为background的恶意文件,并弹出系统不兼容的提示框。

3.  background下载一个名为taskwgr.exe的自解压文件,解压生成两个文件install.sql和svchost.exe。4.  taskwgr.exe执行svchost.exe。svchost.exe文件将install.sql解密,执行。

5.  install.sql会连接tor网络,然后加密受害者计算机的文件,弹出勒索信息。

攻击流程图:

fYrimaj.jpg!web

三、word宏分析

如果允许宏运行,很遗憾,受害者的计算机很有可能会受到后续的一系列攻击。

那么宏到底做了什么?就让我们一起来研究一下。我们先将word文档密码去掉,另存为一个新的文档。

JremEzQ.jpg!web

我们查看宏的内容,此时会发现文档中宏及VB工程都是空的。

NVfAZ3a.jpg!web

aUF7Vfz.jpg!web

好吧,看来我们没那么容易获取到宏代码。攻击者还算是想的比较周密,将代码隐藏了起来。

在word中启用文档宏,点击确定时,按住SHIFT,阻止宏自动执行。再次打开VB编辑器,现在文档中的VB工程出现了,打开时会发现工程被加了密码。

ZJF7Z3Z.jpg!web

MbQFbmn.jpg!web

不过VB工程的密码可以通过破坏工程文件加密结构的方法将其破坏,我们还是可以获取到代码的。首先将文档另存为docm格式,因为新版office文件是zip格式。

zMjuEvB.jpg!web

然后再将保存出来的docm扩展名修改为zip,解压。

eIzaQ3V.jpg!web

在解压出来的目录中,可以找到word/vbaProject.bin,该文件就是word文档的VB工程文件。

raaMFvF.jpg!web

用16进制编辑器打开,找到“CMG=”和“DPB=”,这里就是VB文档的加密结构,因为word的处理机制问题,只需要将DPB改为DPx即可使密码失效。

NZnmIrJ.jpg!web

找到“DPB=”字符串,直接将DPB改为DPx,这样密码就失效了。

vEzM3qi.jpg!web

73qIfyU.jpg!web

将之前解压出来的目录重新打包成zip格式的docm文件

Zn6J7bB.jpg!web

现在打开保存出来的docm文件,启用宏,word会提示DPx无效,点击“是”的时候需要按住shift阻止代码自动执行。

7r6fUbR.jpg!web

U3QzQjE.jpg!web

再次打开VB编辑器,就可以看到文档的VB宏内容了。

I3qimiV.jpg!web

我们成功获取到了宏代码,这段VB的实际操作为比较简单,具体行为如下:

1从 http://185.189.58.xxx/ ~filehost/ background.png下载一个PE文件

2、将文件保存为$TEMP$/svchost.exe

3、执行该文件

4、弹出消息框,大致意思为:“系统不支持该加密文档,请尝试在其他机器上打开”

5、关闭word文档

四、 background 行为分析

word宏的目的是下载一个PE文件,那么我们接下来需要对该PE文件进行分析。我们针对样本关键的内容进行讨论,为了叙述方便,我们下文都将样本称之为background。

1.background是由NSIS制作的安装程序。background会获取临时路径,这将是background接下来的工作路径。

VRzaYbb.jpg!web

2.在临时目录创建一个文件夹,用于存放释放的文件。

jIVb2mM.jpg!web3.接下来background会释放出一个用于加密解密的动态链接库wpoke.dll。

3u6ZJre.jpg!web4.background加载wpoke.dll,使用其中导出的DecryptSymmetric函数进行数据解密。

vIVRfyM.jpg!web

解密两段加密数据,其中第一段为访问下载的URL。

rmMrE3r.jpg!web

第二段为文件名称svchost.exe 。

QbMjeuJ.jpg!web5.接下来释放用于下载的INetC.dll。其中释放代码与wpoke.dll代码相同。然后加载INetC.dll,调用其中的get函数进行下载。

zMzaMne.jpg!web

6. 将下载文件保存为用户的ApplicationData目录下taskwgr.exe,启动taskwgr.exe

Yvm2im6.jpg!web

ERJJVb6.jpg!web

至此我们已经清楚background的主要行为了。background是个下载器,主要目的是下载taskwgr.exe文件,并运行。

五、taskwgr.exe行为分析

分析taskwgr.exe可以发现taskwgr.exe并不是一个PE文件,而是个加密的winrar自解压文件。我们通过捕获background的CreateProcess可以截取到taskwgr.exe的解压密码。

AJjUVrV.jpg!web

yAFRJru.jpg!web

使用密码解压taskwgr.exe文件,释放出install.sql和svchost.exe。从扩展名上看install.sql是个数据文件。我们先分析svchost.exe,会发现svchost.exe加壳了,脱壳后的主要代码如下图。

JBFF3qm.jpg!web

svchost.exe读取install.sql文件(解密后实际上是一个新的PE可执行文件),创建一个自身的子进程,将解密后PE内容直接写入子进程的进程中,达到执行并隐藏该行为的目的

R7juYv6.jpg!web

六、install.sql行为分析

解密的install.sql是一个勒索病毒,主要流程为:

1.检测系统信息,获取了系统版本、用户名、机器名,访问 http://ip-api.com/json 获取本地 IP信息

ZJZjm2j.jpg!web

2.下载Tor

https://archive.torproject.org/tor-package-archive/torbrowser/7.0/tor-win32-0.3.0.7.zip

下载了tor,保存在

AppData\Roaming\Microsoft\B284A9B11BD4B45CDAF4B8CF39A4B97B\System.zip

fIRRB3R.jpg!web

3.当下载完成后,解压,并将tor.exe重命名为svchost.exe,然后执行。(tor原本被以隐藏方式执行,手动将其改为正常显示)

可以发现作者在程序中设置了tor代理,之后将通过tor发送网络请求

vaiEJfN.jpg!web

4.然后样本根据系统信息,补上了连接的参数部分,连接自己的服务器

http://lzt4y6qj7azyldq2.onion/control.php?uid=B284A9B11BD4B45CDAF4B8CF39A4B97B&uname=Fate&os=Windows7&pcname=WIN-UBAA1MQALH9&total=8970&country=China&network=yes&subid=1595.

U3IBR3j.jpg!web

yARVFr3.jpg!web

在加密完系统中的文件后,会放出勒索信息,同时向服务端发送相应的信息

r2YV733.jpg!web

勒索信息

vyya6vN.jpg!web

uyyIVra.jpg!web

26Nfqmb.jpg!webIbiiQbQ.jpg!webnYbeYvm.jpg!webaMJZbae.jpg!web

七、后续和总结

我们将此次涉及到的恶意ip在我们自有的恶意情报平台进行查询。搜集到一些关于此次钓鱼邮件事件的信息:

相关病毒文件

URLs

Date scanned    Detections URL

2018-05-14 5/67 http://185.189.58.xxx/ ~filehost/scan_05_05_2018.doc?VGZbmiGdjdbrXrDCozJxbSTL

2018-05-14 5/67 http://185.189.58.xxx/ ~filehost/scan_05_05_2018.doc?ckeRwnnATifPUAVXIKGUg

2018-05-14 3/67 http://185.189.58.xxx/ ~filehost/1/scan_05_07_2018.doc?UwtmZfooHBtFn

2018-05-13 4/67 http://185.189.58.xxx/ ~filehost/message.gif?iLbhFrEfVgEtV

2018-05-12 12/68 http://185.189.58.xxx/ ~filehost/background.png 

从相关病毒文件可以看出来,样本最初出现的时间在五月份初。攻击者通过伪造法院的传票,发送钓鱼邮件来传播勒索病毒。邮件通常是发给目标的企业员工,攻击其文件加密,从而进行勒索。虽说勒索病毒需要连接到tor网络,国内的小伙伴并不需要过分担心。但还是要提醒各位读者,不要随便点击来路不明的邮件附件,请使及时对计算机中的重要资料进行备份,防止不必要的损失。

我们会对此次事件进行持续追踪和关注。

* 本文作者:水滴安全实验室,转载请注明来自FreeBuf.COM


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK