
OAuthは、Webサービスがユーザのパスワードを共有せずに、別のアプリへ安全にアクセス権(認可)を渡す仕組みです。
透過的に認証を提供する仕組みですので、OAuthには安全化のための機構が含まれています。
セキュリティ機構として搭載されている機能の一つに、不正なリダイレクトを防ぐため、OAuth2.0では事前にサービス側(Google, Facebook等)へ正しいリダイレクトURIを登録しておく必要がある、というものがあったりします。
こういった安全化のための機構を逆手にとって侵害を実現しようという話です。
OAuthには、特定の条件下で(通常はエラーシナリオやその他の定義されたフローにおいて)特定のページにリダイレクトできる機能があります。
OAuthリダイレクトです。
このOAuthリダイレクトの悪用事例が観測されています。
OAuthリダイレクトとは、ユーザがOAuth認可サーバでログイン・許可した後に、認可コード(Authorization Code)をクライアントアプリへ安全に渡すため、Webブラウザを自動的に元のアプリのURLへ戻す仕組みです。
研究者によると、Entra ID(以前の呼称はAzure Active Directoryです)のURLが正当な認可リクエストのように見えても、エンドポイントは対話型ログインを伴わないサイレント認証のパラメータと、認証エラーを引き起こす無効なスコープで呼び出されると、IDプロバイダーは攻撃者が設定したリダイレクトURIにユーザーをリダイレクトせざるを得なくなる場合が出てくるといいます。
場合によっては、被害者は、有効なセッションCookieを傍受して多要素認証保護を回避できるEvilProxyなどの中間攻撃フレームワークを搭載したフィッシングページにリダイレクトされてしまいます。
単純にOAuthリダイレクトさせるだけでなく、そのパラメータを本当のユーザであるかのように装うような細工も施されていて、サービス側での不正利用の検出が難しくなるようなことも実施されています。
この観察された攻撃は、リダイレクトを通じて認証エラーを管理する方法を定義する標準で指定されたとおりに動作するOAuthフレームワーク内の意図された動作を悪用するIDベースの脅威だといえます。
お作法の悪用、という感じですね。
現地のソフトウェアを使う、予定された推奨利用の隙間を突く、といった具合に、次々に新しい攻撃手法が出てきています。
実装上の問題から発生するセキュリティ問題に注目が集まりやすいですが、設計上の隙間がないかといったより上流での棚卸も重要ということなのかもしれません。
OAuth redirection abuse enables phishing and malware delivery
https://www.microsoft.com/en-us/security/blog/2026/03/02/oauth-redirection-abuse-enables-phishing-malware-delivery/
| この記事をシェア |
|---|