查看: 2923|回复: 15
收起左侧

[讨论] StilachiRAT后门静默植入防火墙规则,封锁杀软通信无声窃密

[复制链接]
火绒工程师
发表于 2025-6-30 16:36:50 | 显示全部楼层 |阅读模式
本帖最后由 火绒工程师 于 2025-6-30 14:15 编辑


近期,火绒安全实验室收到有关用户电脑网络出现异常的反馈,溯源发现,此异常由 StilachiRAT 后门病毒引发。该病毒通过破坏安全软件的 TCP 连接与添加防火墙过滤规则的方式限制网络通信。此病毒具备利用动态解密获取字符串和函数地址来迟缓逆向分析效率的能力,还会利用 WMI 服务获取系统信息等手段检测虚拟机。其攻击行为包括窃取剪切板、文件或窗口中的密码、虚拟货币钱包地址、存于 Chrome 浏览器中的登录秘钥等数据,还可通过后门实现截屏和执行任意程序等操作。目前,火绒安全产品可对上述窃密木马进行拦截查杀,建议广大用户及时更新病毒库以提高防御能力。
查杀图

一、样本分析
样本执行流程图如下:
流程图

该样本的主要目的为窃取受害者敏感信息,如密码、私钥、键盘记录等重要数据。其在运行过程中会收集大量系统信息,并在代码层面通过动态解密和获取函数与字符串的方式对抗逆向分析,最终植入后门实现远程操控。
调用恶意模块入口点:该样本的服务主程序为 alcloud.exe ,该程序会调用 WWStartupCtrl64.dll 动态库中的 IsElevated 导出函数。此导出函数为恶意模块入口点。
调用恶意模块入口点

完成初始化后,样本启动注入流程。注入过程中,通过检测互斥体防止重复注入。互斥体值由 HashData 函数计算生成,是基于该进程程序路径以及特殊值0x19069(0x401 * 0x64 + 5)计算出的哈希值。
随后,样本将获取 DcomLaunch 服务进程的 Token ,并复制该 Token 创建傀儡进程 dllhost.exe,从而伪造父进程。接着,样本通过 ZwMapViewOfSection 将自身映射至目标进程,借助 SetThreadContext 修改寄存器 rcx,从而修改 RtlUserThreadStart 的参数,实现恶意代码的执行。
此外,样本还存在在其他情况下随机选择创建 explorer.exe、svchost.exe、ctfmon.exe 进程进行注入的情况。
伪造父进程创建傀儡进程并注入

对抗技术
该样本会利用混淆函数名、动态解密字符串、动态获取函数地址等方法拖慢逆向人员分析速度,并减少静态特征。同时,它还会通过破坏 TCP 连接和添加防火墙过滤规则的方式限制安全软件的网络通信。
获取系统信息与检测虚拟机:样本通过 COM 接口访问 Windows 的 WMI 服务以及各种系统函数获取系统信息,并从中选择网卡名等信息判断是否存在 Vmware 或 Virtual 字符串,从而检测虚拟机。
获取系统信息与检测虚拟机

混淆函数名:该恶意模块存在名字各异的 1479 个导出函数,其中所有的名称与函数逻辑几乎都不一致。其目的在于混淆干扰逆向人员的分析。
服务主函数与混淆函数名
动态解密字符串
动态获取函数地址

破坏并禁止安全软件的网络通信:样本先利用 SetTcpEntry 函数将状态设置为 MIB_TCP_STATE_DELETE_TCB(删除传输控制块)。随后,利用 FwpmFilterAdd0 函数添加限制网络通信的防火墙规则 FWP_ACTION_BLOCK,从而限制安全软件(如 360、火绒、金山等)的网络通信。
删除传输控制块
添加防火墙规则

通过 netsh wfp show filters 命令导出防火墙规则。导出的规则列表如下,其中“简单防火墙规则”为样本所添加的防火墙规则,该规则将会限制指定进程的网络通信。
导出的防火墙规则

样本会遍历进程,将进程名利用循环左移和求和的方式进行计算,最后与哈希值进行比对,判断出需要拦截的进程名。
哈希算法和哈希值对应关系

