一个名为 StripedFly 的跨平台恶意软件在网络安全研究人员的眼皮底下潜伏了 5 年,期间感染了 100 多万台 Windows 和 Linux 系统。卡巴斯基去年发现了这个恶意框架,并找到了它从2017年开始活动的证据。
分析师表示,StripedFly拥有复杂的基于 TOR 的流量隐藏机制、来自可信平台的自动更新、蠕虫式传播能力,以及在公开披露漏洞之前创建的自定义 EternalBlue SMBv1 漏洞利用程序。虽然目前还不清楚这个恶意软件框架是用于创收还是网络间谍活动,但卡巴斯基表示,它的复杂性表明这是一个 APT(高级持续威胁)恶意软件。
根据该恶意软件的编译器时间戳,StripedFly最早的已知版本是2016年4月,其中包含一个EternalBlue漏洞,而Shadow Brokers组织的公开泄露发生在2016年8月。
StripedFly感染超 100 万个系统
卡巴斯基首次发现StripedFly恶意软件框架是在WININIT.EXE进程中注入了该平台的shellcode之后,WININIT.EXE进程是一个合法的Windows操作系统进程,负责处理各种子系统的初始化。在对注入的代码进行调查后,他们确定该代码会从 Bitbucket、GitHub 和 GitLab 等合法托管服务下载并执行 PowerShell 脚本等其他文件。
进一步调查显示,受感染的设备很可能是首先使用定制的 EternalBlue SMBv1 漏洞利用程序入侵的,该漏洞针对的是暴露在互联网上的计算机。
StripedFly的最终有效载荷(system.img)采用了定制的轻量级TOR网络客户端,以保护其网络通信不被拦截,能够禁用SMBv1协议,并使用SSH和EternalBlue传播到网络上的其他Windows和Linux设备。
该恶意软件的命令和控制(C2)服务器位于 TOR 网络上,与它的通信需要频繁发送包含受害者唯一 ID 的信标信息。
为了在 Windows 系统上持久运行,StripedFly 会根据其运行的权限级别和 PowerShell 的存在调整其行为。
如果没有 PowerShell,它会在 %APPDATA% 目录中生成一个隐藏文件。在有 PowerShell 的情况下,它会执行用于创建计划任务或修改 Windows 注册表键值的脚本。在 Linux 上,恶意软件的名称为 "sd-pam"。它使用 systemd 服务、自动启动 .desktop 文件或修改各种配置文件和启动文件(如 /etc/rc*、profile、bashrc 或 inittab 文件)来实现持久性。
在 Windows 系统上提供最后阶段有效载荷的 Bitbucket 存储库显示,从 2023 年 4 月到 2023 年 9 月,已经有近 60000 次系统感染。
据估计,自 2022 年 2 月以来,StripedFly 已感染了至少 22 万个 Windows 系统,但该日期之前的统计数据无法查明,而且该存储库创建于 2018 年。
不过,卡巴斯基估计有超过 100 万台设备感染了 StripedFly 框架。
恶意软件模块
该恶意软件以单体二进制可执行文件的形式运行,并带有可插拔模块,这使其具备了通常与 APT 行动相关的多功能操作性。
以下是卡巴斯基报告中对 StripedFly 模块的总结:
配置存储: 存储加密的恶意软件配置。
升级/卸载: 根据 C2 服务器命令管理更新或删除。
反向代理: 允许在受害者网络上进行远程操作。
杂项命令处理程序: 执行各种命令,如截图捕获和 shellcode 执行。
凭证收集器: 扫描并收集密码和用户名等敏感用户数据。
可重复任务: 在特定条件下执行特定任务,如麦克风录音。
侦察模块: 向 C2 服务器发送详细的系统信息。
SSH 感染器: 使用获取的 SSH 凭据渗透其他系统。
SMBv1 感染者: 使用定制的 EternalBlue 漏洞利用程序入侵其他 Windows 系统。
Monero 挖矿模块: 在伪装成 "chrome.exe "进程的同时挖掘 Monero。
卡巴斯基在报告中写道:恶意软件的有效载荷包含多个模块,使行为者能够以 APT、加密货币矿工甚至勒索软件群组的身份执行任务。
值得注意的是,该模块开采的Monero加密货币在2018年1月9日达到峰值542.33美元,而2017年的价值约为10美元。截至2023年,其价值一直维持在150美元左右。
卡巴斯基专家强调,挖矿模块是该恶意软件能够长期逃避检测的主要因素。