概要
Python の OAuth / OIDC ライブラリである Authlib のバージョン 1.6.5 から 1.6.6 において、JWT(JSON Web Token)の署名検証に重大な脆弱性が発見されました。攻撃者が JWT ヘッダの alg フィールドに none を指定し、空の署名を付与したトークンを送信すると、署名検証が正常にパスしてしまいます。
この脆弱性を悪用されると、認証システム全体が無効化される可能性があります。攻撃者は任意のクレーム(ユーザー ID やロールなど)を持つ JWT を偽造し、正当なユーザーになりすますことが可能です。OAuth 2.0 や OpenID Connect の認証フローを Authlib に依存しているアプリケーションは、すべて影響を受けます。
Authlib は Python エコシステムにおいて広く利用されている認証ライブラリであり、影響範囲は非常に広いと考えられます。速やかなバージョンアップが推奨されます。
CVSSベクトル
| 項目 | 値 |
|---|---|
| CVSSスコア | 9.8 |
| 深刻度 | Critical |
| CWE | CWE-347 (暗号署名の不適切な検証) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| Authlib | lepture | 1.6.5 〜 1.6.6 |
修正バージョンと回避策
- 修正バージョン: Authlib 1.6.7
- 暫定回避策: JWT の検証時に許可するアルゴリズムを明示的にホワイトリストで指定し、
noneアルゴリズムを除外する。ただし根本対策として速やかに 1.6.7 へのアップデートを推奨
関連リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
