模块 2Tool 与 Agent Runtime

沙箱与权限边界

代码执行把模型错误升级为系统风险

  • 任意命令和依赖安装
  • 读取密钥、源码和其他租户数据
  • 网络外传与横向移动
  • CPU、内存、磁盘和进程耗尽
  • 持久化后门或污染后续任务

按能力授予,而不是给一个万能 Shell

  • 只读文件、受限写入、网络访问和进程执行分离
  • 允许路径、域名、命令和资源白名单
  • 每个 Run 使用短期身份与最小 Scope
  • 高风险能力需策略或人工升级

多层隔离共同缩小爆炸半径

进程与系统调用

  • 非特权用户
  • namespace/seccomp 等限制

临时工作区

  • 只挂载必要文件
  • 禁止宿主敏感路径

默认拒绝出站

  • 受控代理、DNS 和域名策略
  • CPU、内存、磁盘、进程数和执行时间配额

沙箱身份与业务身份要分开

  • 不把宿主环境变量整体传入
  • 按 Tool 即时获取短期凭据
  • 凭据不写磁盘、不进入模型 Context 和 Trace
  • 撤销用户权限后在途 Run 必须重新校验

环境生命周期决定残留风险

  • 每任务创建还是安全复用
  • 镜像和依赖来源校验
  • 输出 Artifact 经过扫描再导出
  • 销毁后验证卷、缓存、日志和凭据已清理

危险操作需要可理解的授权

  • 展示命令、路径、网络目标和预期副作用
  • 审批范围绑定参数与时限
  • 记录实际执行而非只记录模型意图
  • 审计日志避免包含秘密和无界输出

用对抗任务检验边界

  • 路径穿越、符号链接和工作区逃逸
  • Fork Bomb、磁盘填满和超时杀进程
  • DNS/重定向绕过网络白名单
  • 依赖投毒和恶意 Artifact
  • 跨租户缓存与残留数据读取