首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
为什么敢让AI智能体执行系统命令?mercury-agent多层权限系统完整解析
📅 2026/9/30 0:49:49
✍️ 爱科研究院
👁 阅读 3,247
为什么敢让AI智能体执行系统命令mercury-agent多层权限系统完整解析【免费下载链接】mercury-agentSoul-driven AI agent with permission-hardened tools, token budgets, and multi-channel access. Runs 24/7 from CLI, Telegram or More.项目地址: https://gitcode.com/gh_mirrors/me/mercury-agent你有没有想过一个 7×24 小时运行的 AI 智能体凭什么敢直接在你的服务器上执行系统命令mercury-agent 给出的答案是一套多层权限系统——从命令黑名单、安全读白名单、命令段拆分防注入到文件系统目录范围管控和符号链接逃逸防护层层设卡让 AI 智能体既能干活又作不了大恶。本文带你从零看懂这套设计的每一层防护。第一层命令黑名单——永远不执行的红线任何 AI 智能体跑命令第一步都得先划红线。mercury-agent 内置了一份硬性黑名单blocklist命中即拒绝无论处于什么模式、用户是否点了总是允许sudo *、rm -rf /、rm -rf ~—— 提权与灾难级删除mkfs *、dd if*、format *—— 磁盘格式化与覆写shutdown *、reboot *、halt *—— 关机重启:(){ :|: };:—— 经典的 Fork 炸弹del /s /q C:\*、reg delete *等 Windows 侧危险命令Blocked command: matches sudo *这份清单定义在 blocklist.ts并同步内置到权限清单默认值中permissions.ts。关键点在于黑名单检查发生在一切放行逻辑之前连Allow All 全自动模式也无法绕过。第二层安全读命令——白名单自动放行如果每条命令都要用户确认AI 智能体会被弹窗淹死。mercury-agent 为此维护了一份安全只读命令白名单ls、cat、head、tail、grep、rg、find、wc、git status、git diff、git log……这些命令只读不写在任何模式下都自动放行。而npm publish、git push、docker *、rm -rf *、curl * | sh这类有实际副作用的命令则始终需要用户确认。内置工具全景可以参考官方文档内置工具清单。第三层命令段拆分——防注入的关键一招这一层是最容易被忽略、也最见功力的设计。假设echo *在自动放行名单里那么echo hi; rm -rf ~会不会被当成echo 命令放行mercury-agent 的答案是绝不。splitShellSegments函数会把整条命令按;、、||、|、切分成独立段落还会把$(...)、反引号、子 shell()、花括号块{}单独拆出来逐段检查permissions.tsecho $(rm -rf ~)—— 命令替换被拆出单独命中黑名单拒绝 ✅ls; reboot—— 拆成两段reboot命中黑名单拒绝 ✅cat foo; rm -rf ~—— 全段必须都是安全读命令才放行此处失败转人工确认 ✅甚至连双引号内部的$(...)都会被挖出来检查——因为 bash 在双引号里同样会执行命令替换。这是一种宁可误杀、不可漏放的保守策略。第四层文件系统范围管控 符号链接防护命令之外文件读写走的是目录范围scope机制访问类型规则读在已批准范围内直接放行写Ask Me 模式下每次都询问即使范围已批准范围外路径触发approve_scope工具请求用户选 Allow本次/ Always永久保存/ Deny其中有一个隐蔽攻击面符号链接逃逸。一个路径在文字上位于工作目录内但通过 symlink 实际指向了范围外的敏感文件。mercury-agent 会在写入前对路径做realpath规范化若最终落点不在任何可写范围内直接拒绝permissions.ts。相关测试用例覆盖在 permissions.test.ts。第五层Ask Me 与 Allow All 双模式会话启动时mercury-agent 会让你选择权限模式CLI 用方向键菜单Telegram 用内联按钮 Ask Me默认文件写入、shell 命令、范围变更都要确认选项为 Yes / No /Always选 Always 即切换为自动放行且按命令精确记忆✅ Allow All本次会话全自动批准重启后重置值得注意的是远程安全隔离本地 CLI 的全部允许永远不会悄悄抬高来自 Telegram/云端会话的远程请求permissions.ts——你在家点了 Allow All不代表远程消息也能免确认执行命令。权限交互的完整行为见官方文档Permissions。动手试试权限如何落地所有权限规则持久化在~/.mercury/permissions.yaml随时可编辑mercury-agent 不会绕过手工修改。执行链路很直白AI 调用run_command工具 → 权限管理器checkShellCommand逐层检查 → 通过才交给子进程执行且带 120 秒默认超时保护run-command.ts。Telegram 里随时可用/permissions切换模式。总结mercury-agent 的多层权限系统回答了一个核心问题信任不是靠管住 AI而是靠设计。黑名单兜底、白名单提效、段拆分防注入、scope 管文件、符号链接防逃逸、远程通道隔离——五层防线各司其职才让让 AI 直接跑系统命令从一句豪言变成了可以 7×24 放心运行的工程现实。【免费下载链接】mercury-agentSoul-driven AI agent with permission-hardened tools, token budgets, and multi-channel access. Runs 24/7 from CLI, Telegram or More.项目地址: https://gitcode.com/gh_mirrors/me/mercury-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/9/30 0:49:49
DeepSeek-V2中小企私有化部署实战:量化、微调与业务集成
2026/9/30 0:49:49
LLM、Tools、MCP、Skills 统一网关 tsm-hub 实战:架构设计与踩坑指南
2026/9/30 0:49:49
基于SCOR的供应链诊断:五大模块评估与效能提升
2026/9/30 4:30:02
从惯性质量到引力质量:矢量光速螺旋时空归一化的几何证明探索
2026/9/30 4:30:02
Linux命令ustat探秘:从文件系统统计到netstat误写的现代替代
2026/9/30 4:30:02
ENSP实验拓扑复现与配置验证全流程指南
2026/9/30 4:30:02
零基础学编程思维:从USSD代码到训练营60天实战路径
2026/9/30 4:30:02
Java 分组顺序乱?LinkedHashMap 和 HashMap 解析
2026/9/30 4:25:02
C++类型标签分发:从std::advance到编译期自动选路
2026/9/30 0:04:47
扩散模型发展史:从物理热力学到Stable Diffusion的生成式AI进化
2026/9/30 0:04:47
模型优化全链路实践:从训练到部署的优化策略与排障经验
2026/9/30 0:04:47
DeepSeek Agent训练场拆解:沙箱隔离、任务编排与防作弊实战
2026/9/29 11:29:08
网站建设的英语怎么说?别只背单词,看完这套安全完整流程才敢上线
2026/9/29 13:01:36
新手入门看这篇:建设网站加盟避坑指南与SEO实操
2026/9/29 14:07:33
论文AIGC疑似度是什么意思?想查论文AI率有哪些免费工具?