DeepSeek Harness(DSH)允許用戶通過插件擴展功能,將大模型與系統工具連接。但在將工具調用能力交給 AI 時,直接暴露系統命令行或文件系統權限存在安全風險。dsh-plugin-tool-guard 插件旨在爲 DSH 提供一個運行時的安全守衛層,在不修改 Agent 業務代碼的前提下,攔截危險操作並限制訪問範圍。
插件概況¶
該插件由 zhaoxuejie 維護,屬於 admin-security 類別。它通過內置規則引擎和人工審批機制,對每一次工具調用進行攔截、放行或審計。
核心功能¶
插件提供以下核心能力:
- 危險命令黑名單:內置正則表達式,直接攔截
rm -rf、mkfs、dd、shutdown等危險命令。 - 敏感文件黑名單:使用 glob 模式(如
.env、*.pem、id_rsa)禁止 AI 讀取敏感文件。 - 路徑白名單:限制 AI 只能操作指定目錄(默認爲當前工作目錄),防止通過
../繞過。 - 寫入保護與人工審批:覆蓋已有文件或刪除文件需人工審批,創建新文件通常放行。
- 審計日誌:記錄每次調用的時間、會話、脫敏入參及決策結果,支持會話隔離。
- 三檔安全級別:支持
loose(寬鬆)、standard(標準,默認)、strict(嚴格)三種模式。 - 管理工具:提供
guard_*系列工具、HTTP 端點及 GUI 面板進行統一管理。
安裝與啓用¶
插件是 DSH 原生插件,需安裝到特定的 profile 中才能生效。安裝命令如下:
dsh plugin --profile web add dsh-plugin-tool-guard
安裝完成後,需重啓 DSH 或重新加載 profile。卸載時使用:
dsh plugin --profile web remove dsh-plugin-tool-guard
典型用法¶
安裝並啓用後,插件會根據配置攔截不符合規則的請求:
- 攔截敏感文件:AI 請求「讀取項目裏的 .env」,會被拒絕(命中敏感文件黑名單)。
- 攔截危險命令:AI 請求「執行 rm -rf D:」,會被拒絕(命中危險命令黑名單)。
- 路徑限制:AI 請求讀取工作區外的文件(如
C:\Windows\win.ini),會被拒絕。 - 人工審批:在
strict級別下,AI 請求「寫一個新文件 demo.txt」,會彈出審批卡,需人工確認。
注意事項¶
- 零侵入:該插件不修改 Agent 業務代碼,掛載即生效,卸載即失效。
- 審計日誌:默認情況下,審計日誌僅保存在內存中。若配置
audit.keepAfterUnload: true,卸載時可將日誌歸檔到~/.deepseek-harness/audit/目錄。 - 權限限制:插件以當前 DSH 進程的權限運行,安裝前應檢查源碼與許可證。
參考資料¶
- GitHub 倉庫:https://github.com/zhaoxuejie/dsh-plugin-tool-guard
- 社區目錄:https://www.skillhub.cn/plugins/zhaoxuejie/dsh-plugin-tool-guard