黑客借ClaudeCode供应链攻击瞄准开发者
供应链安全公司 Safety 近期发现,一个冒充广受欢迎的 Claude Code AI 开发助手的软件包,实际上是一种木马程序。
Anthropic 描述 Claude Code 是一种终端代理编码工具,可以访问代码库、加速编码流程,并通过自然语言命令执行常见任务、解析复杂代码,甚至管理 Git 工作流程。Git 是程序员最常用的版本控制工具。
在南非接受 MyBroadband 采访的开发人员表示,Claude Code 带来了积极体验,使他们能够比以往更高效地工作。鉴于其受欢迎程度,攻击者试图通过供应链攻击对该工具进行侵入也就不足为奇。
恶意 NPM 包的发现
Safety 在其最新博客中提到,其自动恶意包检测引擎于 10 月 27 日发现了一个名为 @chatgptclaude_club/claude-code 的恶意 NPM 包。NPM 是 Node.js 的默认包管理器,也是 JavaScript 开发者广泛使用的开源工具。
该恶意包最早于 8 月发布,至今已有 19 个版本,被下载约 207 次。发布后,NPM 已将其删除,并替换为安全保留包,截至报道时下载量为 435 次。
安全研究主管 Paul McCarty 表示,这个软件包部署了复杂的负载,攻击范围覆盖开发者本地计算机以及持续集成(CI)管道。其主要目的是窃取 Anthropic 的凭证,并通过双向命令和控制(C2)服务器执行远程操作。
McCarty 补充道:“该恶意软件能够代理开发者的 Claude 命令和敏感数据,同时允许攻击者使用受感染的 Claude 执行自己的命令。由于 Claude 模型按处理的每个代币计费,这对攻击者非常有利。”
恶意包如何伪装
恶意包基于合法的 @anthropic-ai/claude-code 包。Anthropic 的包是 NPM 上下载量最高的包之一,每周超过 500 万次下载。
McCarty 指出,通过对比两个包的内容目录可以发现,恶意包几乎完全复制了真实的 Claude Code,但额外包含三个隐藏文件。
这些额外文件会拦截流向 Anthropic 的流量,窃取用户提示、对话内容、认证数据以及计费信息。攻击者借此在开发者不知情的情况下收集敏感数据,同时避免被安全防护检测到。
NPM 验证缺失的风险
McCarty 强调,NPM 对包的元数据缺乏验证机制,使攻击者能够利用真实 GitHub 仓库增加恶意包的可信度。许多开发者误以为 GitHub 仓库信息是经过平台验证的,但实际并非如此。
如何自我检查和防护
开发者或安全团队可以通过以下方式识别是否受影响:
检查是否安装了 @chatgptclaude_club/claude-code 包,而非官方 Anthropic 包。
监控网络流量中是否存在命令和控制服务器的 URL(McCarty 博客提供详情)。
检查是否创建了 ~/.chatclub/ 目录,这是恶意包常见痕迹。
通过这些方法,开发者可以及时发现风险,避免敏感信息泄露,并采取适当的防护措施。
本文译自:mybroadband ,由olaola编辑发布