国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本

栏目: 编程工具 · 发布时间: 7年前

内容简介:本文中,Joe sandbox 在线沙盒分析网站对该文档的详细感染行为给出了很好的描述:

近日,法国安全研究者兼BotConf和FastIR公司创始人Sebastien Larinier, 针对RTF文档相关的CVE-2017–11882漏洞利用专门制作了一条YARA规则,来捕获攻击线索。 经过海量数据比对,他发现了一个用来执行APT攻击的恶意RTF文档样本,其中的内容和越南岘港市海洲郡的建设项目相关,文档标题为《Chương trình hoạt động cnit 2018》。据Sebastien Larinier声称,按照该恶意文档表现出来的各项行为指标和特征值,他怀疑该APT攻击文档的幕后使用者为中国的黑客组织1937CN。

本文中, Sebastien Larinier 着重描述了该恶意文档的感染攻击机制、网络攻击架构以及攻击者采用的相关TTPs技术。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 感染攻击链

Joe sandbox 在线沙盒分析网站对该文档的详细感染行为给出了很好的描述:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 该恶意RTF文档利用漏洞会向目标操作系统中写入以下两个文件:

一个名为 RasTls.dll 的dll文件

一个名为dascgosrky.exe的可执行文件

RTF文档分析

Python 的RTF分析工具rtfobj帮助下,可以发现恶意RTF文档中的三个ole对象:一个类名为package的ole对象,以及另两个不良结构的ole对象。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在名为package的ole对象中,存在一个8.t文件的加载路径:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 这种技术看似是用来执行 .sct 格式文件,以向网络下载一个可执行程序,植入到目标操作系统中。 McAfee安全实验室曾用 .sct文件为样本对这种技术进行过分析。 这种技术由于简单有效,并且支持Office相关文档,屡次被很多攻击者进行了在野利用。这以上路径中,可以看到,RTF文档会从系统%TMP% 目录中加载一个 8.t 文件。经分析,8.t 文件为一个加密文件:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 经检查,另两个不良结构的ole对象为涉及“Equation Native”流的ole公式对象,其中可以看到CVE-2017–11882漏洞利用的影子:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 ole对象末尾,能看到很多API接口的runPE技术调用,这样恶意程序会挂起一个系统进程,并在其中注入恶意执行代码。另外,还发现了对象开始处的有意思的字符串: 7e079a2524fa63a55fbcfe:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 该字符串曾在“响尾蛇”APT攻击的ole公式对象中出现过,可能攻击者都使用了同一套恶意程序组装工具。现在有了加载文件8.t ,以及runPE技术的确定。接下来,需要来做更深入的shellcode分析。

逆向ShellCode

在分析伊始, Sebastien 认为 Winword.exe 会调用 CreateProcess 函数来创建EQNEDT32.exe进程,所以他决定在CreateProcess 函数的调用处设置一个断点。

但是,后来发现,EQNEDT32.exe 进程是由Winword.exe利用COM Object对象调用的,并不是由 CreateProcess 函数来创建的,而且Winword.exe也不是EQNEDT32.exe的父进程。所以,只好在EQNEDT32.exe启动时附加上调试器。为此,可以采用 映像劫持(Image File Execution Options,IFEO)方法 来进行分析。

所谓的映像劫持(IFEO)就是Image File Execution Options,位于注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options 由于这个项主要是用来调试程序用的,对一般用户意义不大。默认是只有管理员和local system有权读写修改。通俗来说,就是比如我想运行a.exe,结果运行的却是b.exe,也就是说在这种情况下,a程序被b给劫持了,即你想运行的程序被另外一个程序代替了。

