gemini-cli 修复检查点路径穿越漏洞,可致任意 JSON 文件被删读
princeraj2572 · ghdev · 2026-09-24
gemini-cli 仓库的一个 P1 安全 PR 修复了检查点功能的路径穿越漏洞:旧版回退逻辑用 path.join(geminiDir, 'checkpoint-' + tag + '.') 直接拼接原始 tag,path.join 会把 .. 归一化掉,导致 x/../../secret 这类 tag 解析到 checkpoints 目录之外,deleteCheckpoint 可删除、loadCheckpoint 可读取目录外的 . 文件。修复方案是新增 legacyCheckpointPath() 辅助函数,仅当路径是 gemini 目录下直接的扁平 checkpoint-<tag>. 文件时才返回,含路径分隔符或 .. 的 tag 一律视为不存在;同时也挡住 x/../settings 这种留在目录内但指向非检查点文件的 tag。普通扁平 tag 行为不变。PR 附带两个新增测试(修复前失败、修复后 41/41 通过)。
「编程与Agent」频道最新
- 给智能体做游戏的好处:AI 随时帮你当测试员改画面 — tristanbob · 2026-09-25
- DeepLedger 发布:面向 QuickBooks 的 AI 会计 MCP 连接器 — modelcontextprotocol · 2026-09-25
- AgentWallet MCP:给 AI agent 的免许可链上钱包基础设施 — modelcontextprotocol · 2026-09-25
- Agent 评测 SDK 亮相:用真实网站而非 mock 工具测试 agent — Able-Ingenuity8885 · 2026-09-25
- 新系统语言 With 发布:Rust 级安全加上 C 级直呼其名 — QuixiAI · 2026-09-25
- HuggingChat ML Intern 一条提示词 75 分钟自动训完 LoRA — Gradio · 2026-09-25