作者:知道创宇404实验室APT高级威胁情报团队,K &Nan
1. 概述
Patchwork是自2015年12月以来一直活跃的南亚APT组织。该组织长期针对中国、巴基斯坦等南亚地区国家的政府、医疗、科研等领域进行网络攻击窃密活动。PatchWorkAPT是一个比较有意思的名字,源于该组织武器库是基于开源的代码拼凑而成(地下论坛、暗网、github等等)。知道创宇404实验室APT高级威胁情报团队长期对该组织的活动进行追踪。
近日,知道创宇404实验室APT高级威胁情报团队在追踪过程中发现该组织在近期针对国内的攻击活动应用了跟以往不同的攻击工具。
1.Patchinfecter木马,该木马遍历机器上最近打开的文档,并注入恶意代码,如果受害者将文档共享给其他人,那么该受控机器的其他联系人也会成为新的受控者。跟常见的钓鱼文档不同,此种感染白文件的方式,完全可以造成一个身份受信任的人不通过邮件方式将恶意文件传给其他人的情况,那么会极大的提高恶意文档的点开率。根据其特性,知道创宇404实验室APT高级威胁情报团队将其命名为Patchinfecter木马。
2.Infectedloader,该文件为Patchinfecter木马生成的恶意文档,利用CVE-2021-40444漏洞进行后续木马传播,CVE-2021-40444为微软MHTML远程命令执行漏洞,攻击者可通过传播Microsoft Office文档,诱导目标点击文档从而在目标机器上执行任意代码,在受控机器上植入后续木马。此次为公开报道中首次发现有南亚APT组织使用该漏洞进行攻击。
2. 技术分析
攻击流程如下:
关于Patchinfecter木马
Patchinfecter为本次攻击感染链当中一步操作,其功能在执行时通过遍历C:\Users\xxxx\AppData\Roaming\Microsoft\Windows\Recent\目录下的快捷方式文件,搜索文件名包含.docx的快捷方式。
通过COM接口IPersistFile::GetPath来获取快捷方式文件对应的docx文件路径,将文件拷贝至%Temp%\DCX_tmp\目录下,然后将文件解zip包,向其中的document.xml.rels配置文件中注入远程模板链接hxxp://xxx.xxx.xxx.xxx/jiansurvey/formupdate8976.php,然后将文档重新打包并替换原始文件。
formupdate8976.php页面内置一段JS脚本,脚本内容为CVE-2021-40444漏洞利用代码,用于加载执行二阶程序http://xxx.xxx.xxx.xxx/jiansurvey/cajview393434logo.cab。
关于cajview393434logo.cab
cajview393434logo.cab为上述CVE-2021-40444漏洞利用的二阶样本,cab文件内的logoinmg.inf为一个下载器从http://xxx.xxx.xxx.xxx/srvreport/cajxml下载三阶样本。
关于Cajxml(GRAT2)
该文件数据经过Base64加密,经过解密分析最终的三阶样本为开源远控GRAT2.
样本会强制使用HTTPS(TLS1.2),当C&C为Http时则会退出。样本运行首先随机生成一个长度为12字节的ClientID,ClientID生成方式为从A-Z0-9范围随机选取12个字母或数字,生成ClientID后尝试将ClientID发送到初始URL "https://xxx.xxx.xxx.xxx/jquery.js" Post,数据加密方式为XOR(KEY: "o")+Base64。
向服务端初始化完客户端ID后,客户端尝试从服务端获取下发指令,从特定URL路径获取指令在本例中为:
{"index.aspx","question","contactus","aboutus.aspx"}
获取指令完整请求为:
https://C&C/PATH?encode(ClientID)
程序主入口:
根据服务端下发的指令完成对应功能,指令列表如下:
命令 | 功能 |
---|---|
no3ko5p | 获取当前屏幕截图 |
dworden | 文件下载 |
yuwpkli2o | 文件上传 |
detgc3wrd9r | 设置当前工作目录的路径 |
twmdsce | 设置睡眠时间 |
dwsesst | 客户端退出 |
s7wehrr52ll | 执行Shell命令 |
gqer313dcdr | 获取当前工作绝对路径 |
gierlstwf32 | 获取文件夹下文件信心 |
dqoirelst23 | 获取当前进程ID |
3. IOC
d41a9a2c1c7aa3d0added2d00e5359f5c6b0ffb9dd977c40c89b469f70334130--Patchinfecter
2460ba1be9189210023ad8b0d42120bde22daf439c022a6f5d0cd54ccef2c5ec -- JS脚本文件
739fd36d15c1f22a4be251714b220d708e620c144b7ba43ad1e2ac1915b4d727 -- EnBase64 RAT
010df75e045b1be5f2a579a534b3f85248f0f3d57cc2e961a48e629351c7ee4a -- RAT
5c48fb21f8de55517c3e3b7a4b198c3a7bffc8412ed877785b60039823f9f4f7 -- CAB文件
本文由 Seebug Paper 发布,如需转载请注明来源。本文地址:https://paper.seebug.org/1943/