近期发现的名为TrapDoor的供应链攻击活动,已将超过34个恶意软件包植入npm、PyPI和Crates.io三个主流开源代码注册库。这些包以开发者日常使用的工具为伪装,包括钱包安全检查器、DeFi风险扫描器、Solidity构建防护工具、Move编译辅助程序以及大语言模型上下文压缩工具等,名称设计简洁低调,易被忽视。
一旦安装,这些恶意包会主动扫描开发者的本地设备,提取私钥、密码、GitHub令牌、AWS凭证、浏览器数据及其他敏感配置文件。部分包具备持续驻留能力,通过创建持久性文件维持访问权限,并尝试利用被盗的SSH密钥横向移动至企业内部网络系统。
攻击者还利用了开发者用于指导AI编程工具的配置文件,如 .cursorrules 和 CLAUDE.md。通过嵌入零宽度Unicode字符,这些文件在后续AI生成代码过程中可能触发虚假的安全检测流程,从而收集并外传机密信息。该手法使攻击从单一包窃取演变为对整个开发环境的长期监控。

针对不同语言生态,攻击采用差异化执行机制:Rust包通过恶意 build.rs 脚本在编译阶段运行;PyPI包在导入时执行远程JavaScript代码;npm包则利用 postinstall 钩子完成恶意行为。此外,攻击者已向多个开源项目提交拉取请求,试图通过正常贡献流程植入恶意配置文件。
本文译自CoinDesk,查看原文