窃密模块
窃密内容:
  • 窃取 Chrome 登录数据
  • 窃取剪切板和监控键盘
  • 通过关键词和正则表达式匹配密码和私钥


远程服务器地址来源:首先,样本设置远程服务器列表,其结构为 IP 和端口的组合形式。随后,样本会遍历该表,并逐一进行连接尝试。动态调试时发现,119.188.168.189:10675 为恶意远程服务器。最后,样本还会尝试连接 app.95560.cc 和 bak.heros3.cc。
逐一连接

远程服务器列表中的所有 IP 与端口如下。根据逆向分析连接服务器后代码逻辑推测,表中的 IP 为已被病毒作者所控制的服务器。测试发现,大部分 IP 无法连接,可能是病毒作者在一段时间内只开放其中某个远程服务器,从而避免控制的服务器一次性全部暴露。
IP 地址表

窃取和后门的数据交互:样本在接收数据时会根据控制位选择解密算法、确认是否校验与是否解压。其中,解密算法采用 AES 和 RSA 算法。解压数据则利用 zlib 中 inflate 函数完成。发送数据时同理,但分析发现,发送数据时样本仅执行加密操作,并不进行数据压缩。
解密和解压

其中, RSA 秘钥通过样本初期的异或解密获取。AES 秘钥从 RSA 秘钥的偏移 0x64 处截取的长度为 10 字节的数据。
获取 RSA 和 AES 秘钥

窃取 Chrome 登录数据:样本会每一个小时获取一次 Chrome 登录数据,还会根据获取到的系统信息(系统中 MSI 安装程序数量)判断是否要窃取。
每一个小时获取一次

获取密码的方法:样本首先读取 Google\Chrome\User Data\Local State 文件(JSON 文件),从中获取 encrypted_key,并通过 CryptUnprotectData 函数解密出秘钥 key。
接着,读取路径为 Google\Chrome\User Data\Default\Login Data 数据库,该数据库为 SQLite 数据库。通过 SELECT origin_url, username_value, password_value FROM logins ORDER BY date_created DESC 指令获取域名、用户名、密码(密码利用 Local State 中的秘钥 key 进行解密)等信息。
但测试发现,最新版本 Chrome 浏览器(如版本 137)无法通过该方法获取密码,而旧版本(如版本 132)则可以。
获取密码

检查 Chrome 钱包类插件:样本通过检测 SOFTWARE\Google\Chrome\PreferenceMACs\Default\extensions.settings 路径中是否存在特定插件 ID,从而判断是否存在用于加密货币交易的Chrome钱包类插件。用于加密货币交易的插件及 ID 如下。
检测插件列表

窃取剪切板和监控键盘:样本通过调用 SetWindowsHookExW 函数并传入 WH_KEYBOARD_LL,实现对键盘输入事件的监听。随后,记录按键信息和用户粘贴的文本内容。之后,将记录的数据异或加密并储存到 Temp 目录下的 DBDCA7B5-247B-5D7D-6310-7393FA694883文件中。该文件名通过调用 HashData 函数对硬编码数据进行计算获取。日志解密后的内容如下。
键盘监听

窃取密码或私钥:样本通过检测剪切板更新、遍历窗口和控件提取文本、遍历桌面查找名为 *.lnk 和 *.txt 的文件,并匹配特殊字符串或正则表达式,判断是否为密码或加密货币私钥,从而将匹配到的内容发送到远程服务器。
关键词和正则表达式如下:
  • 关键词:私钥、助记词、密码、账号、帐号、password
  • 加密货币地址的私钥:\b(0x)?[0-9a-fA-F]{64}\b
  • BIP-39 助记词(用于恢复私钥):^\s*\b([0-9]*[.]*[a-wy-z][a-z]{2,}[ \t]*\b){12}\s*(\n|$)
  • BIP-39 助记词宽松正则(用于恢复私钥):^\s*\b([0-9]*[.]*.?[a-wy-z][a-z]{2,}\s*\b){12}\s*(\n|$)
  • 波场地址:\bT[0-9a-zA-Z]{33}\b