先在Image File Execution Options的注册表荐中创建了一个名为EQNEDT32.exe的键值:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 然后,为它设置一个EQNEDT32.exe执行是启动调试器的变量串值,以此把调试器附加到EQNEDT32.exe进程中去。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 当打开恶意RTF文档后,Winword.exe和EQNEDT32.exe两个进程同时启动。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在EQNEDT32.exe进程的入口点处,调试器被附加进入:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 现在,检查文件8.t是否在 %TMP% 目录中创建生成,果然8.t被drop到了 %TMP% 目录中:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 然后,在函数CreateFile处设置断点,查看漏洞利用的shellcode是否会读取文件8.t。在call eqnedt32.41E5EE处,函数CreateFile被调用。文件路径的参数在堆栈执行push dword ptr ss:[ebp-4]操作被压入堆栈,也即把内存ss:[ebp-4]处存放的双字压入堆栈。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 Shellcode使用函数CreateFile把文件8.t创建生成到%TMP% 目录下,现在,可以在调用函数处返回用户代码。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 深入分析之后,进入shellcode区域,其地址空间已经发生改变。以下即为漏洞利用代码的shellcode段:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在函数CreateFile调用之后, 函数GetFileSize被调用以获取文件大小:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 之后就是一个VirtualAlloc函数。VirtualAlloc是一个Windows API函数,该函数的功能是在调用进程的虚地址空间,预定或者提交一部分页,也可理解为申请内存空间。这里的VirtualAlloc函数在1FD0000 (eax value)处申请创建了一个内存页面,用它来加载文件8.t:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 VirtualAlloc函数之后,创建的内存页面由EAX操作指向:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 分配的内存页面:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 然后,用函数ReadFile去读取文件8.t:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 接着,文件8.t被读取加载到了分配的内存页面 1FD0000 处,以下为文件8.t在内存页面中的样式:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在0066C82A内存处,shellcode会对文件8.t进行编码解密,解密循环是围绕解密密钥进行的一系列异或(XOR)操作,解密开始,解密密钥被设置到了7BF48E63中。以下为解密循环:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 之后,执行异或(XOR)操作,解密密钥被设置到了EAX寄存器中:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 如果检查异或(XOR)操作的目的地ds:[edx+ebx],可以发现,在01FD0000处发生了文件8.t加载行为,两步执行解密之后,终于可以在内存区开头看到神奇的字符串“MZ”了,MZ为window的PE文件标志。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 解密循环结束之后,我们会在内存01FD0000处得到一个PE程序,到此,文件8.t被解密了:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 接下来,shellcode使用VirtualAlloc函数在02070000处创建了一个内存页面:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 之前,在内存01FD0000处解密得到的PE程序被拷贝到了这个地址处:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在EQNEDT32.exe运行过程中,shellcode调用GetModuleFileNameA函数来获取自身文件的完整路径。之后,shellcode将正常的EQNEDT32.exe进程进行分支,创建出另一个独立的EQNEDT32.exe进程,并把它执行挂起状态:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 然后在地址02070000处把该进程进行覆盖:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 以下为NTWriteVirtualMemory写入内存时涉及的堆栈:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 之后,shellcode会把挂起状态的进程重启,以此执行新注入的PE程序。所以,可以发现在OLE对象开头处存在所有的API调用,并且存在runPE方法来启动新注入的 EQNEDT32.exe 程序。

EQNEDT32.exe独立进程的分支创建分析

前面提过,被注入覆盖的新进程EQNEDT32.exe会在目标操作系统中写入以下两个文件:

一个名为 RasTls.dll 的dll文件

一个名为dascgosrky.exe的可执行文件

如果把EQNEDT32.exe进程剥离出来,把它放到IDA中分析,可以发现该进程在sub_00401150处释放文件的方法函数,把它命名为dropFiles。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在该方法开始,存在一个xor循环:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 之后,会调用压缩方法函数zlib:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在sub_4012D0处,文件释放函数dropFiles会被两次调用。

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 检查整个流程,可以发现,函数dropFiles只会被sub_4012D0进行调用,如下:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 由于EQNEDT32.exe每次的执行,都会由函数CreateFile的onstaticcache.dat文件启动,所以,在函数CreateFile处设置了一个断点:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 然后,回到用户代码中,在函数dropFiles初次被调用的0040159A处再设置一个断点,以便进行静态分析:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 这样,就能分析第二遍解密循环了,先要来初始化解密函数:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 接着,可以发现xor异或和把结果储存在esi+eax中操作:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 解密循环第一步中,结果被写入EQNEDT32.exe进程地址空间的411BC0:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 循环完成之后,可以得到zlib压缩对象的头信息:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在内存页面021E0000中,会被分配存储dll文件:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 同时,在其中一个PE进程dascgosrky.exe会被解压缩:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 之后,RasTls.dll文件由以下路径被创建,并被储存在ebx寄存器中:

L”C:\\Users\\IEUser\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\\RasTls.dll”

在此过程中,函数dropFiles被两次调用进行解密和PE文件的解压缩操作。EQNEDT32.exe进程的文件存储偏移位于00434EF8 ,而其PE解压缩程序dascgosrky.exe存储在025D0020处。如下图所示:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 之后,dascgosrky.exe释放到以下系统路径中,其基地址ebx为005DA228

L”C:\\Users\\IEUser\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\\dascgosrky.exe”

由此,可以在网络行为中监测到以下两个文件释放到操作系统中:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 dll劫持

