freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

一个Hancitor恶意邮件活动Word文档样本的分析
2018-12-26 09:00:33

*本文原创作者:cfg99,本文属FreeBuf原创奖励计划,未经许可禁止转载

一、基本情况

最近,基于word文档的电子邮件攻击愈发猛烈。邮箱收到一封电子邮件,包含如下的WORD附件。文档打开后,显示如下图。内容就是一幅图片,提示要查看具体的传真内容要求用户启动宏。不言而喻,这是一个带有宏的word文档。

图片.png

点击“启用内容”后,文档显示为空文档,并且一两秒内word就退出了。

重新打开该文档,发现显示的内容就是一个空文档,上面的传真图片也没有了。

图片.png

文档打开后,进程监控工具竟然没有发现有恶意进程执行。

Word文档前后的对比如下所所示。很明显,恶意文档打开后使用了一个干净的文档替换原来的文档内容,一是使恶意文档不重复进行感染,二是更好的隐蔽保护自身。

图片.png

与“分析一个用于传播Hancitor恶意软件的Word文档(第一部分)”【https://www.freebuf.com/articles/system/181023.html】一文中描述的现象很相似。该文是一篇翻译文章,原文来自“Post 0x16:Hancitor MalSpam – Stage 1”【https://0ffset.wordpress.com/2018/08/12/post-0x16-hancitor-stage-1/】,另外第二部分的深入分析可见“Post 0x16.2: Hancitor Stage 2”一文【https://0ffset.wordpress.com/2018/10/14/post-0x16-hancitor-stage-2/】