遍历窗口和控件或文件

后门模块
该样本通过后门操控受害者主机。其后门模块具备关机、重启、清理、休眠等控制功能,以及监控屏幕和服务相关功能。控制码与相对应的后门功能如下。
控制码对应后门功能

后门指令接收:样本接收到来自远程服务器的数据后,先对数据进行解压,随后将解压后的数据传入后门主函数。之后,根据控制码执行对应的后门功能。
后门入口

后门功能相对应代码图如下。
后门功能

除上述后门功能外,该样本还具备截屏、模拟鼠标点击、服务相关功能。其中,截屏功能通过对比前后两帧的异或结果来获取屏幕变化差异并上传,以此降低数据传输开销。
截屏
模拟鼠标点击
服务相关功能

二、附录
C&C:

HASH:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
aaliu
发表于 2025-6-30 17:38:13 | 显示全部楼层
工作细致,分析流畅
wowocock
发表于 2025-6-30 18:04:11 | 显示全部楼层
本帖最后由 wowocock 于 2025-6-30 18:22 编辑

中毒后,火绒这边主要的特征是网络升级失败。查杀目前基本都查不到,我看了下,基本全是白利用,而且利用的模块五花八门的。而且回写方式全是随机名字,随机地点,同时还会从网络上的分发服务器下载各种不同的白利用,导致很难处理,我试了下急救箱基本都扫不到,火绒这边的专杀应该很快会更新一版通杀处理。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
pal家族
发表于 2025-6-30 18:53:03 | 显示全部楼层
360急救箱:
鸡哥~鸡哥~
没了你我可怎么活!
lucksjd
发表于 2025-7-1 10:04:21 | 显示全部楼层
请问下如果MBR引导区有病毒,火绒能查杀吗?
火绒工程师
 楼主| 发表于 2025-7-1 11:28:15 | 显示全部楼层
lucksjd 发表于 2025-7-1 10:04
请问下如果MBR引导区有病毒,火绒能查杀吗?

您好,目前版本火绒已支持查杀MBR引导区病毒哈~
wowocock
发表于 2025-7-1 13:40:07 | 显示全部楼层
lucksjd 发表于 2025-7-1 10:04
请问下如果MBR引导区有病毒,火绒能查杀吗?

如果有发现查杀不了的,请提供样本,我们可以升级查杀处理。
lucksjd
发表于 2025-7-1 18:17:23 | 显示全部楼层
wowocock 发表于 2025-7-1 13:40
如果有发现查杀不了的,请提供样本,我们可以升级查杀处理。

您好!我不知如何提取样本,我的电脑不知何时被远程入侵了,用火绒,360,卡巴斯基都试过,查不到问题.刚装的WIN7专业版,还没装任何软件,用户进程有很多?在计算机中查看本地用户和组,发现USERS组里有两个用户,IIS_IUSRS组里有一个用户,但我只建立一个供我登录的用户。我之前用同一张光盘装的系统,从没有出现过这3个用户。有没有懂的老师,能否帮忙看下。
火绒工程师
 楼主| 发表于 2025-7-1 18:23:27 | 显示全部楼层
本帖最后由 火绒工程师 于 2025-7-1 18:53 编辑
lucksjd 发表于 2025-7-1 18:17
您好!我不知如何提取样本,我的电脑不知何时被远程入侵了,用火绒,360,卡巴斯基都试过,查不到问题.刚 ...

您好,若您那边有疑似感染的现场,麻烦您留下方便添加的QQ或微信,我们尽快安排远程协助您处理看下~
lucksjd
发表于 2025-7-1 18:27:03 | 显示全部楼层
wowocock 发表于 2025-7-1 13:40
如果有发现查杀不了的,请提供样本,我们可以升级查杀处理。

还想请问下老师,有没有硬盘低级格式化都无法删除的病毒或木马。病毒或木马能藏在电脑的芯片内吗,比如BIOS或其他的芯片。DVD的光盘刻录后,是否还能再被写入数据?谢谢了!
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2025-9-1 03:35 , Processed in 0.174653 second(s), 17 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表