AIDEFEND in Action AIA-0115 實證研究 發布於 AIA: 2026年10月26日

vLLM Harmony:工具接續遺失隔離資訊,讓其他租戶探測提示內容

vLLM 是部署語言模型推論服務的引擎,會重用提示詞前綴的計算結果來加快回應。受影響的 GPT-OSS Harmony Responses 工具流程,第一輪有保留 cache_salt 隔離資訊,工具回傳後的接續請求卻沒有。另一個租戶可提交猜測的接續內容,觀察精確的快取 token 計數,判斷那段內容是否曾被處理。這個漏洞的公開識別編號是 CVE-2026-105752;它暴露的是快取內容是否存在的訊號,不是任意擷取完整對話。公告將 0.30.0 列為修補版本。

Privacy LeakageAI Deployment SecurityMulti-Tenant AIAI Infrastructure
4 項對應的 AIDEFEND 防禦手法

威脅分析

  • 沿著工具接續看隔離資訊:第一輪請求有帶隔離值,但工具回傳後,vLLM 重建下一輪推論輸入時遺漏該值。因此,即使呼叫端已要求隔離,接續前綴仍會使用全域、未隔離的快取。
  • 釐清對方能觀察到什麼:另一個租戶需要先猜測接續內容,再檢查 cached_tokens_per_turn。這可以判斷變化範圍較小的猜測內容是否曾被處理,並不等於能下載未知的完整對話。
  • 修正位置在推論服務內部:租戶綁定必須通過每次內部接續、工作程序切換與快取重用判斷。閘道送出的第一個請求正確,或已修過較早的快取漏洞,都不能證明這條接續路徑已受保護。

適用的 4 項 AIDEFEND 防禦手法

AID-H-003.010
Deployed AI Software Vulnerability Remediation Lifecycle
極高
將每個受影響工作程序更新到 vLLM 0.30.0 或受支援的更新修補版,確認實際載入的引擎版本。以兩個合成租戶測試 Harmony 內建/MCP 工具接續流程,不能只測單輪請求。必須確認每次接續都保留隔離資訊,且另一個租戶無法觀察受測租戶預熱的前綴。在此之前,先停用受影響的共用前綴快取路徑,或隔離推論服務;只在第一輪由閘道加上 cache_salt,無法修正伺服器內部遺失資訊的問題。
AID-H-027
Inference Cache Integrity, Partitioning & Safe Reuse
高
從已驗證的租戶與安全脈絡產生不可任意指定的快取分區,讓引擎在每次查找與內部重新提交時,都使用對應的重用隔離值。這需要已修補的引擎或確實保留 Harmony 工具接續資訊的整合元件。以另一個租戶檢查 cached_tokens_per_turn 這個實際訊號及快取重用結果;若引擎缺少必要介面或仍會遺失隔離值,就應停用共享或改到隔離資源,不能把閘道傳過一次隔離值視為已受保護。
AID-H-032.002
Cross-Tenant Serving-State Isolation
高
若無法證明跨租戶重用安全,推論服務管理者就應停用共用前綴/KV 快取,或為各租戶配置分離的引擎與快取。工作程序替換、擴充與故障切換也要維持相同隔離,並讀回實際生效的設定。這項控制改變的是共用推論服務的配置,不把 AID-H-027 負責的隔離值檢查再算一次。只使用 API 的客戶,需要供應商證據或真正隔離的服務方案。
AID-H-032.003
Inference Telemetry & Debug Surface Restriction
高
推論平臺開發者可不在一般租戶回應中提供逐輪精確快取命中計數,改由另行授權的維運監測介面提供。所有 Responses、串流與診斷路徑都要執行相同欄位限制,並直接驗證實際回傳內容。這能在快取修補之外,移除本案展示的 cached_tokens_per_turn 探測訊號;可能殘留的時間差訊號,仍要靠快取隔離處理。這是標準用量欄位,必須明確納管,不能假設關閉除錯或要求一般 API 登入就已保護。

身為資安防禦者,我們應該這麼做

  • 將受影響 vLLM 工作程序更新到受支援的修補版,以合成租戶測試真正的 Harmony 工具接續。
  • 由伺服器已驗證的身分產生快取分區,檢查每次重新提交引擎時的隔離值。無法確認引擎支援隔離時,就停止使用該共用路徑。
  • 在跨租戶測試通過前,停用共用前綴/KV 快取,或分離引擎與快取。測試要涵蓋重新啟動與故障切換,也要檢查本案實際暴露的快取 token 計數。
  • 一般回應不提供逐輪精確快取命中計數,詳細監測資訊改走獨立授權介面。直接檢查 JSON 與串流輸出,時間差外洩仍須隔離處理。

結論

AIDEFEND  把這個缺陷對應到修補驗證、由引擎確實執行的快取分區,以及推論狀態隔離。工具回傳後仍必須維持同一套安全條件;若隔離值在內部接續時遺失,就無法保護其他租戶曾經處理的內容。

最後更新: