RATDispenser+STRRAT

RATDispenser + STRRAT 样本分析

样本信息

RATDispenser用于在启动辅助恶意软件以建立对受感染设备的控制之前在系统上获得初始立足点。调查发现RATDispenser主要用作投放器(在 94% 的分析样本中),这意味着恶意软件不会通过网络通信来传递恶意负载。恶意软件家族的多样性(其中许多可以从地下市场免费购买或下载),以及恶意软件运营商放弃其有效载荷的偏好,表明RATDispenser的作者可能在恶意软件即服务的商业模式下运营。

本次分析的RATDispenser样本释放的是STRRAT恶意载荷,STRRAT是一种基于JavaRAT,它广泛使用插件来为攻击者提供完全的远程访问,以及凭据窃取、密钥记录和其他插件。RAT的重点是通过键盘记录窃取浏览器和电子邮件客户端的凭据以及密码。

ioc

类别 特征值
MD5 57f40bda9c26cac45157ae7502cceecd
SHA1 6af4aa184cb1eb93feb2f3c75cd482fab518c316
SHA256 026b19fdc75b76cd696be8a3447a5d23a944a7f99000e7fae1fa3f6148913ff3
C2 147.182.174.188 [str-master.pw]

样本分析

样本释放

该样本采用的是外挂js形式,打开js代码可以看到一些混淆和解密函数:

为了便于阅读,首先美化一下代码:

从其中提取出核心代码,可以看到最终解密出来的内容如下:

二次释放

按照执行流程将进行一次base64解码然后用eval加载到内存中,解码后美化得出如下数据:

首先会新建一个脚本文件用于关闭Windows Defender

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Windows Defender]
"DisableAntiSpyware"=dword:00000001

然后解密释放本地文件到%temp%%appdata%

STRRAT 分析

最终获取到随机命名的jar文件:

反混淆

其中大量引用了StringBuilder()符合STRRAT特征,由于字符串经过了混淆,接下来使用java-deobfuscator进行反混淆。

首先新建一个detect.yml来设定检测路径:

input: xskush.jar
detect: true

然后使用命令:java -jar deobfuscator.jar --config detect.yml ,检测混淆方式:

从上面可以得出混淆方式为:com.javadeobfuscator.deobfuscator.transformers.allatori.StringEncryptionTransformer

新建一个config.yml,指定输出文件名及混淆方式:

input: xskush.jar
output: xskush_output.jar
transformers:
  - com.javadeobfuscator.deobfuscator.transformers.allatori.StringEncryptionTransformer

执行命令:java -jar deobfuscator.jar --config config.yml,生成去混淆后的文件:

分析

main函数中,会检测部分jar文件是否存在:

寻找上下文发现其下载链接如下:

https://repo1.maven.org/maven2/net/java/dev/jna/jna/5.5.0/jna-5.5.0.jar
https://repo1.maven.org/maven2/net/java/dev/jna/jna-platform/5.5.0/jna-platform-5.5.0.jar
https://repo1.maven.org/maven2/org/xerial/sqlite-jdbc/3.14.2.1/sqlite-jdbc-3.14.2.1.jar
https://github.com/kristian/system-hook/releases/download/3.5/system-hook-3.5.jar

向下发现C2节点配置代码,由于arrayOfString1为空,最终的C2http://str-master.pw/strigoi/server/ping.php?lid=***

观察其它类,发现了一些命令执行代码:

获取进程和启动文件列表,窃取缓存密码等等操作:

还配备了按键记录:

操作注册表功能:

获取空闲时间:

参考资料

https://threatresearch.ext.hp.com/javascript-malware-dispensing-rats-into-the-wild/
https://www.jaiminton.com/reverse-engineering/strrat#
https://app.any.run/tasks/0c4909de-827d-4164-9ee8-0cbffe97aef5/