traefikにおけるスプーフィングによる認証回避に関する脆弱性

JVNDB

概要

TraefikはHTTPリバースプロキシおよびロードバランサーです。Traefikのv1.x、v2.xからv2.11.55、およびv3.0.0からv3.7.11において、ヘッダー名はダッシュのみが正規化されるため、X-Auth-User、X_Auth_User、X.Auth.UserはTraefikによってそれぞれ別々のヘッダーとして扱われています。一方で、ヘッダー名から変数名を導出するバックエンド(CGI、WSGI、PHP、NGINXなど)はこれらを単一の変数にまとめてしまいます。したがって、クライアントはTraefikが管理するヘッダーのドット形式の別名をミドルウェアをすり抜けて送信可能です。例えば、ForwardAuthミドルウェアがcanonicalなX-Authenticated-Userを書き込む際に、X.Authenticated.Userを共に送信することで、バックエンドはTraefikが主張したIDではなく、クライアントが送信した値を読み取ってしまう可能性があります。テストされた構成(PHP 8.2組み込みSAPIをHTTP/1バックエンドパス上で使用)では、Goの辞書式ヘッダー順序により攻撃者が送信した値が決定的に優先されるため、ForwardAuthが低権限のIDとして認めたクライアントが、バックエンドから異なるユーザーやロールとして扱われることがあります。Traefikが設定する任意のヘッダーに影響があり、影響はForwardAuthのみに限りません。これはGHSA-x677-9fxg-v5c5の不完全な修正であり、アンダースコア形式のみがブロックされていました。v2.11.56およびv3.7.12で修正され、aliasHeadersStrategyエントリポイントオプションが追加されました。このオプションは下位互換性のためデフォルトで「keep」になっているため、修正を有効にするには明示的に「delete」または「reject」に設定する必要があります。メンテナンスされていないリリースラインにはパッチが提供されていません。

技術情報

  • 深刻度:
  • 公開日: 2026-09-15T18:04:45+09:00
  • 更新日: 2026-09-15T18:04:45+09:00

参考リンク

JVNDB の詳細はこちら

対処方法

該当ソフトウェアの最新版への更新、または開発元が提供する緩和策の適用を推奨します。運用環境に応じて事前検証の上で実施してください。

免責

本記事は公開情報をもとに自動集約された速報です。正確性・完全性は保証できません。必ず一次情報(上記リンク等)をご確認ください。