security(policy): HTTP 形态无人工审批闭环——permission hook 零接线、无权限规则时隐式放行
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 35/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- rust
调研方向
Start with src/tools/policy_domain/permission_pipeline.rs:271-285 and the PermissionHook trait in src/tools/registry.rs:406, then inspect HTTP and CLI production paths for hook calls. Verify how exit_plan_mode handles REST confirmation and how the default policy and RECURSIVE_SANDBOX=policy affect tool execution. Done means HTTP has a server-enforced approval path or forced plan confirmation, with restrictive defaults and deployment guidance for unsafe configurations.
由索引模型根据 Issue 内容生成。
描述
场景 gap 单(okguitar 提报)· 优先级 P0 · 依赖:无
基线 HEAD = 9165b9a0。
Summary
- 权限管线在「非 Strict 且无显式规则」时隐式放行(仅 tracing::warn):
src/tools/policy_domain/permission_pipeline.rs:271-285;运维未配[permissions]时整个规则检查跳过,只剩保护路径检查(.git/.ssh)。 - 交互式人审的载体
with_permission_hook在 http/cli 生产路径零调用(全仓命中仅 trait 定义src/tools/registry.rs:406与#[cfg(test)]测试)。 - HTTP 下唯一的审批门是 exit_plan_mode 的 plan 确认(REST confirm/reject),但是否进 plan mode 由模型自主决定;
run_shell/Write/WebFetch外发在默认部署(无沙箱 + 无权限配置)下没有任何「人批一下」环节,run_shell在 host 直接执行且带全网出口。 - L1 deny 模式(rm -rf/mkfs/dd 等)只在
RECURSIVE_SANDBOX=policy档挂载,默认档无。
影响
办公场景:员工经前端下达的目标可让 agent 在服务器上直接执行任意 shell / 改工作区文件 / 公网外发;一份带注入的网页或文档即可驱动这一切。这是办公智能体底座最基本的人审闭环缺失。
建议
- http 模式提供服务端强制的审批通道:per-tool webhook 审批(复用 PermissionHook trait 对接企业审批流)或强制 plan-confirm 档位。
- 默认档至少挂
PolicyConfig::default_restrictive();部署文档把「无沙箱 + 无权限配置」标记为不可用于生产。
- 主要语言
- Rust
- 星标
- 4
- 派生
- 0
- 平均合并
- 5 小时 32 分钟
- 30 天内合并 PR
- 7
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
jeffkit/recursive 的其他 Issue
-
难度 3/5 半天 新手友好度 72/100
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 68/100
jeffkit/recursive#141 · 3 条评论 ·
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 66/100
jeffkit/recursive#138 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 20/100
jeffkit/recursive#134 · 2 条评论 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 30/100
维护者通常 1 天内回复
查看 jeffkit/recursive 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 74/100
rubys/roundhouse#571 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 74/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
-
documentation
难度 1/5 1 小时以内 新手友好度 90/100
fastrevmd-lab/rustmistmcp#161 ·
-
arch-audit refactor
难度 2/5 1-3 小时 新手友好度 82/100
SocketDev/socket-patch#1011 ·
维护者通常 1 天内回复