authentik の深刻な脆弱性 CVE-2024-47070 が FIX:認証バイパスが生じる恐れ

CVE-2024-47070: Critical Flaw in authentik Identity Provider Allows Authentication Bypass

2024/10/01 SecurityOnline — Identity Provider (IdP) と Single Sign-On (SSO) ソリューションを提供する authentik に、深刻なセキュリティ脆弱性 CVE-2024-47070 (CVSS:9.1) が発見された。この脆弱性を悪用する攻撃者は、特定の条件下においてパスワード認証ポリシーのバイパスを可能にするため、影響を受けるバージョンを使用している組織にとって、深刻な懸念が生じている。

セキュリティを考慮して作成された authentik は、サイト管理者/アプリケーション開発者/セキュリティ・エンジニアに対して、安全で柔軟な ID 管理および認証ソリューションを提供するように設計されている。その堅牢なはずの authentik プラットフォームにおいて、X-Forwarded-For HTTP ヘッダーを処理する方法に欠陥が存在することが判明した。このヘッダーは、リバース・プロキシ設定で一般的に使用され、発信元クライアントの IP アドレスをバックエンド・サーバーに渡すものだ。

この脆弱性 CVE-2024-47070 の悪用に成功した攻撃者は、X-Forwarded-For ヘッダーを操作することでパスワード認証をバイパスできる。たとえば、解析不可能な値 (例:“a”) をヘッダーに挿入すると、authentik システムが騙されることで、パスワード・ステージに関連付けられた重要な認証ポリシーをスキップする可能性が生じる。このエクスプロイトにより、正しいパスワードを必要とせずに、既知のログインまたはメール アドレスを持つユーザー・アカウントへの不正アクセスが可能になってしまう。

この脆弱性は、以下のコンフィグレーションにおいて深刻なリスクをもたらす。

  • authentik がリバース・プロキシなしでアクセス可能
  • AUTHENTIK_LISTEN__TRUSTED_PROXY_CIDRS が正しく設定されていない
  • リバース・プロキシ設定で X-Forwarded-For ヘッダーが正しく上書きされない
  • 認証/承認フローに対してポリシーが適用されている

authentik バージョン 2024.8.2/2024.6.4 以下が、この脆弱性の影響を受ける。それらのバージョンを使用している組織に対しては、速やかなアップデートが推奨される。

すでに authentik チームは、パッチ適用したバージョンをリリースしている。

これらのバージョンのいずれかにアップグレードして、この脆弱性を修正することが推奨される。

すぐにパッチを適用できない場合には、以下の回避策がある:

  • ポリシー・バインディングの “Failure result” オプションを、手動で “Pass” に変更する。それにより、悪意のリクエストが寸材する場合であっても、ステージのスキップが防止されるが、安全性は低くなる。
  • リバース・プロキシをコンフィグして、X-Forwarded-For ヘッダーを常に有効な IP アドレスに設定する。