事件背景:知名密码管理工具遭污染
近日,Bitwarden CLI 的 npm 包被曝出遭到恶意植入。作为全球数千万用户和数万家企业信赖的密码管理工具,Bitwarden 此次受影响的是其命令行接口工具(CLI)的特定版本。从我们的应急响应经验来看,针对开发工具和 CI/CD 流水线的“供应链投毒”已成为攻击者获取企业核心基础设施权限的捷径。
虽然本次事件仅波及 Bitwarden CLI,其浏览器插件及移动端应用目前并未发现异常,但考虑到 CLI 工具在开发者工作流中的核心地位,这一漏洞的危害性极高,能够直接导致开发环境的凭据泄露及横向移动。
攻击链分析:CI/CD 流水线的“暗门”
调查显示,攻击者通过在 Bitwarden 的 CI/CD 流水线中植入恶意逻辑,将恶意脚本 bw1.js 打包进合法的 npm 发布流程中。这种攻击模式与近期频繁发生的“Checkmarx”系列供应链攻击高度一致。
这一环节是很多企业容易忽视的。攻击者并非通过直接修改源代码仓库,而是通过劫持 GitHub Actions 等自动化运维工具,在构建过程中注入恶意代码。这意味着,即使开发者审查了原始代码,也难以察觉最终发布的构建产物已被污染。
技术手法解析:深度窃取与隐蔽执行
此次攻击的恶意载荷不仅具有极强的针对性,还表现出鲜明的“意识形态”特征。攻击者将恶意代码伪装成名为 bw1.js 的文件,其主要技术手法包括:
- 深度内存采集:恶意脚本会在 GitHub Actions Runner 运行环境中进行内存扫描,旨在捕获内存中残留的各类 Token。
- 敏感信息搜刮:自动扫描环境变量,重点窃取 AWS、Azure、GCP 等主流云服务商的密钥,以及 SSH 私钥和
.npmrc配置文件。 - 隐蔽回传:被窃取的数据会被上传至攻击者创建的恶意公共代码仓库,这些仓库通常以《沙丘》(Dune)中的术语命名,如“Shai-Hulud”或“Sardaukar”。
- 指纹识别与规避:为了规避安全研究人员的检测,恶意程序在运行时会检查系统语言环境,一旦发现系统 Locale 以“ru”(俄语)开头,便会自动终止运行。
类似攻击近年来明显增加,攻击者通过在恶意代码中嵌入特定的“宣言”或主题标签,不仅展示了其攻击意图,也增加了溯源分析的复杂性。
安全建议与 Solar 经验分享
针对此次事件,如果您所在的组织使用了 Bitwarden CLI,我们建议立即启动以下应急处置流程:
第一,清理受污染环境:立即卸载受影响版本的 Bitwarden CLI,并排查构建流水线中是否存在异常的构建产物。
第二,全量凭据重置:这是最关键的一步。由于恶意软件具备内存读取能力,所有在受污染环境中运行过的 GitHub Token、npm Token、云平台访问密钥以及 SSH 密钥均视为已泄露,必须强制轮换。
第三,深度排查痕迹:检查 GitHub 账户下是否存在命名异常(如“Dune”主题)的非法仓库;检查服务器是否存在 /tmp/tmp.987654321.lock 等异常锁文件,并审核 ~/.bashrc 或 ~/.zshrc 是否被植入了恶意持久化脚本。
在应急响应过程中,我们建议企业加强对 CI/CD 流水线的监控,限制构建环境的网络出站权限,并对自动化构建工具的权限进行严格的最小化隔离。
如果您想了解勒索病毒的最新发展趋势,或在实际业务中遇到类似安全事件,欢迎关注“Solar应急响应团队”。
全国热线:400-613-6816 官网:www.solarsecurity.cn / www.sierting.com