
weidu12123andClaude Opus 4.8
7bf552952f
feat: add command blacklist guardrail for MCP command channels
MCP 工具一旦被外部 agent 放行,参数里的命令就不再受它自身权限系统检查
(Claude Code 的 MCP 权限规则只按工具名匹配、不带参数内容),
vps_exec 里的 rm -rf / 在 agent 侧零提示。这是唯一的兜底。
- src/guard.rs:名单判定。归一化(剥引号、\/ 还原、折叠空白、转小写、
短选项聚簇排序,故 -rf/-fr/-r -f 等价)+ * 通配 + 词边界匹配 + 截断标记检查
- data/deny-list.txt:首启写出内置 25 条不可逆灾难,用户可增删,每次判定重读
- 挂在 vps_exec 与 vps_terminal 的 send 上,命中即拒绝执行、不产生输出
- 工具描述写明护栏存在,并告诉 agent 被拦时不要换写法重试
- GET/PUT /api/guard + 设置页 MCP 标签下的名单编辑区
- 没有白名单、确认流程、风险分级与安全挡位
边界:防手滑,不防蓄意绕过(r\m -rf /、$(echo rm) -rf / 这类纯模式匹配必然漏)。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-13 23:55:31 +08:00
..
2026-10-13 18:08:02 +08:00
2026-10-13 18:08:02 +08:00
2026-10-13 23:55:31 +08:00
2026-10-13 18:08:02 +08:00
2026-10-13 18:08:02 +08:00
2026-10-13 18:08:02 +08:00