概要
pac4j-jwt は Java の認証ライブラリ pac4j の JWT モジュールです。JwtAuthenticator が暗号化 JWT を処理する際に、リモート攻撃者が認証トークンを偽造できる認証バイパス脆弱性が存在します。
攻撃者がサーバの RSA 公開鍵を所持している場合、任意の subject と role claims を持つ JWE-wrapped PlainJWT を作成できます。署名検証がバイパスされるため、管理者を含む任意のユーザーとして認証が成立します。
RSA 公開鍵は通常、JWKS エンドポイントや証明書チェーンを通じて公開されているため、攻撃の前提条件のハードルは低いです。
CVSSベクトル
| 項目 | 値 |
|---|---|
| CVSSスコア | 9.1 |
| 深刻度 | Critical |
| CWE | CWE-347 (暗号署名の不適切な検証) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| pac4j-jwt | pac4j | < 4.5.9 |
| pac4j-jwt | pac4j | < 5.7.9 |
| pac4j-jwt | pac4j | < 6.3.3 |
修正バージョンと回避策
- 修正バージョン: pac4j-jwt 4.5.9 / 5.7.9 / 6.3.3 へのアップデート
- 暫定回避策: JWE(暗号化JWT)の利用を一時的に無効化し、署名付きJWTのみを使用する
関連リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