经过对宏文档和PE负载的分析,发现本次样本包含的宏代码与Hancitor文档宏代码有较大的变化,但是通过对内含主要PE负载文件的分析,发现二者基本一致,比如IDA反汇编后形式、代码加密执行、网络通信协议(比如都是访问诸如hxxp://xxx.xxx/4/forum.php)等,主要是C2域名不同,此外本次PE文件增加了UAC权限申请。因此,可基本判定本次恶意邮件攻击属于Hancitor恶意邮件攻击行动。

二、恶意宏分析

打开后,发现宏包含了两个窗体对象UserForm1和UserForm2,并且包含的内容都是“4d5a9000”开头的字符串,很明显这是两个PE文件。

图片.png

利用winhex在文档直接搜索“4d5a”字符串,可以发现在文档位置0x1d81c和0x5601c处包含了两个PE文件,如下图所示。

图片.png

1、Document_Open函数

利用“Document_Open”函数实现在文档打开的时候运行宏,函数的内容如下托所示。首先判断是否存在“%appdata”目录下是否存在 lnk目录,如果已经存在直接退出(已经感染过)。否则的话,通过调用HexToString函数分别释放UserForm1和UserForm2的内容至%appdata%目录下的werd.exe和wird.exe,最后调用finds函数。

图片.png

2、finds函数

finds函数的内容如下图所示。主要分为四部分的功能,一是在%appdata%目录下创建lkn子目录;二是调用kk函数把public用户桌面下的快捷方式文件移至当前用户桌面下;三是拷贝当前用户桌面下的所有快捷方式文件至“%appdata%/lnk”目录下,并调用MakeShortcut函数进行感染生成新的桌面快捷方式文件;四是利用干净文档替换恶意文档并退出。

图片.png

此时,我们可以在%appdata%下查看,发现确实多了一个lkn文件夹以及wird.exe和werd.exe两个PE文件,如下图所示。

图片.png

其中文件属性和图标如下图所示。

图片.png

我们可以看到,werd.exe竟然要求UAC提权,看来该恶意文件应该包含高权限操作。

3、kk函数

kk函数很简单,就是把public用户下的快捷方式移到当前用户桌面下。

图片.png

4、MakeShortcut函数

MakeShortcut函数具体内容如下图所示。主要是把当前用户桌面下的快捷方式文件进行感染操作,使得所有的快捷方式文件都指向到“%appdata%/wird.exe”,并由其负责解析执行。

图片.png

比如原来桌面的winhex快捷方式文件,前后的对比图如下图所示。我们可以看到,快捷方式的属性中,目标类型、目标和起始位置三项都发生了变化,其中目标由“C:\Program Files (x86)\WinHex\WinHex.exe”变化为“C:\Users\admin\AppData\Roaming\wird.exe "WinHex.exe""C:\Users\admin\AppData\Roaming\lkn\WinHex - 快捷方式.lnk"”。

图片.png

也就是说,当用户点击受感染的winhex快捷方式的时候,其实调用的进程是%appdata%/lkn/wird.exe,并且带有两个参数,分别是"WinHex.exe"以及"C:\Users\admin\AppData\Roaming\lkn\WinHex - 快捷方式.lnk"。

此外,会修改桌面上所有的快捷方式文件,比如桌面上的“iexplore快捷方式”前后对照如下图所示。相应的“iexplore快捷方式”原本指向的“C:\Program Files (x86)\Internet Explorer\iexplore.exe”被修改为“C:\Users\admin\AppData\Roaming\wird.exe "iexplore.exe""C:\Users\admin\AppData\Roaming\lkn\iexplore - 快捷方式.lnk"”。

图片.png

5、wird.exe

可选择任意一个桌面受感染快捷方式执行。试验中我们选择了双击winhex快捷方式,wird.exe开始运行。

首先,拷贝%AppData%\werd.exe文件到该目录下的winhex.exe然后执行。winhex.exe执行后,UAC弹窗提示WinHex.exe需要权限(其实是werd.exe),通过这种方式欺骗用户,让用户不经意之间就点击“是”从而允许UAC提权操作。

图片.png

随后,wird.exe会打开真正的winhex快捷方式运行系统上的真实的“winhex.exe”。

其次,wird.exe会恢复桌面所有快捷方式文件。wird.exe会用%appdata%/lkn目录下的快捷方式文件(干净的)恢复当前用户的桌面快捷方式。保证了只要运行一次“感染快捷方式”即可(当桌面有很多快捷方式,其实只要点击任意一个感染快捷方式,运行werd.exe文件后,wird.exe就完成了任务,会恢复桌面所有的干净快捷方式文件)。

最后,它会自删除。wird.exe通过调用“cmd.exe /c del C:\Users\admin\AppData\Roaming\wird.exe >> NUL”命令删除自身文件并退出,从而完成文件自删除操作。

因此,wird.exe程序非常简单,就是负责完成快捷方式的相关操作,启动werd.exe,恢复桌面,自删除。成功运行后,用户桌面将恢复原样。同时,%appdata%目录下只剩下winhex.exe(其实就是werd.exe,修改为第一次双击的感染桌面快捷方式对应的进程名,本次实验环境使用的是winhex,所以werd.exe改名为winhex.exe),以及一个空的lkn文件夹。

图片.png

5、werd.exe

Werd.exe运行后(本次环境改名为winhex.exe),连接的网络状态如下图。

图片.png

连接的C2服务器域名与端口为ninglarenlac.com:80,IP地址为191.101.20.16,连接成功后POST数据到服务器,访问的URL是:hxxp:/ ninglarenlac.com/4/forum.php。网络数据如下图所示。

图片.png发送的数据包括GUID、build、机器名、域名及用户名、外网IP地址、操作系统版本等,其中外网IP地址通过访问:http://api.ipify.org/获取。网络数据如下图所示。

图片.png

图片.png直接用浏览器访问域名ninglarenlac.com,返回字符串“ok”,如下图所示。

图片.png

此外,还包含了另外两个C2域名,分别是mylaledpar.ru和ratleaningres.ru。不过两个域名好像没有启动,无法解析。如下图所示。

图片.png

图片.png图片.png

三、结语

与以往宏病毒样本相比,本次恶意宏文档具备如下的几个特点:

1、没有网络下载动作。文档内直接包含恶意负载部分,没有利用类似powershell脚本下载恶意文件。

2、没有直接进程执行动作。不像以往恶意宏会直接执行恶意负载,作者利用感染用户桌面快捷方式的途径来达成进程启动目的。

3、会利用干净文档替换恶意文档,从而更具迷惑性。

IOCS:

Word文档:aab23055f489b5c1feca97a763ef808d

werd.exe:cea527236e09f569093fea67d8008e80

wird.exe:a792c67256870507a254e7cac1a1f145

C2 Servers:

hxxp:/ ninglarenlac.com/4/forum.php

hxxp://mylaledpar.ru/4/forum.php

hxxp://ratleaningres.ru/4/forum.php

*本文原创作者:cfg99,本文属FreeBuf原创奖励计划,未经许可禁止转载

# 恶意邮件 # word # Hancitor
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者