2026年4月22日,安全社区经历了一次惊心动魄的93分钟。知名密码管理工具Bitwarden的官方命令行界面(CLI)在npm上被植入后门,版本号为@bitwarden/cli@2026.4.0。任何在此期间通过npm安装该CLI的用户,都会下载一个带有恶意载荷的替身工具。
Bitwarden迅速检测到异常并移除了该问题版本,随后发表声明称没有证据表明攻击者访问了最终用户的金库数据或破坏了生产系统。然而,安全研究公司JFrog对恶意载荷的分析显示,攻击者对窃取Bitwarden金库毫无兴趣,他们的目标直指GitHub令牌、npm令牌、SSH密钥、Shell历史、AWS凭证、GCP凭证、Azure凭证、GitHub Actions密钥以及AI工具配置文件——这些正是主宰团队构建、部署和触及基础设施的凭据。
恶意载荷精准收割基础设施工信
| 目标凭据/数据类型 | 常驻位置 | 操作影响 |
|---|---|---|
| GitHub令牌 | 开发者笔记本、本地配置、CI环境 | 可窃取仓库访问权限、破坏工作流、列出机密、通过自动化横向移动 |
| npm令牌 | 本地配置、发布环境 | 可用于发布恶意包或篡改发布流程 |
| SSH密钥 | 开发者机器、构建主机 | 打开服务器、内部仓库和基础设施的大门 |
| Shell历史 | 本地机器 | 泄露粘贴的机密、命令、内部主机名和工作流细节 |
| AWS凭证 | 本地配置文件、环境变量、CI密钥 | 暴露云工作负载、存储和部署系统 |
| GCP凭证 | 同上 | 暴露云项目、服务和自动化管道 |
| Azure凭证 | 同上 | 暴露云基础设施、身份系统和部署路径 |
| GitHub Actions密钥 | CI/CD环境 | 获取自动化、构建输出、部署及下游机密 |
| AI工具/配置文件 | 项目目录、本地开发环境 | 暴露API密钥、内部端点、模型设置及相关凭证 |
Bitwarden服务于超过5万家企业和1000万用户,其官方文档将CLI描述为“强大且功能全面”的金库访问方式,常用于自动化工作流中通过环境变量进行身份验证。npm被列为习惯使用注册表的用户最简单、首选的安装方法。这种自动化使用、开发者机器安装与官方npm分发的组合,使得CLI恰好位于高价值基础设施凭证的聚集地。
JFrog的分析揭示,恶意包重写了preinstall钩子和bw二进制入口点,使其指向一个加载器,该加载器获取Bun运行时并启动混淆后的有效载荷。攻击在安装时和运行时同时触发。一个组织即使从未接触任何存储的密码,也可能在运行后门CLI的同时,让恶意软件系统性地收集其CI管道、云账户和部署自动化的凭证。
攻击链:一枚令牌撬动整个自动化基础设施
安全公司Socket指出,此次攻击似乎利用了Bitwarden CI/CD管道中一个被攻陷的GitHub Action,这与Checkmarx研究人员追踪的模式一致。Bitwarden确认该事件与更广泛的Checkmarx供应链攻击活动有关。
一旦恶意软件获取到GitHub令牌,它就能验证令牌、枚举可写仓库、列出GitHub Actions密钥、创建分支、提交工作流、等待执行、下载产物,然后清理现场。这形成了一条自动化的链条,将一枚窃取的令牌转化为组织自动化基础设施上的持久访问权限。开发者的笔记本电脑在安装受毒化的官方包后,成为从本地凭证存储到GitHub访问权限的桥梁,进而触及GitHub令牌所能到达的任何资源。
加密行业的镜像危机:从Bybit到Bitwarden
加密行业对这类攻击并不陌生。Bybit事件是结构上的近亲:一个被攻陷的开发者工作站让攻击者毒化了受信任的上游接口,进而触及受害者的运营流程。区别在于Bybit涉及篡改的Safe Web界面,而Bitwarden涉及篡改的官方npm包。在加密、金融科技或托管环境中,这条路径可以从凭证存储一直延伸到发布签名者、云访问和部署系统,而无需触碰任何金库条目。
在短短60天内,Checkmarx披露了被攻陷的GitHub Actions工作流和OpenVSX插件;云安全联盟警告TeamPCP活动正在积极破坏开源项目和CI/CD自动化组件;JFrog记录了被攻陷的Trivy GitHub Action如何窃取LiteLLM的发布令牌并导致恶意PyPI发布;Axios披露了两个恶意npm版本通过被攻陷的维护者账户流通约三小时。Sonatype统计,仅在2025年就发现了超过45.46万个新的恶意包,累计总数超过120万个。
Bitwarden事件并非孤立案例,它证明了发布工作流和包注册表已成为首要攻击面。对于依赖CI/CD自动化部署智能合约、管理DeFi协议和交易所的加密团队而言,一个被攻陷的发布管道意味着:密钥可能被窃取、部署脚本可能被篡改、甚至整个协议逻辑可能被替换。而这一切在官方的外衣下悄然发生。
信任瓶颈:官方标签不再可靠
npm的受信任发布模型旨在通过OIDC基于身份的认证取代长期有效的npm发布令牌,移除攻击者劫持注册表发布的最常见路径。但Bitwarden事件表明,更难的问题出在工作流层。如果攻击者能够利用发布工作流本身,“官方”徽章仍然会伴随着恶意包。受信任发布只不过将信任负担上移到调用它的工作流和Action的完整性上,而这一层大多数组织尚未检查。
SLSA框架要求消费者验证出处是否与预期参数匹配:正确的仓库、分支、标签、工作流和构建配置。但除非出处验证成为默认的消费者行为,而不是可选的策略层,否则官方包名将继续获得超出其发布流程合理性的信任。
市场影响分析:加密项目需立即行动
本次事件对加密市场的潜在影响不容忽视。首先,加密行业的开发者和基础设施团队高度依赖自动化CI/CD管道进行智能合约部署、密钥管理和前端更新。Bitwarden这类安全工具的受毒化版本,可能成为攻击者渗透交易所、DeFi协议和钱包提供商的跳板。一枚GitHub令牌的失窃,可能导致数千个加密仓库被横向访问,包括硬编码的私钥、API密钥和云服务凭证。
其次,事件可能加速行业对供应链安全标准的采纳。像SLSA(供应安全等级)这样的框架将不再是可选项,而可能成为审计和合作中的必要门槛。加密投资者和项目方应关注其技术堆栈中依赖的npm、PyPI等包是否经过出处验证,并限制CI/CD工作流的权限,避免使用长期有效的令牌。
最后,事件再次暴露出“开源+安全”的悖论。一方面,加密行业受益于开源生态的透明度和快速迭代;另一方面,这种参与模式下的信任链极其脆弱。项目方应将包管理器的信任模式审计纳入常规安全流程,并考虑采用环境级别的手动批准、标签保护规则和分支限制等控制措施。
Bitwarden事件是一次精确的注射——它瞄准的不是密码本身,而是密码锁背后的整栋大楼。对于加密行业而言,是时候重新定义“官方”的含义了。

