Gemini CLI 路径防护存旁路漏洞,前缀比对被同级目录绕过
ranjan-del · ghdev · 2026-09-09
开发者 ranjan-del 向 google-gemini/gemini-cli 提交 P1 级安全修复 PR:getinternaldocs 工具的路径穿越防护用字符串前缀比较(startsWith)判断路径是否在 docsRoot 内,缺少路径组件边界检查。攻击者请求 ../docs-private/secret.md 时,解析结果仍以 <repo>/docs 开头,防护被绕过,工具会把私有文件内容返回给模型。
修复方案是改用仓库里 sandboxedFileSystemService.ts 已在用的 isSubpath(),基于 path.relative() 比较,同时处理 Windows/macOS 大小写不敏感的问题。作者还指出原测试只测了 ../package. 这类不共享前缀的路径,因此从未覆盖同级目录旁路场景;新测试创建真实的同级目录并断言请求被拒绝。该工具为只读,影响范围有限。
「编程与Agent」频道最新
- 博主给 AI agent 配手机号和邮箱,像同事一样派活 — heyshrutimishra · 2026-10-27
- 14 万粉开发者实测:模糊目标下放养 Agent,十次有九次把代码改糟 — eptwts · 2026-10-27
- LangChain 周三直播:拆解内部每天在用的设计 Agent — LangChain · 2026-10-27
- 生物科技 Agent 系列 Day 8:用审查 Agent 自动把关实验记录本质量 — nlarusstone · 2026-10-27
- Photon 在 iMessage 内上线 Agent 互通信,AI 智能体可互相发短信协作 — alvelda · 2026-10-27
- 恶搞论文走红:用 REA 的 MCP 工具反向工程机构交易系统,搞一人量化基金 — PtrPomorski · 2026-10-27