dsh-plugin-audit:DSH 第三方插件的安全審計插件

前言

DSH 可以安裝第三方插件。插件進入 profile 後,可能觸達文件、進程、網絡、環境變量和憑據路徑。dsh-plugin-audit 提供靜態權限畫像和運行時哨兵,幫助管理員在運行第三方插件前判斷它的權限面。

這是什麼

dsh-plugin-audit 是 DeepSeek Harness 的安全審計插件,由 jkrandom-sudo 維護,許可證爲 MIT,當前版本爲 0.1.4。它做兩件事:用 plugin_audit 靜態掃描第三方插件,並在運行時對高風險工具調用請求審批。

核心功能

下面先介紹靜態畫像,再介紹運行時哨兵。

靜態權限畫像

plugin_audit 掃描一個插件目錄。它會查看插件源碼目錄、package.jsoncordis.patch.yml,然後返回一張權限畫像卡片,並附文件與行號證據。

靜態掃描器會報告它發現的每一個網絡面。它不根據 allowedHosts 做白名單過濾,也不做最終風險裁決;報告是給人工複覈用的證據。

運行時哨兵

dsh-plugin-audit 監聽 DSH 的 tools/pre-execute 事件。當一次待執行工具調用命中以下規則時,哨兵會請求審批:

1、工具參數引用了憑據路徑;
2、工具調用外發數據,目標主機不在 allowedHosts 中;
3、寫工具目標是 home 目錄下的 dotfile。

如果沒有可用審批通道,插件會拒絕該工具調用,而不是靜默放行。

哨兵只檢查工具調用名稱和參數,不讀取文件、環境變量,也不檢查調用參數之外的會話內容。

只讀約束

掃描器按約定只讀。每一份報告都攜帶 writesPerformed: false。可選的 invariant companion 可以強制這個標記。

掃描器的掃描邊界如下:

  • 最多 400 個文件,單文件上限 256 KB;
  • 跳過 node_modules.gitlibdist
  • 不跟隨符號鏈接目標;
  • 基於源碼文本,而不是 AST,因此字符串和註釋也可能被報告;
  • 只包含構建產物的包至少會得到 NOTICE 級別;
  • 插件不發起網絡調用,也沒有遙測;報告中的主機是從被掃描文本中提取的,不會被訪問。

安裝與啓用

先安裝到 web profile:

dsh plugin --profile web add dsh-plugin-audit

經過上面的步驟後,在已安裝該插件的 profile 中使用 plugin_audit

移除插件:

dsh plugin --profile web remove dsh-plugin-audit

典型用法

在會話中可以使用這樣的示例:

Audit the plugin at ~/some-third-party-plugin with plugin_audit

也可以直接調用工具:

{
  "path": "/absolute/path/to/plugin",
  "format": "markdown"
}

這裏 path 指向要審計的插件目錄,formatmarkdown

配置

哨兵和允許主機通過 profile 的 cordis.patch.yml 配置:

sentinelEnabled: true
allowedHosts:
  - example.com
  - api.example.com

sentinelEnabled 控制運行時哨兵是否啓用;allowedHosts 配置允許的外發主機。靜態掃描器不受 allowedHosts 影響。

兼容性

要求
DSH mainline verified against 2026-08-14 snapshot
Node.js ^22.19.0 || >=24.0.0
Cordis ^4.0.0-rc.7(peer dependency)

適用場景與注意

適合在以下場景使用:

  • 安裝 DSH 第三方插件前,先查看它的權限畫像;
  • 在運行時攔截引用憑據路徑、訪問未知主機或寫入 home dotfile 的工具調用;
  • 爲不同 profile 配置不同的 allowedHosts

注意:DSH 插件以當前 DSH 進程權限運行。安裝前應檢查源碼、許可證和配置項。審計卡片是證據,不等於安全結論;對敏感插件,應人工複覈文件、網絡、進程和憑據相關發現。

鏈接

GitHub 倉庫:https://github.com/jkrandom-sudo/dsh-plugin-audit

目錄頁:https://www.skillhub.cn/plugins/jkrandom-sudo/dsh-plugin-audit

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

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

小夜