TraefikのHTTP/3実装において、バックエンド接続の管理不備によりNTLMおよびNegotiate(Kerberos)認証が適切に分離されない脆弱性が発見された。HTTP/1.1やHTTP/2の処理パスとは異なり、HTTP/3では接続スコープのトランスポート保持機能が初期化されないため、認証プロセスにおいて共有のトランスポートを誤って使用する。これにより、あるクライアントがバックエンドとの間で確立した認証済み接続を、別の無関係なクライアントが再利用できてしまう。この問題は、HTTP/3が有効で、バックエンドがNTLM/Negotiateを使用し、かつ接続のキープアライブが有効な環境で発生する。概念実証(PoC)コードも公開されており、未認証の攻撃者が犠牲者の権限でデータを読み取り、操作を行うリスクがある。
対象ソフト
Traefikは、コンテナやマイクロサービス環境で広く利用されるオープンソースのリバースプロキシおよびロードバランサーである。
影響
攻撃者は犠牲者の認証情報を提示することなく、既に認証されたバックエンド接続を介して犠牲者のみがアクセス可能なデータを読み取ったり、犠牲者になりすまして状態変更を伴う操作を実行したりする可能性がある。
対応策
github.com/traefik/traefik/v3 は 3.7.13 以降に、github.com/traefik/traefik/v2 は 2.11.57 以降にアップグレードすること。