分析Shai-Hulud 2蠕虫窃取的机密数据
日期:2025年12月4日 22:42
Wiz公司发布了针对蠕虫Shai-Hulud 2活动痕迹的分析结果。在其活动期间,NPM仓库中发布了超过800个软件包的恶意版本,总计下载量超过1亿次。受感染的软件包安装后,被激活的蠕虫会搜索机密数据,发布新的恶意版本(如果发现连接NPM目录的令牌),并通过在GitHub上创建新仓库,将系统中发现的敏感数据公开。
在GitHub上发现了超过3万个存储有蠕虫截获数据的仓库。其中约70%的仓库存放有content.json文件,50%有truffleSecrets.json文件,80%有environment.json文件。这些文件包含了在安装了恶意包的开发者系统上发现的访问密钥、机密数据和环境变量。此外,在这些仓库中还发现了约400个actionsSecrets.json文件,其中包含在GitHub Actions执行环境中发现的密钥。
contents.json文件中存在超过500个用于连接GitHub的唯一凭据和令牌。truffleSecrets.json文件中包含了通过在受感染系统上运行TruffleHog工具(该工具收集超过800种数据类型,包括各种服务、云环境、产品和数据库系统中使用的访问密钥、加密密钥、密码和令牌)所发现的敏感数据。在truffleSecrets.json中共识别出超过40万条唯一记录,其中约2.5%(约1万条)经过验证。
据推测,这些公开的敏感信息可能成为新一轮攻击的起点,因为许多数据仍然有效。例如,检查显示,从受感染系统捕获的NPM访问令牌中,有60%仍然有效。
报告还提供了基于受感染系统环境变量分析得出的总体统计数据。23%的蠕虫启动发生在开发者计算机上,77%发生在持续集成环境中(其中60%为GitHub Actions,5%为Jenkins,5%为GitLab CI,3%为AWS CodeBuild)。87%的系统使用Linux,12%使用macOS,1%使用Windows。76%的启动发生在容器中,13%发生在宿主机系统中。
60%的感染是由于安装了恶意版本的@postman/tunnel-agent-0.6.7和@asyncapi/specs-6.8.3包。在99%的情况下,蠕虫是在运行package.json中preinstall部分指定的"node setup_bun.js"命令时被激活的(剩余的1%可能属于测试尝试)。