透過未驗證的 x5c 參數繞過 JSON Web 權杖簽章

high Web App Scanning Plugin ID 115302

概要

透過未驗證的 x5c 參數繞過 JSON Web 權杖簽章

說明

可以簽署 JSON Web Token,以防止資料竄改。「x5c」(X.509 憑證鏈結) 標頭參數可以內嵌必須使用其公開金鑰來驗證權杖簽章的憑證。

當應用程式信任嵌入在「x5c」標頭中的憑證而不是它控制的金鑰時,攻擊者可以在令牌標頭中嵌入自我簽署的憑證,並使用相符的私密金鑰簽署偽造的令牌,該應用程式將接受該私密金鑰。

視權杖使用方式而定,攻擊者可利用此弱點來偽造有效權杖並模擬其他使用者,或取得進一步的權限。

解決方案

確保應用程式根據其控制的受信任金鑰驗證每個 JSON Web 權杖。影響金鑰解析的標頭參數 (kid、jwk、jku、x5u、x5c) 絕對不能按原樣受信任:將驗證釘選到已知金鑰或嚴格的允許清單、拒絕標頭選擇意外金鑰的權杖,以及清理用於查詢或載入金鑰的任何值。

另請參閱

https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries

https://cheatsheetseries.owasp.org/cheatsheets/JSON_Web_Token_for_Java_Cheat_Sheet.html

https://portswigger.net/web-security/jwt

https://research.securitum.com/jwt-json-web-token-security/

Plugin 詳細資訊

嚴重性: High

ID: 115302

類型: Check Based

已發布: 2026/7/17

已更新: 2026/7/17

掃描範本: api, basic, full, mcp, pci, scan

風險資訊

VPR

風險因素: Medium

分數: 5.7

百分位: 0

CVSS v2

風險因素: High

基本分數: 7.8

媒介: CVSS2#AV:N/AC:L/Au:N/C:N/I:C/A:N

CVSS 評分資料來源: Tenable

CVSS v3

風險因素: High

基本分數: 7.5

媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

CVSS 評分資料來源: Tenable

CVSS v4

風險因素: High

Base Score: 8.7

Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N

CVSS 評分資料來源: Tenable

參考資訊