クラウド環境を狙う新手のOAuthクライアントID偽装手法

攻撃者がOAuthクライアントIDを偽装してクラウド環境へのアクセス権を得る、検知の難しい手法の利用を拡大させていると、サイバーセキュリティの専門家が警告しています。

Proofpointのアナリストによる調査によれば、サイバー犯罪者はMicrosoftのクラウドベースID・アクセス管理ソリューションであるMicrosoft Entra ID(旧Azure AD、こちらを参照)を悪用し、登録済みのOAuthクライアントIDを持たないままアカウントへのアクセス権を得ています。

この手法の性質上、防御側が不審な活動を特定するのは困難です。同時に、攻撃者は組織のクラウドサービスへ気付かれにくい形でアクセスできてしまいます。

OAuthクライアントID偽装は新たに登場した手法であり、クラウドを標的とするキャンペーンでの利用が拡大していると、Proofpointは7月13日に公開したブログ記事で警告しています。

Entraのサインインログは、ユーザー列挙のような悪意ある認証活動を特定するために防御側が一般的に利用するツールです。ユーザー列挙とは、攻撃者がブルートフォースやパスワードスプレー攻撃を用いて、実在するユーザーのログインIDを推測・確認する攻撃手法です。

しかし今回の調査では、攻撃者がOAuthクライアントID偽装を悪用してEntraサインインログによる検知を回避し、企業のクラウドサービスをひそかに侵害する手口が明らかになっています。

Microsoft Entraによる検知を回避

Proofpointの説明によれば、クライアントID偽装は、Resource Owner Password Credentials(ROPC)フローを用いてMicrosoftのOAuth 2.0トークンエンドポイントにPOSTリクエストを送信することで行われ、これによりユーザー名とパスワードを直接送信できてしまいます。

この結果、Azure Active Directory Security Token Service(AADSTS)のエラーコードが返され、認証されていないリクエスト送信者であっても、ユーザー名やパスワードの有効性、さらには多要素認証(MFA)やゼロトラストの考え方に基づく条件付きアクセス(CA)といった追加の制御が適用されているかどうかを推測できてしまいます。

攻撃者はこの情報をもとに、悪用可能なアカウントを特定できます。さらに重要な点として、偽装されたIDとEntra IDログ内の空欄フィールドの組み合わせにより、防御側が悪意ある活動を特定することがより困難になります。

Proofpointは、この手法を用いた大規模なキャンペーンを複数追跡しており、実際に数千のMicrosoft Entraテナントにまたがる数百万のユーザーアカウントが標的にされていると述べています。

攻撃者はクライアントID偽装を効率的に行うため、よく使われるユーザー名を狙って偽装を試みているといいます。ブログに挙げられた例では、Smith、Jones、Williams、Johnsonといった一般的な姓とイニシャルを組み合わせ、jsmith、ajohnson、awilliamsといったログイン名でリクエストを行うケースが紹介されています。

これにより攻撃者は、こうした名前がありふれていることを悪用するだけでなく、組織がユーザー名をより複雑なものへ変更する可能性が低いことも同時に利用しています。

研究者らは、今後さらに多くの攻撃者がこの手法を悪用する方法を模索するとみられると警告しています。

「独自のツールとインフラを用いた複数のキャンペーンが出現していることは、この手法がクラウド環境を標的とする脅威アクターの間で浸透しつつあることを示しています」と、ブログ記事は警告しています。

Proofpointは、この手口への対策として、防御側はアプリケーションIDが空欄になっているサインインログのエントリや、対応するアプリケーション名がないエントリを、クライアントID偽装の兆候として扱うべきだとしています。

また、AADSTS700016のエラーコードは単なるログイン失敗ではなく、認証情報の侵害を示している可能性がある点にも注意すべきだと提言しています。

翻訳元: https://www.infosecurity-magazine.com/news/novel-spoofing-technique-targets/

ソース: infosecurity-magazine.com