事件经过
Socket 威胁研究(发布于 2026 年 6 月 16 日)分析了 npm 包 shai_hulululud@1.0.48596,发现它是专门为了规避 AI 辅助恶意软件扫描程序而构建的,而不是执行常规有效负载。该包包含一个大型 index.js,其中包含:(1) 嵌入在源代码注释中的触发策略的提示内容和虚假系统覆盖指令,用于操纵基于 LLM 的扫描程序,(2) 数万行重复注释行以淹没扫描程序的上下文窗口并耗尽其令牌预算,(3) 文件末尾附加的严重混淆的 JavaScript。Socket 将该包评估为抗议软件或对抗测试用例,而不是凭证窃取恶意软件,但明确警告该技术直接适用于更强大的威胁参与者,以隐藏来自 AI 驱动安全审查管道的真正恶意有效负载。
影响分析
这是第一个公开记录的 npm 包,明确设计为攻击 AI 代理恶意软件扫描程序而不是作为检测机制的目标。随着 AI 辅助代码审查和供应链扫描变成标准(集成到 GitHub Copilot、Socket、Snyk 和类似工具中),掌握扫描程序规避的对手可以交付通过自动化 AI 审查的恶意包。该技术与之前针对 AI/ML 开发人员交付凭证窃取恶意软件的更广泛的 Shai-Hulud/Miasma/Hades 活动系列直接相关。
攻击途径
攻击者发布 npm 包,在源代码中嵌入提示注入指令和上下文淹没注释,以操纵或中和基于 LLM 的扫描程序,允许混淆的恶意 JavaScript 通过自动化 AI 安全审查未被检测
受影响系统
使用 LLM 进行代码审查的 AI 驱动恶意软件扫描程序 / 供应链安全工具(Socket、GitHub Copilot 安全功能、Snyk AI 审查等);任何信任 AI 辅助审查的 npm 包生态系统
缓解措施
不要仅依赖 AI 辅助扫描来审查 npm 包;与静态 AST 分析和行为沙箱相结合。Socket 已标记并阻止了该包。参见 Socket 博客:https://socket.dev/blog/npm-package-uses-prompt-injection-and-token-flooding-to-disrupt-ai-malware-scanners