表面来看,dascgosrky.exe程序是一个赛门铁克公司签发的合法可信文件:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 它为了加载RasTls.dll,会调用sub_401940处的 LoadLibrary 和 GetProcaddress 方法,来实现其恶意行为。以下为其加载的恶意行为:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 攻击者利用的网络架构

攻击者利用的域名为wouderfulu.impresstravel.ga,解析对应IP地址为192.99.181.14:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 在该IP地址中,存在多个越南语相关的对应域名,这些域名还和IP地址176.223.165.122有关联:

国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本 其中两个越语域名有点意思:

halong.dulichculao.com 曾在对越某些机构发起的网络攻击中用过, Fortinet曾对这类攻击做过详细分析 ,并把其追溯为中国的黑客组织-1937CN。

把这两次攻击的各项TTP指标进行对比,发现基本相似,攻击者都使用了RTF文档作为前期入侵,而用DLL劫持作为后期payload加载。

此次攻击中的另外一个域名cat.toonganuh.com,是toonganuh.com的子域名,也曾被发现和中国黑客组织-1937CN注册过的邮箱florence1972@scryptmail.com有关联。

总结

基于以上发现,Sebastien Larinier推断,中国黑客组织 1937CN 以同样的TTPs手法和更新过的 工具 组件,针对越南政府部门开展着持续的网络攻击。 Sebastien 认为, 1937CN 创建RTF恶意文档的特性和“响尾蛇”APT组织相似。Sebastien Larinier声称将会在后续的分析中给出更多证据。

IOC

域名:

dn.dulichbiendao.org
gateway.vietbaotinmoi.com
web.thoitietvietnam.org
hn.dulichbiendao.org
halong.dulichculao.com
cat.toonganuh.com
new.sggpnews.com
dulichculao.com
coco.sodexoa.com.
thoitiet.malware-sinkhole.net
wouderfulu.impresstravel.ga
toonganuh.com
coco.sodexoa.com

IP地址:

192.99.181.14
176.223.165.122

RTFs:

42162c495e835cdf28670661a53d47d12255d9c791c1c5653673b25fb587ffed

8.t:

2c60d4312e4416745e56048ee35e694a79e1bc77e7e4d0b5811e64c84a72d2d7

PE:

f9ebf6aeb3f0fb0c29bd8f3d652476cd1fe8bd9a0c11cb15c43de33bbce0bf68 (exe)
9f5da7524817736cd85d87dae93fdbe478385baac1c0aa3102b6ad50d7e5e368 (dll)

Update:

The payload is PlugX. Thanks to Gabor Szappanos https://twitter.com/GaborSzappanos/status/1024622354582908928

Update IOCs:

597c0c6f397eefb06155abdf5aa9a7476c977c44ef8bd9575b01359e96273486 59.rtf
11f38b6a69978dad95c9b1479db9a8729ca57329855998bd41befc364657d654 RasTls.dll
f9ebf6aeb3f0fb0c29bd8f3d652476cd1fe8bd9a0c11cb15c43de33bbce0bf68 RasTls.exe
b70069e1c8e829bfd7090ba3dfbf0e256fc7dfcefc6acafb3b53abcf2caa2253 b7.rtf
77361b1ca09d6857d68cea052a0bb857e03d776d3e1943897315a80a19f20fc2 spoolsver.exe
9fba998ab2c1b7fec39da9817b27768ba7892c0613c4be7c525989161981d2e2 vsodscpl.dll
9d239ddd4c925d14e00b5a95827e9191bfda7d59858f141f6f5dcc52329838f0 9d.rtf
087d8bee1db61273a7cd533d52b63265d3a8a8b897526d7849c48bcdba4b22ec RasTls.dll
f9ebf6aeb3f0fb0c29bd8f3d652476cd1fe8bd9a0c11cb15c43de33bbce0bf68 RasTls.exe
332aa26d719a20f3a26b2b00a9ca5d2e090b33f5070b057f4950d4f088201ab9 rtf
93aa353320a8e27923880401a4a0f3760374b4d17dcd709d351e612d589b969d vsodscpl.dll
77361b1ca09d6857d68cea052a0bb857e03d776d3e1943897315a80a19f20fc2 ScnCfg.exe

*参考来源: medium ,clouds 编译,转载请注明来自 FreeBuf.COM


以上所述就是小编给大家介绍的《国外安全研究者爆料中国黑客组织针对越南政府的APT攻击样本》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Design for Hackers

Design for Hackers

David Kadavy / Wiley / 2011-10-18 / USD 39.99

Discover the techniques behind beautiful design?by deconstructing designs to understand them The term ?hacker? has been redefined to consist of anyone who has an insatiable curiosity as to how thin......一起来看看 《Design for Hackers》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试