前言¶
DeepSeek Harness(DSH)運行在宿主機的 Node 進程權限下。當通過 dsh plugin add 安裝插件時,底層的 prepare / preinstall 等生命週期腳本會在插件 apply() 之前執行。此外,Agent 調用 MCP 或外部工具時,擁有讀寫本地文件、密鑰和發送數據的權限。傳統的“安裝完再加載”的插件機制無法攔截這些安裝階段的惡意行爲。
dsh-shield 是一個安全、信任與策略層,旨在解決上述問題。它不依賴“盲目信任”來運行工具,而是通過“驗證”來構建安全邊界。
是什麼¶
dsh-shield 是 DeepSeek Harness 的安全防火牆。它採用兩層架構,共用同一套安全模型,在安裝前和運行時攔截風險:
- 預檢掃描器(CLI):在
dsh plugin add之前,下載、解包並解析目標代碼,但不執行它。通過 AST(抽象語法樹)分析源碼,而非簡單的正則匹配。 - 運行時護欄(Harness Plugin):在 Harness 內部攔截工具調用、MCP 交互和數據出口。它掛在官方的
tools/pre-execute和ctx.tools.guard()上。
核心功能¶
基於已覈實事實,dsh-shield 提供以下能力:
- 預安裝掃描:對目錄、壓縮包、GitHub 倉庫或 npm 包進行靜態掃描,檢查源碼風險。
- 運行時攔截:在工具執行前介入,根據策略返回
allow、ask或deny。 - 操作後審計:記錄所有安全決策和操作日誌。
- MCP 安全管理:區分“未知”與“已審查”的 MCP Server,控制讀寫權限。
- 數據出境控制:根據數據分級(public, internal, personal, confidential, credential, secret)限制數據流出本機。
- Prompt Injection 檢測:識別指令腔,並結合行爲策略進行攔截(如
SHIELD-INJECT-002)。 - 多級策略:支持
permissive(寬鬆)、balanced(平衡,默認)、strict(嚴格)、enterprise(企業)四種策略檔位。 - 信任清單生成:生成包含包名、來源、Commit、風險分和能力的 JSON 文件,用於信任庫管理。
安裝與啓用¶
使用前需準備 Node.js 20+ 和 pnpm。
1. 安裝預檢掃描器(CLI)¶
在安裝任何 Harness 插件之前,先安裝並構建 dsh-shield CLI:
git clone https://github.com/245678000000/dsh-shield.git
cd dsh-shield
pnpm install
pnpm build
pnpm link --global
驗證安裝是否成功:
dsh-shield --help
dsh-shield doctor
2. 安裝運行時護欄(Plugin)¶
安裝到 DeepSeek Harness 的本地目錄(注意:不要直接 git 安裝源碼,除非已掃描並鎖定 SHA):
dsh plugin --profile web add /你的路徑/dsh-shield
安裝後重啓 dsh web(或對應 profile)。默認策略爲 balanced。自定義策略文件位於:
~/.dsh-shield/policy.yaml
典型用法¶
安裝完成後,可以在安裝插件前或運行期間使用以下命令。
預檢掃描¶
掃描一個會拉起進程的合成插件(不會執行它):
dsh-shield scan ./fixtures/plugins/process
掃描結果會顯示風險等級(如 HIGH / REVIEW BEFORE INSTALLING)。掃描乾淨插件則顯示無高風險發現:
dsh-shield scan ./fixtures/plugins/clean
信任與策略管理¶
生成信任清單,記錄包的元數據和風險:
dsh-shield manifest ./fixtures/plugins/process
檢查特定目標的策略匹配情況:
dsh-shield policy check <target>
對比不同版本的掃描結果:
dsh-shield diff old.json new.json
適用場景與注意¶
- 適用場景:需要在 DSH 中管理大量第三方插件或 MCP Server 的開發者;對數據出境敏感的團隊;需要審計 Agent 行爲的安全運營團隊。
- 關鍵注意:
- dsh-shield 不會對目標運行
npm install或require(),僅做 AST 分析。 - 它不聲稱 100% 安全,也無法證明任意插件絕對無害。
- 如果策略配置損壞,系統會採取“fail closed”(拒絕)策略,不會靜默放行。
- 該插件不依賴 Fork AgentLoop 或修改 Harness 源碼,而是通過官方提供的鉤子接入。
- dsh-shield 不會對目標運行
短結尾¶
dsh-shield 通過“掃描-分類-攔截-審計”的閉環,爲 DeepSeek Harness 提供了一層實用的安全護欄。它不保證完美防禦,但能在安裝前發現風險,在運行時控制敏感操作,是構建可信 Agent 工具鏈的必要組件。
更多詳情與源碼:
* GitHub: https://github.com/245678000000/dsh-shield
* 插件目錄: https://www.skillhub.cn/plugins/245678000000/dsh-shield