响尾蛇(SideWinder)APT组织针对驻华大使馆的攻击披露

响尾蛇(SideWinder)APT组织针对驻华大使馆的攻击披露

背景概述

响尾蛇(SideWinder)APT攻击组织是由国外厂商卡巴斯基是在2018年披露,该APT组织主要针对巴基斯坦等南亚国家

安恒威胁情报中心猎影实验室监测发现响尾蛇(SideWinder)APT组织在2019年6左右对我国敏感单位进行的鱼叉式钓鱼邮件攻击,涉及到的部门包括:驻华大使、敏感单位。

诱饵分析

我们捕获了多个诱饵文件,它们利用同一个漏洞CVE-2017-11882进行鱼叉攻击。之前披露的响尾蛇(SideWinder)APT攻击组织针对巴基斯坦进行攻击时,shellcoe采取远程下载hta文件的方式进行。

针对国内的这次攻击,攻击者对shelcode进行了改进,去掉了联网下载hta文件这个过程,采取释放内嵌完整恶意代码的js文件到tmp,再执行js脚本的方式将后门释放到系统。

相关诱饵文件的打开截图如下:

  • 针对保利科技有限驻外代表处的攻击样本截图。文档修改是2019年6月13日

  • 针对驻华大使馆的攻击,文档时间修改是2019年7月13日

1.png

在章节“样本分析”里面,我们提取了攻击者的攻击工具,发现内存不落地的加载模块构建时间是2019年5月19日,说明攻击者在2019年5月准备着实施攻击。

样本分析

  • Shellcode分析

打开“保利科技有限公司的保密手册”的诱饵文件,漏洞成功利用后执行ROP指令,在调用GlobalLock指令到跳转关键shellcode代码:

通过异或0x16解密出一小段js脚本命令

接着shellcode通过加载mshtml模块后,调用RunHTMLApplication执行这段js代码

该js主要的作用是通过eavl函数执行文件”1.a”,而”1.a”是内嵌在rtf中的文件,在temp目录能发现该文件。

  • 释放脚本”1.a”分析

分析脚本文件”1.a”,看见有几个很明显的base64加密的字符串,

直接使用base64算法解密字符串so,可以发现数据可能是被序列化存储的。

当然,直接分析js脚本,就能发现代码通过反序列化进行解密操作,反序列化以后再使用反射方式加载C#文件(即so字符串解密后的文件)

在脚本最后,是调用了该C#文件的Work方法

  • 内存dump的StInstaller.exe分析

StInstaller.dll文件是有so字符串解密而来,该文件在运行过程中从未落地,手动dump出该文件。

该文件的实际名字叫做“StInstaller.dll”,文件编译时间是2019/5/19 10:30:57

根据脚本的调用关系,脚本“1.a”中的x、y两个字符串作为参数传递给Work函数,

其中字符串x被存储为PROPSYS.dll

为了实现自启动,它会将系统目录的write.exe拷贝到某个解密路径(该样本路径:C:\ProgramData\AuthyFiles),并写了“Software\\Microsoft\\Windows\\CurrentVersion\\Run”注册表来实现自启动。

程序的释放路径和回连地址采用特定的解密密钥“qh10408dkm2”进行异或算法解密,编写python解密程序进行验证:

在C:\ProgramData\AuthyFiles可以发现四个文件,其释放方式如下表统计

文件名 释放方式
PROPSYS.dll 由字符串x解密而
write.exe 系统拷贝
write.exe.config 自身释放
yQgXsuY.tmp 该文件名随机。它是由字符串Y解密后进行回连地址矫正,接着又被随机32位字符串xor加密。

备注:字符串x、y采用base64解密后在gzip解压的方式可以提取。

其中Y解密后数据被修改,修改前的消息如下。其实,主要是修改通讯的url地址。

需要注意,由于样本的不同释放的路径也会不一样。如某样本的释放路径:

  • PROPSYS.dll分析

该文件的编译时间是2019/7/22 9:10:15

在其他的样本中能发现更早的编译时间是:2019/6/5 10:07:59

该文件是由write.exe文件加载,这里使用了“白加黑”的DLL劫持技术,在write.exe运行时会调用PROPSYS.dll。

这个黑文件PROPSYS.dll为一个.net程序,功能为解密yQgXsuY.tmp文件。

解密算法为简单,使用文件头部32字节作为解密key,对tmp文件进行异或

解密后得到一个SystemApp的.net程序,该程序即为最终的核心功能程序。

  • 核心SystemApp.dll分析

该样本由会PROPSYS.dll的Plugin类的Start函数调用

