dsh-security-guard:面向 DeepSeek Harness 的靜態與運行時安全插件

前言

DSH 的插件生態強調“一切皆插件”。插件可以擴展命令、工具和工作區能力,但也意味着第三方代碼會進入本地運行環境。對於智能體開發者來說,常見問題是:插件裏有沒有惡意調用?會不會注入提示詞?會不會產生不必要的 token 消耗?手動審查源碼、安裝腳本和工具調用成本高,而且運行時危險動作也很難逐條盯住。

下面介紹 bigclawd/dsh-security-guard。它把安裝前靜態掃描和運行時危險動作攔截放到同一套機制裏,並用 block / warn / clean 給出結論。

這是什麼

dsh-security-guard 是 bigclawd 維護的 DeepSeek Harness 安全插件,許可證爲 MIT。

它定位爲靜態掃描與運行時防護:掃描 DSH 插件和工作區中的惡意代碼、上下文注入與 token 浪費,攔截危險的運行時工具調用和提示步驟,並暴露 /scan 命令、plugin_scan 工具、掃描 Web 面板和用戶管理的 allowlist。

它的關鍵約束是:靜態分析部分只做靜態分析,不導入、不求值、不執行被掃描的代碼。

核心功能

  • 靜態掃描:對源文件做規則分析;被掃描代碼不會被導入或執行。
  • 運行時觀察:在危險工具調用、提示步驟和文件操作發生前進行攔截。
  • 結果分類:結論歸類爲 block、warn 或 clean,可寫入 JSON 或人類可讀報告。
  • 規則擴展:規則爲普通 JSON,可按 id 覆蓋。
  • 安裝鉤子:通過 profile-manifest watcher 自動掃描新安裝的插件。
  • 使用入口:/scan 命令、plugin_scan 工具、即時 Web 面板、用戶管理 allowlist。

運行時觀察默認啓用。

安裝

在默認 profile 中安裝:

dsh plugin --profile default add dsh-security-guard

在宿主應用中啓用

下面是資料給出的宿主應用配置示例。它配置規則目錄、掃描大小限制、運行時攔截、allowlist 文件、Web 面板路徑和安裝鉤子輪詢間隔。

ctx.plugin(Guard, {
  rulesDir: 'config/guard-rules',
  scan: {
    maxFiles: 5000,
    maxFileSize: 4 * 1024 * 1024,
    skipSegments: ['node_modules', '.git', 'dist', 'lib']
  },
  runtime: {
    enabled: true,
    blockOnSeverity: ['block'],
    maxFindingsPerScan: 200
  },
  allowlist: {
    file: 'data/guard-allowlist.json'
  },
  web: {
    enabled: true,
    path: '/scan'
  },
  installHook: {
    enabled: true,
    intervalMs: 5000
  }
})

這段配置的作用是把插件註冊到宿主應用,並指定靜態掃描、運行時攔截、allowlist 和 Web 面板的運行參數。

典型用法

靜態掃描

對人可讀報告:

/scan ./plugin-dir

輸出機器可讀 JSON:

/scan ./plugin-dir --json

寫入指定報告文件:

/scan ./plugin-dir --json --out report.json

plugin_scan 工具

也可以使用 plugin_scan 工具,參數爲:

target, severity, json, out

Web 面板

Web 面板由 harness web server 在配置路徑下提供,默認路徑爲:

/scan

適用場景與注意

適合以下場景:

  • 安裝第三方 DSH 插件前做靜態檢查。
  • 對工作區文件做掃描和報告輸出。
  • 對運行時工具調用和提示步驟做危險動作攔截。
  • 用 JSON 規則、allowlist 和 severity 覆蓋維護掃描策略。

需要注意:

  • 插件會獲得當前 dsh 進程權限。使用前應檢查源碼、許可證和安裝時執行行爲。
  • 建議先掃描再安裝。惡意 postinstall 會在包安裝時運行;先用 /scan 檢查目標包,再執行 dsh plugin add。
  • 誤報可能存在。允許使用 allowlist 和 ruleSeverity 覆蓋處理。
  • 混淆是軍備競賽。該插件是風險降低層,不是安全證明。

結尾

dsh-security-guard 的價值在於把插件安裝前檢查、工作區掃描和運行時危險動作攔截整合到 DSH 中使用,並用 block / warn / clean 給出可審計的結果。

GitHub 倉庫:

https://github.com/bigclawd/dsh-security-guard

本文資料未提供已覈實的社區目錄頁鏈接。

羽毛球分组比赛记分
小程序二维码

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

小夜