Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
aad-sso-enum-brute-spray — SecureWorksの最近のAzure Active Directoryパスワード総当たり(ブルートフォース)脆弱性のPOC | Kitploit
ツール/GitHubGitHub/treebuilder/aad-sso-enum-brute-spray
認証と認可偵察パスワード攻撃情報収集ペネトレーションテストクラウドセキュリティ
GitHubtreebuilder/aad-sso-enum-brute-spray

aad-sso-enum-brute-spray

SecureWorksの最近のAzure Active Directoryパスワード総当たり(ブルートフォース)脆弱性のPOC

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
リポジトリを見る
193354年前Kitploit レビュー済み

aad-sso-enum-brute-spray

SecureWorks が最近公表した Azure Active Directory のパスワードブルートフォース脆弱性の POC

説明

このコードは、最近明らかにされた Azure Active Directory のパスワードブルートフォース脆弱性の概念実証です。この脆弱性は Secureworks が発表 しました(また、公式発表の約1日前に公開された Ars Technica の記事 もほぼ同じ内容です)。

理論上、この手法を使用すると、1つ以上の AAD アカウントに対して、アカウントのロックアウトを引き起こしたりログデータを生成したりすることなく、ブルートフォース攻撃やパスワードスプレー攻撃を実行できるため、攻撃を不可視にすることができます。

使用方法

基本的な使い方は簡単です:

パスワードスプレー

root@kitploit:~
.\aad-sso-enum-brute-spray.ps1 USERNAME PASSWORD

この方法でコードを呼び出すと、指定したユーザー名とパスワードの結果を取得できます。

foreach を利用することで、これを簡単にパスワードスプレーに活用できます:

root@kitploit:~
foreach($line in Get-Content .\all-m365-users.txt) {.\aad-sso-enum-brute-spray.ps1 $line Passw0rd! |Out-File -FilePath .\spray-results.txt -Append }

この方法を使用する場合、Linux で作業するには、結果のファイルを UTF-16 から UTF-8 に変換する必要があることに注意してください:

root@kitploit:~
iconv -f UTF16 -t UTF-8 spray-results.txt >new-spray-results.txt

ユーザー列挙

列挙のみに関心がある場合は、上記のパスワードスプレーと同じように実行するだけです。 「bad password」という戻り値、または「no user」以外の戻り値は、有効なユーザー名が見つかったことを意味します。

ユーザー名に対して「True」が返された場合、指定したパスワードが有効であることを意味します。

「locked」が返された場合は、アカウントがロックされているか、Smart Lockout が一時的にアカウントとのやり取りを妨げている可能性があります。

ブルートフォース攻撃

このコードをブルートフォース攻撃に活用するには、ユーザー名フィールドの代わりにパスワードフィールドを反復処理するだけです:

root@kitploit:~
foreach($line in Get-Content .\passwords.txt) {.\aad-sso-enum-brute-spray.ps1 [email protected] $line |Out-File -FilePath .\brute-results.txt -Append }

有効なユーザー名/パスワードの組み合わせを見つけたら

1つ以上の有効なユーザー名/パスワードの組み合わせを見つけた場合は、このコードを変更して、返される DesktopSSOToken を取得できます。 DesktopSSOToken はその後、この方法 を使用して OAuth2 アクセストークンと交換できます。

OAuth2 アクセストークンは、その後、さまざまな Azure、M365、O365 API エンドポイントで使用できます。

ただし、この時点で MFA に阻まれる可能性があります。 ここでの最善策は、Outlook Web Access や ActiveSync などの MFA を必要としないアクセスを利用することです。 Dafthack の MFASweep がここで役立ちます。

重要な注意点

Microsoft の Smart Lockout 機能は、同じ IP アドレスから API エンドポイントにあまりに短時間にアクセスすると、アカウントがロックされていると誤って主張し始めます。 これを回避するには、ustayready の fireprox を使用してこの問題を回避することを強くお勧めします。 単に $url 変数を次のように変更します:

root@kitploit:~
$url="https://xxxxxxx.execute-api.us-east-1.amazonaws.com/fireprox/"+$requestid

ただし、特定のアカウントのパスワードをブルートフォース攻撃しようとしている場合、これでは Smart Lockout を回避できません。

謝辞

このコードのほとんどは、Dr. Nestori Syynimaa の優れた AADInternals プロジェクト から借りたものです。

ツールをダウンロード