
Microsoft AzureおよびOffice365ユーザーを標的とした、内部および外部のフィッシング攻撃の両方に悪用され得る悪意のあるOAuthアプリケーション。
OAuthSeeker は、Microsoft Azure および Office365 内でのユーザー ID を侵害するために、悪意のある OAuth アプリケーションを使用してフィッシング攻撃を実行するレッドチームツールです。
OAuthSeeker には以下の主要な機能があります:
git clone https://github.com/praetorian-inc/oauthseeker.git
cd oauthseeker
go build -o oauthseeker ./cmd/oauthseeker/
export JWT=$(az account get-access-token --resource https://graph.microsoft.com | jq -r .accessToken)
sudo oauthseeker setup --access_token $JWT --azure --redirect_url $URL --name $NAME
open http://127.0.0.1:8080/admin/
OAuthSeeker は、オペレーターが収集した認証情報を表示し、アクセストークンを更新し、埋め込みインスタンスである GraphRunner を通じて Microsoft Graph API を使用できる管理パネルを提供します。オペレーターは個々の認証情報を調査し、必要に応じてアクセストークンを更新して Microsoft Graph リソースへのアクセスを維持できます。組み込みの GraphRunner インターフェースは、OneDrive、SharePoint、Teams、Outlook へのナビゲーションを簡素化し、OAuthSeeker のナビゲーションバーの「GraphRunner」タブからアクセスできます。
OAuthSeeker は、アプリケーションとの OAuth フローが正常に完了すると、JWT と更新トークンを含む有効な Microsoft Graph API 認証情報を取得します。OAuthSeeker は 24 時間ごとに自動的にトークン更新操作を実行し、更新トークンがその有効期間全体にわたってアクティブな状態を維持し、早期に失効しないようにします。ただし、OAuthSeeker は、OAuth 同意フィッシングキャンペーンを通じてこれらのトークンを取得した後、それらを運用に直接活用する手段は提供しません。一方で、これらのトークンを侵害後の活動に活用できる既存のツールがいくつかあります。
GraphRunner は、Microsoft 365 向けの侵害後ツールキットであり、攻撃者が Microsoft の Graph API への認証済みアクセスを活用できるようにします。GraphRunner を使用すると、オペレーターはメール、SharePoint、Teams からデータを検索およびエクスポートし、ユーザー権限を列挙し、悪意のあるアプリケーションを展開するなどが可能です。侵害されたアカウントを略奪し、Microsoft 365 環境内で永続性を維持するための強力な方法です。Black Hills Information Security がこのツールを開発し、GraphRunner: A Post-Exploitation Toolset for M365 という有益なウェブキャストで、このツールの使用方法と一般的な攻撃経路について説明しています。
GraphSpy は、Microsoft 365 での高度なレッドチーム運用向けに設計された多目的ツールであり、効率的なトークン管理のためのローカル Web インターフェースを備えています。OneDrive、SharePoint、Outlook へのシームレスなアクセスを可能にし、同時コードポーリングによるデバイスコードフィッシングをサポートします。このツールは Microsoft API との対話を簡素化し、攻撃者がカスタムリクエストを実行し、プロジェクト全体で対象を絞ったデータ抽出と永続化操作を実行できるようにします。詳細については、GraphSpy の作者との YouTube インタビュー GraphSpy - Offensive Security Tool for Microsoft 365 with Keanu Nys で確認できます。
OAuthAzure は、Azure 環境内のリソースの侵害後活動と列挙のために OAuthSeeker と併用できるユーティリティです。OAuthSeeker を使用すると、Microsoft Azure 内で user_impersonation 権限を要求するフィッシング攻撃を実行でき、被害者ユーザーアカウントに代わってすべての Azure リソースにアクセスできるようになります。OAuthSeeker はデフォルトで Graph API トークンを要求します。JWT の要求トークン対象は Microsoft Graph API または Microsoft Azure のいずれかであり、両方を同時に指定することはできません。デフォルトでは、OAuthSeeker 内で Graph API アクセスを要求しますが、OAuthAzure を利用して、取得した JWT と更新トークンを Microsoft Azure トークンと交換し、Azure の偽装機能へのアクセスを取得できます。
OAuthPillage は、侵害された Microsoft Graph API トークンを活用した侵害後活動を実行するための、OAuthSeeker フレームワークに含まれるユーティリティです。このユーティリティを使用すると、侵害された Microsoft Graph API トークンを活用して、User.ReadBasic.All 権限を通じてユーザー権限を一覧表示し、Microsoft Azure 内で利用可能なユーザーに関するすべての情報をダンプし、標的の組織を狙った追加のフォローアップフィッシング攻撃に使用できます。
詳細なセットアップ手順、設定オプション、運用上のセキュリティに関する考慮事項、および使用例については、詳細なセットアップ手順とドキュメント を参照してください。