dsh-plugin-guard:DeepSeek Harness 插件的安全檢查工具

前言

DeepSeek Harness (DSH) 的核心理念是“一切皆插件”。當開發者需要引入第三方插件或審查社區代碼時,直接運行或安裝可能帶來風險,包括提示詞注入、供應鏈投毒或潛在的惡意行爲。dsh-plugin-guard 旨在解決這一安裝前驗證問題,提供靜態安全掃描能力。

插件定位

這是一個 DeepSeek Harness 插件的安裝前安全檢查插件。它默認離線、只讀,不執行被掃描代碼,也不跟隨符號鏈接,更不會把插件內容發送給大模型或第三方服務。

插件由開發者 MangShe3-0 維護,採用 MIT 許可證。

核心功能

插件通過靜態分析檢查以下風險信號:

  • 提示詞注入:覆蓋系統/用戶指令、隱藏行爲、工具描述投毒、中英文隱蔽指令。
  • 文件勒索與破壞:遞歸刪除、磁盤格式化、權限破壞、批量加密、贖金文本。
  • 憑據與數據外傳:環境變量枚舉、SSH/雲憑據、瀏覽器數據、secret → network 組合鏈。
  • 供應鏈:安裝生命週期腳本、下載即執行、未鎖定依賴、編碼載荷。
  • 動態執行與越權:eval、shell/subprocess、持久化、自修改、關閉 TLS 校驗。
  • DSH 元數據:package.json 可解析性和 dsh.bundle.patch 激活聲明。
  • Unicode 欺騙:零寬字符與雙向控制字符。

安裝與啓用

安裝前,請確保在當前目錄生成了 tarball 包:

npm pack

隨後,將包安裝到實際啓動 Web UI 的同一個 profile。官方默認 Web UI 通常使用 web profile:

dsh plugin --profile web add ./dsh-plugin-guard-0.1.1.tgz
dsh --profile web --dump-config

配置中出現 id: plugin-guard 即表示安裝成功。隨後停止並重新運行 dsh web,新建對話即可獲得 plugin_guard_scan 工具。自定義 profile 用戶需將上述命令中的 web 替換爲實際運行的 profile 名稱。

典型用法

在 Harness 中使用

將待審插件下載或解壓到當前工作區,在對話中要求 Harness 掃描:

使用 plugin_guard_scan 掃描 ./untrusted-plugin,先不要安裝或運行它。

工具默認只允許掃描當前 DSH 會話中經過驗證的 session.header.cwd。相對路徑從該會話 workspace 解析。若需掃描額外目錄,需在啓動 Harness 前設置環境變量:

export DSH_PLUGIN_GUARD_ROOTS="/absolute/review/inbox:/another/allowed/root"

獨立命令行

不安裝到 Harness 也能直接掃描:

node ./bin/dsh-plugin-guard.js /path/to/plugin
node ./bin/dsh-plugin-guard.js /path/to/plugin --json

退出碼說明

  • 0:可繼續人工審查。
  • 1:謹慎,存在部分風險。
  • 2:不要安裝,存在高危風險。
  • 3:掃描失敗。

驗證與測試

插件自帶測試套件,確保掃描邏輯正確:

npm test
npm run check

適用場景與注意事項

該工具適用於需要在引入外部 DSH 插件前進行安全評估的開發者。它基於靜態規則分析,退出碼 0 僅代表“可以繼續人工審查”,不代表“絕對安全”。

已知邊界:
* 靜態掃描只能發現已知風險信號,不能證明插件安全。
* 不分析圖片、加密文件、編譯二進制或運行時下載後的真實行爲。
* 正則規則可能誤報,也可能被高級混淆繞過。
* 不聯網查詢 OSV/CVE;依賴漏洞需要另行使用可信的 SCA 工具檢查。
* 不替代沙箱、最小權限、網絡出口控制、人工代碼審查和可恢復備份。

參考資料

  • 項目地址:https://github.com/MangShe3-0/dsh-plugin-guard
  • 目錄頁:https://www.skillhub.cn/plugins/MangShe3-0/dsh-plugin-guard
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