开头一句导语:9/17 披露的 Plugin4Shell 是 AI 编码 agent 插件生态首个被完整披露的供应链级零点击 RCE。本文只讲三件事:影响范围与版本、攻击链原理、你现在就能执行的排查与加固命令/配置。
1. 影响范围与版本对照表(表格)
工具 | 状态 | 处置 |
Anthropic Claude Code | 已修复 | 升级到2.1.179+ |
OpenAI Codex CLI | 已修复 | 升级到0.146.0+ |
Google Gemini CLI | 弃用不修 | 迁移到Antigravity |
Microsoft Copilot / GitHub Copilot | 未修(有争议) | 收敛插件源、等官方补丁 |
2. 攻击链(技术向)
- 信任机制:插件通过 commit hash 做 SHA-pinning,区别于可变的 tag/branch 引用;
- 缺陷:checkout 后缺少对落地内容与 pinned hash 的一致性校验(verification gap);
- 投毒路径:①良性插件过审后偷换内容;②RepoJacking 劫持作者仓库;
- 触发:Claude Code / Codex 默认后台自动更新 → 零点击 RCE,CIA 全失陷;
- 前置研究:SkillJacking、RepoJacking PoC 已端到端验证。
3. 立刻执行的排查(思路 + 通用命令,具体路径以各工具官方文档为准)
- 查版本:各 CLI 一般支持 --version,确认是否低于修复版本;
- 查已装插件 / MCP / skill:导出当前 agent 已安装的扩展清单(Claude Code 的插件/MCP 列表命令、Codex 的配置文件、IDE 侧插件目录),逐个核对来源是否在官方或公司允许范围内;
- 查自动更新:在工具设置 / 配置文件中定位插件自动更新项,非必要改为手动 / 固定版本;
- 查凭据:在 agent 可访问的环境变量、配置目录、.env、云 CLI 凭证文件中,排查是否存在长期 token、生产密钥;历史上已有 agent 因"在不相干文件里翻到权限过大的 token"而酿成删库事故;
- 给出网:开发机 / 构建机到第三方代码托管平台的出网,走代理白名单。
注:各 agent 的配置项和目录随版本变化较快,文中不硬编码具体 flag,请以官方安全公告与文档为准;版本号是本次最确定、可立即执行的信息。
4. 加固清单(可直接抄进团队规范)
- 源:只允许官方 / 自建审过的 marketplace,建 allowlist;
- 更新:固定版本 + 升级评审,关闭静默自动更新;
- 权限:最小权限,禁授长期云 token、禁直连生产,默认沙箱;
- 凭据:纳入密钥管理系统、定期轮换,不落地明文;
- 审计:插件安装 / 更新 / agent 执行日志全量留存;
- 资产:维护团队级 Agent-BOM(MCP / skill / plugin 清单 + 版本 + 负责人)。
5. 参考来源
- The Register, 2026-09-17:AI coding agents 0-click RCE flaw…
- AIR Security 官方博客:Plugin4Shell(Or Nevo, Dor Granat, Niv Hoffman)
- JFrog Blog, 2026-07-29:Agent Guard: Control AI Assets Before They Become Shadow AI
- Google Developers Blog:Gemini CLI → Antigravity 迁移说明
结尾:我在做一个《研发团队 AI 编码落地实战》系列,安全合规是其中一篇,会给出可直接落地的 Rules / 准入模板,关注不迷路。