
Microsoft Azure を標的とした攻撃用ツール集。Python で書かれており、プラットフォームに依存しません。現在のツール一覧とその機能の簡単な説明を以下に示します。
./Device_Code/device_code_easy_mode.py
- ターゲットユーザーに入力させるコードを生成します。
- 一般的なトークン生成や、フィッシング・ソーシャルエンジニアリングキャンペーンで使用できます。
./Access_Tokens/token_juggle.py
- 様々な方法でリフレッシュトークンを受け取り、指定されたリソースの新しいリフレッシュトークンとアクセストークンを取得します。
./Access_Tokens/read_token.py
- アクセストークンを受け取り、含まれるクレーム情報を解析し、有効期限を確認し、署名の検証を試みます。
./Outsider_Recon/outsider_recon.py
- ドメインを受け取り、認証なしでテナントに関する可能な限りの情報を列挙します。
./User_Enum/user_enum.py
- ユーザー名またはユーザー名のリストを受け取り、3つの方法のいずれかを使用して有効なアカウントを列挙しようとします。
- パスワードスプレー攻撃にも使用できます。
./Azure_AD/get_tenant.py
- アクセストークンまたはリフレッシュトークンを受け取り、テナントIDとテナント名を出力します。
- テキスト出力ファイルと、BloodHound 互換の aztenant ファイルを作成します。
./Azure_AD/get_users.py
- アクセストークンまたはリフレッシュトークンを受け取り、Azure AD のすべてのユーザーと、Microsoft Graph で利用可能なすべてのユーザープロパティを出力します。
- 3つのデータファイル(condensed json、raw json、BloodHound 互換の azusers ファイル)を作成します。
./Azure_AD/get_groups.py
- アクセストークンまたはリフレッシュトークンを受け取り、Azure AD のすべてのグループと、Microsoft Graph で利用可能なすべてのグループプロパティを出力します。
- 3つのデータファイル(condensed json、raw json、BloodHound 互換の azgroups ファイル)を作成します。
./Azure_AD/get_group_members.py
- アクセストークンまたはリフレッシュトークンを受け取り、Azure AD のすべてのグループメンバーシップと、Microsoft Graph で利用可能なすべてのグループメンバープロパティを出力します。
- 3つのデータファイル(condensed json、raw json、BloodHound 互換の azgroups ファイル)を作成します。
./Azure_AD/get_subscriptions.py
- ARM トークンまたはリフレッシュトークンを受け取り、Azure のすべてのサブスクリプションと、Azure Resource Manager で利用可能なすべてのサブスクリプションプロパティを出力します。
- 3つのデータファイル(condensed json、raw json、BloodHound 互換の azgroups ファイル)を作成します。
./Azure_AD/get_resource_groups.py
- ARM トークンまたはリフレッシュトークンを受け取り、Azure のすべてのリソースグループと、Azure Resource Manager で利用可能なすべてのリソースグループプロパティを出力します。
- 2つのデータファイル(raw json、BloodHound 互換の azgroups ファイル)を作成します。
./Azure_AD/get_vms.py
- ARM トークンまたはリフレッシュトークンを受け取り、Azure のすべての仮想マシンと、Azure Resource Manager で利用可能なすべての VM プロパティを出力します。
- 2つのデータファイル(raw json、BloodHound 互換の azgroups ファイル)を作成します。
インストール
Offensive Azure はいくつかの方法でインストールできます。または、インストールせずに使用することも可能です。
リポジトリをクローンして、必要な特定のスクリプトを実行しても構いません。各モジュールには requirements.txt ファイルが含まれており、これを簡単に行えるようにしています。
Poetry
このプロジェクトは poetry で動作するように構築されています。使用するには、以下の手順に従ってください。
git clone https://github.com/blacklanternsecurity/offensive-azure.git
cd ./offensive-azure
poetry install
Pip
リポジトリのパッケージ版は pypi にも公開されているので、pip を使ってインストールすることもできます。環境を可能な限りクリーンに保つために、pipenv の使用をお勧めします。
pipenv shell
pip install offensive_azure
使い方
このツールキットの使用方法は任意です。各モジュールは独立して実行することも、パッケージとしてインストールして利用することもできます。各モジュールは、モジュールファイルと同じ名前のスクリプトとしてエクスポートされます。例:
Poetry
poetry install
poetry run outsider_recon your-domain.com
Pip
pipenv shell
pip install offensive_azure
outsider_recon your-domain.com