dsh-taintguard:DeepSeek Harness 的間接提示注入防護

前言

DeepSeek Harness(DSH)智能體在瀏覽網頁或讀取倉庫時,會將第三方文本放入與操作員指令相同的上下文通道中。由於模型缺乏可靠手段區分來源,網頁內容、README 或 MCP 工具結果可能誘導智能體執行敏感命令或發佈文件。該插件不試圖讓模型免疫此類攻擊,而是通過來源污染限制第三方文本的影響範圍,對後續的特權調用進行攔截,並在參數中檢測到憑據時直接拒絕。

插件介紹

該插件由 sashankh 維護,屬於 admin-security 分類,採用 MIT 許可證。它是一個爲 DeepSeek Harness 設計的間接提示注入防護工具,旨在通過數據流追蹤提供相對可控的防護手段。

核心功能

該插件主要提供以下能力:
* 間接提示注入防護:檢測並響應非直接注入的攻擊嘗試。
* 來源污染:標記工具輸出是否來自不可信來源。
* 特權調用攔截:根據污染狀態限制後續的特權工具調用。
* 憑據拒絕:無條件拒絕將憑據材料傳遞給網絡工具。
* 運行模式:支持 observe(觀察)、ask(詢問)和 deny(拒絕)三種模式。

安裝與啓用

安裝時需指定 profile 名稱,使用官方發佈的預構建包:

dsh plugin --profile <name> add https://github.com/sashankh/dsh-taintguard/releases/download/v0.1.0/dsh-taintguard-0.1.0.tgz

安裝後,可通過 dsh --profile <name> --dump-config 驗證插件層是否已添加。

配置與用法

建議先在 observe 模式下運行,觀察插件對流量的標記情況,確認無誤後再切換到 ask 或 deny 模式。

- id: taintguard
  name: dsh-taintguard
  config:
    mode: observe

工作原理與限制

該插件基於 AgentDojo v1.2.1 進行了測量評估:
* 內容檢測器:僅能捕獲 9.9% 的攻擊載荷(35/355),且對拼寫錯誤(如 iunstructions)無能爲力。因此,它不能作爲安全邊界,只能作爲遙測信號。
* 來源污染:能捕獲 100% 的注入攻擊,但會限制 97.6% 的關鍵調用(80/82)。這是一種“粗糙但完整”的防護策略。

插件的核心價值在於無條件拒絕將憑據材料傳遞給網絡工具,從而阻斷數據外泄環節。

兼容性

  • Node.js:需要 Node.js >= 22。
  • DeepSeek Harness:兼容 @deepseek-ai/dsh-tools、dsh-llm ^0.1.0-rc.6 以及 @deepseek-ai/cordis ^4.0.1。

總結

dsh-taintguard 爲 DeepSeek Harness 提供了基於來源的數據流追蹤機制。雖然其模式檢測器存在侷限性,但通過來源污染和憑據拒絕機制,能夠在一定程度上緩解間接提示注入的風險。

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

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

小夜