上周,React 开发团队修复了高危漏洞 CVE-2025-55182(React2Shell)。该漏洞存在于 React 服务端组件(React Server Components,RSC)中,属于远程代码执行(RCE)类型。漏洞披露后数小时内,便出现大规模利用活动。最早被发现使用该漏洞的是中国黑客组织 Earth Lamia 和 Jackpot Panda 等团伙,随后朝鲜黑客组织也利用该漏洞分发恶意软件 EtherRAT,Mirai 等僵尸网络也将其纳入攻击工具库,目前该漏洞已被用于挖矿和 DDoS 攻击。
安全公司 Huntress 表示,他们观察到黑客利用 React2Shell 攻击建筑、娱乐等多个行业,并使用了此前未见的恶意程序,包括 Linux 后门程序 PeerBlight、反向代理隧道工具 CowTunnel,以及用 Go 语言开发的后渗透工具 ZinFoq。这些工具旨在滥用受害主机的计算资源,通过挖矿软件 XMRig 进行加密货币挖矿。此外,Huntress 还发现僵尸网络 Kaiji 的变种在此次攻击中被广泛传播。该病毒主要功能是发起 DDoS 攻击,值得注意的是,若系统管理员尝试清除载荷,可能导致受感染主机自动重启。
攻击者疑似通过自动化扫描工具,寻找存在 React2Shell 漏洞的 Next.js 应用系统。他们使用的工具名为 react2shell-scanner,原由安全公司 Assetnote 开发并在 GitHub 上公开发布,初衷是帮助组织发现并修复漏洞,但如今已被黑客用于定位攻击目标。
一旦成功利用漏洞,攻击者会从多个命令与控制(C2)服务器下载其他恶意工具,并通过创建隐藏目录、滥用 systemd 服务等方式实现持久化驻留。最终,攻击者执行经过 Base64 编码的 Bash 脚本,从 GitHub 下载特定版本的 XMRig,并连接指定的加密货币钱包和矿池。值得注意的是,虽然攻击目标主要为 Linux 主机,但 Huntress 也发现部分 Windows 系统被植入 Linux 载荷,这成为判断攻击者使用自动化工具的重要依据。
后门程序 PeerBlight 的一个显著特点是,攻击者利用 BitTorrent DHT 网络作为备用 C2 通信通道。即使主 C2 服务器被切断,仍能维持通信。Huntress 指出,PeerBlight 的部分代码与 RotaJakiro 存在重叠,但其通信协议、加密结构和指令格式有本质差异,因此推测其开发者可能借鉴了 RotaJakiro 的持久化代码,或两者均由运营僵尸网络 Torii 的同一团伙开发。
PeerBlight 的持久化机制也颇具特色。在获得 root 权限时,攻击者通常会通过 systemd 服务实现持久化;若目标系统未安装 systemd,则会修改 Upstart 配置。若未获取 root 权限,后门会创建隐藏目录,模仿 systemd 的“PrivateTmp”目录命名方式,将其命名为 softirq 并复制为可执行文件。
在与 C2 服务器通信方面,PeerBlight 的机制十分复杂。首先尝试连接 185.247.224[.]41:8443,使用 TCP socket 通信。该后门会生成随机的 AES-256 密钥,并使用特定 RSA-2048 公钥加密通信流量,再将加密密钥发送至服务器。此外,攻击者还采用域名生成算法(DGA),通过日期和时间计算 SHA-256 哈希值,结合固定常量生成初始结果,再将哈希值分割为 4 字节区块,通过特定旋转、XOR 运算及 Mersenne Twister 伪随机数生成器,动态生成 DGA 域名。若上述通信方式均失效,PeerBlight 将通过 BitTorrent 基础设施建立备用 C2 通道。