huahua-purge:DSH 宿主上的破甲引擎與紅隊演練臺

前言

在 DeepSeek Harness(DSH)裏跑多模型、做安全評測時,常見兩類摩擦:宿主會在 system 側注入身份與人格前綴,模型不一定按你寫的提示詞執行;紅隊類能力若拆成多個插件,還容易重複註冊、配置分散。社區目錄 skillhub.cn 上的 huahua-purge(維護者 azure5100,分類 admin-security)把「破甲(purge)」和「演練臺(redteam)」打成一個 bundle 宿主插件,面向同一套 DSH 環境。下面介紹它做什麼、怎麼裝、怎麼用,以及使用邊界。

這是什麼

huahua-purge 是 DSH 的 bundle 插件:通過 cordis.patch.yml 掛載宿主側邏輯與 Web 客戶端,一次安裝同時提供破甲引擎與可落盤的紅隊工作臺。名字裏的 purge 指清洗宿主注入的身份與人格,不是刪除用戶數據;官方說明稱相關動作可逆、可關閉。

本倉庫在 dsh-purge 1.1.71(MIT)基礎上衍生,許可證仍爲 MIT。插件以當前 DSH 進程權限運行,安裝前建議通讀 GitHub 倉庫 源碼與 NOTICE.md。

核心功能

破甲(purge)

  • 身份清洗:關閉 includeHarnessIdentity、清空 personaPrefix,保留工作目錄類提示。
  • 逐模型提示詞:按模型名配置不同破甲提示詞,切換模型時自動切換。
  • Hooks 防繞過:hooksDenyBypass 避免 Stop/steer 類 hook 被模型繞開。
  • 重試與續寫:請求被拒可自動重試(默認最多 3 次);可選長任務自動續寫。
  • 能力協議:capabilityProtocol 用於主會話與子角色之間的能力交接。

演練臺(redteam)

  • 五角色編排:主會話配合信息收集、資產梳理、漏洞發現、漏洞利用、內網滲透;併發上限 3。
  • 資產庫:攻防資產寫入 $DSH_HOME/huahua-purge 下 SQLite,可查詢、可導出。
  • 技能庫:skills/redteam/ 共 23 個 .md 實戰技能,按階段與目標條件掛載。
  • HTTP 橋:POST /redteam/api,連接界面與宿主側數據。

若曾安裝 dsh-redteam-mode、dsh-redteam-store、dsh-redteam-ui,本插件 patch 會將其設爲禁用,避免重複註冊。

環境要求

DSH  ≥ 0.2.1-rc.2
Node ≥ 20
peer: @deepseek-ai/cordis ^4.0.1

桌面端或 Web 端均可;bundle 插件改完後需完整重啓宿主(僅 Ctrl+R 刷新前端不夠)。

安裝與啓用

官方 Quick start 命令如下。DSH 生態採用「一切皆插件」;skillhub.cn 爲社區獨立目錄,與 DeepSeek / 幻方無官方從屬關係。

dsh plugin --profile desktop add "github:azure5100/huahua-purge"
# restart the host afterwards — bundle plugins need a full restart

裝完後建議覈對三件事(路徑以你的 $DSH_HOME 與 profile 名爲準):

  1. <DSH_HOME>/profiles/<name>/package.json 的 dependencies["huahua-purge"] 已指向安裝來源。
  2. 同一文件裏 dsh.profile.bundles 包含 huahua-purge。
  3. node_modules/huahua-purge/cordis.patch.yml 存在。

文檔提醒:dsh plugin add 若使用 file: 依賴會重新解包本地包,操作前可備份 profile 的 package.json。離線環境可用 tarball 方式:dsh plugin --profile desktop add "file:/path/to/huahua-purge-<version>.tgz"(路徑替換爲實際文件)。

經過上面的步驟後重啓宿主,設置中應出現 huahua-purge 與 huahua-purge 演練臺 兩個入口。

典型用法

破甲

入口:設置 → huahua-purge。

最小可用配置可參考官方手冊:

鍵 建議值 說明
enabled true 破甲總開關
autoApplyOnStart true 啓動自動生效
stripMnemon true 清洗記憶注入片段
autoRetry true,retryMax: 3 被拒自動重試
hooksDenyBypass true Hook 防繞過

完整配置項默認值見倉庫 README.zh-CN(如 injectOnce、postPrompt、autoContinue 等)。

演練臺

  1. 授權邊界:首次運行需在 $DSH_HOME/huahua-purge/drill-grant 確認授權範圍;未授權時不做主動掃描。
  2. 靶標:在主會話直接發送靶標名稱或域名;主會話按流水線拉起五角色(併發上限 3,前序無結論不會盲目前推)。
  3. 資產庫:設置 → huahua-purge 演練臺 → 資產庫;數據在 $DSH_HOME/huahua-purge/ 的 SQLite,可用 sqlite3 直接打開。
  4. 技能:按階段與已收資產類型自動匹配;也可在主會話點名,例如:用 fscan-intranet 這個技能掃一遍。

HTTP 橋端點:POST /redteam/api。

卸載示例:

dsh plugin --profile desktop remove huahua-purge
# 重啓宿主;若要清除本地演練數據可刪除 $DSH_HOME/huahua-purge/

適用場景與注意

適用:自有資產、授權滲透、CTF、內部攻防演練等受控環境。官方 Scope 明確插件面向授權場景;紅隊技能含可執行 payload 樣例,只對授權目標使用。

注意:

  • 破甲會關閉宿主身份注入,屬於高權限行爲變更,僅在受控環境啓用。
  • 插件與 DSH 同進程權限;安裝前檢查源碼與 MIT 許可證及衍生聲明。
  • skills/redteam/*.md 可能觸發殺軟對 payload 文本特徵的告警,文檔說明爲文本特徵而非可執行後門;可按手冊選擇排除目錄、改寫佔位符或僅使用破甲能力。
  • 資產庫在 $DSH_HOME/huahua-purge/,升級插件本體不會覆蓋該目錄;自改 node_modules 內代碼則升級前需自行備份。

更細的排錯(無入口、patch 報錯、與舊紅隊包衝突等)見倉庫 使用手冊。

結尾

huahua-purge 把宿主身份清洗、按模型破甲提示、Hook 防繞過與 23 技能紅隊演練臺、SQLite 資產庫和 HTTP 橋收進一個 bundle,適合已在 DSH 上做模型行爲與安全評測的開發者。目錄頁:https://www.skillhub.cn/plugins/azure5100/huahua-purge;源碼與文檔:https://github.com/azure5100/huahua-purge。

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

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

小夜