样本首先会从资源段解密出两个PE文件Ionic.Zip.dll 和Newtonsoft_Json.dll,两个都是正常文件。其中Ionic.Zip.dll是处理zip压缩的程序,Newtonsoft_Json.dll是一套使用json数据格式的框架。

在Start函数中,它创建2个定时回调函数,每隔5秒进行一次。

9.png

回调函数GetTimerCallback进行指令接受,可实现木马更新等操作。

10.png

回调函数PostTimerCallback函数进行窃密信息上传窃密操作

11.png

数据的回传时,使用构造自定义的http请求头进行文件上传,如下图所示:

12.png

数据采取Gzip压缩传输,如下图所示:

一开始上传的信息包括:信息收集文件(sif后缀)、被选中上传的文件(fls后缀)、文件目录文件(flc后缀)

数据的收集包括:系统信息、电脑网络谢谢、杀软信息、补丁信息、软件信息、文件目录目录、磁盘信息等都是在Sysinfo类中实现,并存储在%appdata%\AuthyDat目录的随机命令的{随机字符串}.sif中

打开 “{随机字符串}.sif”其是一个json格式,其字段信息如下图,相关字段就是涉及收集的信息:

文件“{随机字符串}.flc”是文件、目录列表信息,为了方便黑客数据采集。

文件“{随机字符串}.fls”也是一个json,其存储的是所有默认被选择待上传的文件路径信息、是否已经上传、上传进度等字段信息:

被选择的文件来自资源“Default”里面,通过解密后得到特定的后缀来设置过滤条件。

其需要被收集的后缀名文件有:doc、docx、xls、xlsx、pdf、ppt、pptx

资源“Default”存储不少重要信息,比如配置文件加密写入路径(%appdata%\\VersionDat)、配置信息在注册表的写入路径等。

该样本默认回连地址是:

hxxps://trans-can[.]net/ini/Wsx8Gb5ZtTzzbdquHHtVI2sO9OQpOPRU4jOINehp/31878/1346/cab43a7f,但通过修改资源“Default”,可以实现回连地址的变更。

综上分析,该模块是核心窃密模块,如发现有访问:hxxps://trans-can[.]net/ 的情况,请务必引起重视。

攻击关联分析

  • 回连地址关联

针对回连地址是https:// trans-can[.]net的样本进行检索,发现另外几个样本。其中一个样本是针对巴基斯坦政府部门进行攻击,其样本所使用的诱饵截图如下,文件修改时间2018年12月20日

通过检索该图片,怀疑该图片原始来源是巴基斯坦雇主联合会(EFP)官网

该样本的的shellcode使用方式略有不同,其采取远程下hta文件解密木马的实现,

地址如下:

  • hxxps://ministry-interior-gov-pk.cdn-dl[.]cn/cgi/edce243895/17285/93/1e147bf1/file.hta

分析file.hta, 发现它会直接访问hxxps://trans-can[.]net

很显然攻击者同时控制着hxxps://trans-can[.]net和hxxps://ministry-interior-gov-pk.cdn-dl[.]cn,并且该hta文件与之前提到的“1.a”代码相识度非常高,只是1.a在代码上做改进。

该hta文件解密会内存解密出一个叫做“PreBotHta”的C#文件

该文件的函数与同样未落地的“StInstaller.dll”文件部分代码类似

而且“PreBotHta.dll”文件被腾讯安全团队分报道过。

  • 回连域名相识

在友商一篇关于“响尾蛇APT组织针对巴基斯坦”的报告,提到到一些回连域名:

  • hxxp://cdn-in[.]net
  • hxxp://cdn-list[.]net

还有另外友商团队披露的分析报告中提到的域名:

  • hxxp://cdn-edge[.]net
  • hxxp://cdn-load[.]net
  • hxxp://cdn-apn[.]net
  • hxxps:// srv-cdn[.]com

这些域名与hxxps://cdn-dl[.]cn非常相似。

攻击者为了伪装,喜欢使用的域名包含“CDN”字符串,大部分情况格式都是hxxp://cdn-xxx.xxx的方式。

另外,其回连的url路径喜欢用一串看不出意义的字符串,作为某种特定标示。

trans-can[.]net和hxxps://cdn-dl[.]cn域名的回连地址里面也有一串看似无意义的字符串。

综上所述,由于攻击者同时控制着hxxps://trans-can[.]net和hxxps://cdn-dl[.]cn,且hxxps://cdn-dl[.]cn域名与历史域名的格式非常相似,负载hta文件也存在相似性,加载模块部分代码存在迭代更新,所以可以确定这次攻击就是来自响尾蛇APT组织

IOC相关:

相关回连域名:

  • cdn-dl[.]cn
  • trans-can[.]net