概要
/login/callback エンドポイントに渡されます。このトークンには、どの (Auth0テナント) を対象としているかを示す情報が含まれています。Auth0サービスの不具合により、このオーディエンスが適切に検証されておらず、その結果、あるテナント向けのトークンを別のテナントで使用できる状態になっていました。さらに、すべてのAuth0テナントで利用可能なカスタムデータベース機能では、任意の識別子を持つ認証済みトークンを生成できました。そのため、攻撃者が標的テナント上の被害者のユーザー識別子を把握できれば (これは一般に公開情報と見なされます) 、その識別子を持つトークンを作成できました。オーディエンスの確認が不適切だったため、標的テナントはそのトークンを受け入れ、攻撃者を被害者本人として認識するログインセッションを確立してしまいました。これにより、権限昇格をはじめとする複数の攻撃が可能になっていました。
特に懸念されたのは、この攻撃がAuth0管理サービスに対して悪用される可能性でした。Auth0テナントは、関連する権限を持つ「authority テナント」上のアカウントを持つテナント管理者によって管理されています。攻撃者がテナントauthority上のテナント管理者のユーザー識別子を把握できれば (たとえばソーシャルエンジニアリングによって) 、前述の攻撃手法を用いてその管理者としてログインできました。その後、攻撃者は管理操作を実行し、そのテナント内のすべての情報を閲覧できました。
ユーザーで が有効になっている場合、この攻撃はまったく成立しませんでした。多要素認証を有効にすることを推奨します。
影響を受けましたか?
これを修正するには?
audience パラメーターに対する適切な検証を追加することで Auth0 によって修正されました。お客様側で追加の対応は必要ありません。