vLLM 請求扇出未設界線、Apache HttpComponents TLS 驗證靜默失效、Shindig 遭 XStream 反序列化 RCE
github.com/advisories、openwall.com oss-security · 2026-08-13
本次摘要包含三則本週公開的漏洞:vLLM completions API 對 prompt 陣列缺乏上限、Apache HttpComponents Client 非同步傳輸的主機名驗證在特定設定下靜默失效、以及已停止維護的 Apache Shindig 因 REST API 對 XStream 反序列化未加限制而可被觸發任意程式碼執行。三者分別以 GHSA-87x5-vmc3-756j、CVE-2026-71290、CVE-2026-66256 追蹤,受影響元件與修補進度各不相同。
vLLM:completions 端點的請求扇出機制
GHSA-87x5-vmc3-756j(對應 CVE-2026-73559)指出 /v1/completions 端點的 prompt 參數可接受字串清單或 token-id 清單,程式碼會把清單中的每個元素轉成獨立的引擎輸入、各自建立一個引擎產生器,過程中未對清單長度設上限。具體來說,advisory 描述該端點「把每個元素轉成一個獨立的引擎輸入,為每個元素建立一個引擎產生器」,且底層的 prompt_to_seq() 函式會原樣回傳 list[str] 或 list[list[int]],不做長度限制。已通過驗證的使用者只要送出包含數千個 prompt 元素的請求,就能迫使伺服器配置與元素數量成比例的後端資源。
POST /v1/completions
Content-Type: application/json
{
"model": "example-model",
"prompt": ["a", "a", "a", ... /* 數千筆重複元素 */],
"max_tokens": 16
}此問題的 CWE 分類為 CWE-400(Uncontrolled Resource Consumption),GHSA 頁面標示 CVSS v3.1 為 6.5(中等),影響網路可達、低複雜度、需低權限,衝擊面為可用性(High)。受影響版本為:
- vllm >= 0.19.0, < 0.26.0(受影響)
- vllm 0.26.0(已修補)
advisory 連結了實際修補的 GitHub commit 675f4295(對應 PR #47845),修補方式是為 prompt 清單加上長度上限,避免單一請求無限制展開為多個引擎請求。緩解方式即升級至 0.26.0 或更新版本。
Apache HttpComponents Client:非同步傳輸的主機名驗證失效
CVE-2026-71290 記載於 openwall oss-security 公告,問題在於 HttpComponents Client 的非同步(async)傳輸層未正確套用主機名驗證設定:HostnameVerificationPolicy#BUILTIN 在非同步版本的 HttpClient 上「沒有效果」。這代表即便開發者設定了內建的主機名驗證政策,非同步請求實際上仍未檢查憑證的主機名是否與目標網域相符,使進行中間人攻擊的攻擊者能以其他網域簽發的合法憑證冒充目標伺服器,攔截或竄改本應加密的連線內容。公告明確指出經典(同步)版本的 HttpClient 不受此問題影響,問題僅限於 async 傳輸路徑。
受影響版本為 org.apache.httpcomponents.client5:httpclient5 5.4-alpha 到 5.6.3:
- httpclient5 5.4-alpha ~ 5.6.3(受影響,僅 async 傳輸)
- httpclient5 5.6.4(已修補)
修補與緩解方式是升級至 5.6.4 或更新版本;公告未附上明確的 CVSS 分數,本文亦不自行推算。發現者為 n0mi1k。
Apache Shindig:OpenSocial REST API 的 XStream 反序列化 RCE
CVE-2026-66256 見於 openwall oss-security 公告,root cause 是 Shindig 的 OpenSocial REST API 對不受信任的輸入做 XStream 反序列化。XStream 會把 XML 直接映射回 Java 物件圖,若未限制可還原的類別範圍,攻擊者能在 XML payload 中指定觸發副作用的類別與建構參數,藉由物件建構、setter 呼叫或既有類別鏈串接出任意程式碼執行——這正是本次漏洞的機制:公告指出「有權存取 Shindig REST API 的使用者可送出特製請求,觸發伺服器上的任意程式碼執行」。受影響範圍是 shindig-common 與 shindig-social-api 的所有版本:
- org.apache.shindig:shindig-common(所有版本)
- org.apache.shindig:shindig-social-api(所有版本)
公告將嚴重程度標示為 Important,並明確說明不會有修補版本推出:「由於本專案已經退役,我們不打算釋出修正此問題的版本。建議使用者尋找替代方案,或將此執行個體的存取限制在受信任的使用者範圍內。」發現者為 Horizon3.ai 的 Daryle Bourque 與 Noah King。
| 識別碼 | 元件 | 嚴重程度 | 修補狀態 |
|---|---|---|---|
GHSA-87x5-vmc3-756j | vLLM completions API | CVSS 6.5(中等) | 0.26.0 已修補 |
CVE-2026-71290 | Apache HttpComponents Client5 (async) | 未公告 CVSS | 5.6.4 已修補 |
CVE-2026-66256 | Apache Shindig(shindig-common / shindig-social-api) | Important | 不會修補,專案已退役 |
原始來源:GHSA-87x5-vmc3-756j、oss-security: CVE-2026-71290、oss-security: CVE-2026-66256