事件经过
基于已被标记为 2026 年最具影响力活动之一的活动(StepSecurity、Semgrep、Tenable),Miasma 恶意软件家族——一个小型 Shai-Hulud 衍生品——于 2026 年 7 月 14 日升级以通过合法的受信发布者管道破坏 AsyncAPI 的 npm 命名空间,并分别继续其既定技术(由 Tenable 和 StepSecurity 记录,2026 年 7 月 21-23 日期间积极讨论),直接将 AI 编码代理配置表面(Claude Code 钩子、Cursor 规则、Gemini CLI 设置、VS Code 任务)武器化,以便在开发者在 AI 辅助 IDE 中打开受感染的存储库时进行自动、静默的恶意执行。
影响分析
这是攻击者将 AI 编码代理自身的配置和钩子表面视为与 npm install 脚本相同级别的一流初始访问向量的最清晰证据——这意味着对签名/来源证明的包的信任,甚至对知名上游存储库的信任,一旦 AI 代理自动执行钩子触发的代码就不再保证安全。任何在被破坏或恶意存储库上使用 Claude Code、Cursor、Gemini CLI、GitHub Copilot 或类似工具的组织都面临静默凭证窃取、持久化或破坏性"死亡开关"有效载荷的风险,无需任何用户交互,除了打开项目。
攻击途径
攻击者获得了 asyncapi/generator 存储库的 next 分支的推送访问权限,并滥用了项目自身合法的 GitHub Actions 发布工作流和 npm 的 OIDC 受信发布者集成来生成具有有效 SLSA 来源的恶意发布。注入的投递程序在 require() 时执行(不是安装),启动一个分离的 Node.js 进程,从 IPFS 获取加密的第二阶段 Miasma v3 有效载荷,获取 GitHub/npm/PyPI/AWS/Kubernetes/SSH/浏览器/macOS Keychain 凭证。在同一活动的先前/并行波浪中,攻击者直接修改了 AI 编码代理配置/规则文件(SessionStart 钩子、Cursor alwaysApply 规则、VS Code folderOpen 任务),以便恶意代码在开发者在 Claude Code、Gemini CLI、Cursor、GitHub Copilot、ChatGPT Codex、Cline 或 Aider 中打开存储库的时刻自动执行——将 AI 代理工具本身变成有效载荷触发器。
受影响系统
npm 生态系统包(@asyncapi/generator 及相关,通过 2026 年 7 月 14 日具有恶意发布的版本);AI 编码代理工具配置文件:.claude/settings.json、.gemini/settings.json、.cursor/rules/setup.mdc、.vscode/tasks.json,遍及攻击者可以推送到的任何存储库
缓解措施
轮换任何导入受影响 AsyncAPI 包的系统上的所有 GitHub、npm、PyPI、云和 SSH 凭证;审计存储库中的意外 .claude/.gemini/.cursor/.vscode 配置更改;将锁定文件锁定到妥协前版本;将来源/SLSA 证明视为必要但不充分——执行构建时行为策略,而不仅仅是发布时签名检查。