DeepSeek Harness Security
将 DeepSeek Harness Security 接入 DeepSeek API
DeepSeek Harness 默认本地运行,但“本地”不等于无害。一个有用的 Coding Agent 会读取文件、启动进程,也可能调用联网工具。它的安全边界由工作区、权限策略、进程沙箱、插件信任、凭证与模型可见内容共同组成。
五层安全边界
1. 工作区
工作区是第一项影响范围决策。应该打开独立项目目录,而不是整个用户主目录。把不可信仓库与凭证目录、其他源码仓库分开。
2. 权限策略
审批用于约束超出当前策略的操作。评估新组合时应保留交互式确认。Full Access 会移除重要的人工检查点,并不会让重复工具调用变得更安全。
3. 进程沙箱
在受支持的 Linux 配置中,Bubblewrap 约束特定子进程。rc.1 通过隔离 PID namespace 修复了可能利用 /proc/<pid>/root 绕过限制的路径。依赖这层边界的用户应升级旧 RC。
但沙箱不是自动套在所有进程内插件外面的万能包装。需要确认到底是哪一个工具启动进程,以及它实际应用了什么策略。
4. Plugin 与 Preset 信任
Cordis Plugin 是可执行代码。Agent Preset 会选择插件与提示段,因此自定义 Preset 的信任等级实际上等于它挂载的能力。YAML 看起来是声明式配置,不代表它没有执行权限。
安装前应检查仓库所有者、包来源、安装脚本、网络请求、文件路径、凭证访问,以及插件运行在 Host Plane,还是仅向 Agent Scope 提供工具。
5. 模型可见内容
网页、仓库文件、MCP 返回值和检索文档可能包含间接指令。模型可能把不可信内容误当成任务要求,再利用合法工具执行违背用户意图的操作。
2026 年 8 月论文 Security Assessment of DeepSeek Harness with A.I.G 在保留 Harness Loop、工具注册表、模型适配器和 Session 事件路径的前提下研究了间接提示词注入。一篇论文不能代表通用安全评分,但说明 DSH 安全已经成为可实证研究的话题。
实用审查清单
- 固定准确的 DSH 与插件版本。
- 修改组合前备份 DSH Home。
- 第一次执行使用可丢弃工作区。
- 阅读
package.json、安装脚本和组合文件。 - 从最窄权限策略开始。
- 不把 API Key 写进 Prompt、仓库或测试 Fixture。
- 出现意外行为后检查 Trajectory 与 Session Log。
- 卸载插件后确认它是否改动了持久设置或文件。
可追踪性帮助调查,但不负责预防
Harness 会把模型可见消息、工具调用、结果和上下文注入写入 Append-only Session Log。这比一次性聊天记录更适合重放和事后分析。但日志不会在有害操作发生前自动阻止它,权限和沙箱边界仍不可替代。
本地插件与外部服务
本地插件可以按照自身权限读取本地数据。Web Tool、MCP Server、外部模型或其他服务可能上传它收到的内容。既要审查本地代码,也要阅读外部服务的数据处理政策。
常见问题
插件会自动运行在沙箱中吗?
不能这样假设。进程沙箱通过特定执行路径生效;进程内插件代码按照 Host 组合的权限运行。
rc.1 的 Bubblewrap 修复能让 DSH 安全运行恶意代码吗?
它关闭了一条重要路径,但整体安全仍取决于配置、内核与平台行为、工具实现和授予权限。
Session Log 能证明 Agent 为什么采取某个动作吗?
它记录模型可见事实和工具活动,是重要证据;但不能单独证明某个隐藏因果解释就是模型做出选择的唯一原因。