近日,腾讯御见威胁情报中心监测发现,借助U盘、移动硬盘传播的Bondat蠕虫病毒呈活跃趋势。该蠕虫构建的僵尸网络不仅通过浏览器执行JS挖矿木马,还会传播GandCrab3勒索病毒。
Bondat蠕虫最早出现在2013年,早期的Bondat蠕虫主要通过修改主页获利,在2018年3月份左右开始进行门罗币挖矿攻击,近段时间活跃的Bondat蠕虫不仅保留了主页修改、门罗币挖矿功能,还增加了传播勒索病毒的功能,危害等级逐步提高。
图1 Bondat蠕虫感染流程
图2 Bondat僵尸网络近期活动趋势
0×2 分析
1. 传播方式
Bondat蠕虫主要通过移动存储设备进行传播,通过枚举移动存储设备中的exe、doc、pdf等文件,然后创建这些文件名的同名快捷方式,并使快捷方式指向Bondat蠕虫启动器Drive.bat,当移动设备被另一台电脑打开时,病毒快捷方式很容易被执行导致蠕虫的扩散。
图3
2. JS分析
Bondat僵尸网络的主要功能都是通过一个JS完成,包括测试网络、检测杀软、隐藏文件、下载其他木马、感染等功能。感染成功后在AppData目录下创建随机名文件夹并释放exe和JS文件。
图4
EXE文件实际上是Wscript.exe被重名为随机名,用随机名的exe来启动JS脚本来躲避对Wscript.exe进程的监控。
图5
蠕虫主体JS经过强混淆,需要多步骤解密才能看到原来的代码。
图6
第一步:Ascii编码转换为对应的函数名
\x72\x65p\x6cace –>replace
ch\x61\x72\x43o\x64eAt –>charCodeAt
x74oS\x74r\x69\x6e\x67 –>toString
转换前:
图7
转换后:
图8
第二步:命令行字符运算
字符运算得到replace函数:
charCodeAt,toString,length--> "replace"
#p#分页标题#e#
图9
字符运算得到最终结果(包含replace运算)
图10
字符运算得到最终结果(不包含replace运算)
图11
第三步:循环进行第二步得到解密后的JS代码
图12
JS执行时先访问microsoft.com或google.com或bing.com测试网络是否畅通,然后检测wireshark等监控软件是否存在。
图13
访问C2:hxxp: urchintelemetry.com、hxxp: //bellsyscdn.com
图14
修改注册表设置自身的隐藏属性
图15
枚举文件并创建伪装的lnk启动
图16
启动浏览器后台连接hxxps://xmrmsft.com/hive.html进行挖矿,某些情况下(比如木马写死调用Edge,但感染的非Windows10系统并没有Edge浏览器),出现在如下错误信息。
图17
挖矿代码
图18
连接nrqmail.org下载GandCrab3勒索病毒
#p#分页标题#e#
图19
GandCrab3勒索病毒执行
图20
0×3 安全建议
1. 不随意使用不安全的移动存储设备,使用时先通过杀毒软件扫描。
2. 保持杀毒软件实时开启可拦截该病毒威胁。
0×4 IOCs
C2:
hxxp:// urchintelemetry.com
hxxp: //bellsyscdn.com
hxxp:// 95.153.31.22
hxxp: //95.153.31.18
md5:
0bf071ad3022216461e6f3bfc67abf83
2d8be21fac098d8dd2dcfa66078d3496
36e27a400f60a69c0b1f1590c3d0d9ff