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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ResetSpy — Microsoft Self-Service Password Reset (SSPR) ポータルを介してユーザーアカウントと登録済みの認証方法を列挙する | Kitploit
ツール/GitHubGitHub/mlcsec/resetspy
防御ツールOSINT (オープンソースインテリジェンス)偵察ID管理パスワード攻撃情報収集ペネトレーションテスト認証レッドチーミング
GitHubmlcsec/resetspy

ResetSpy

Microsoft Self-Service Password Reset (SSPR) ポータルを介してユーザーアカウントと登録済みの認証方法を列挙する

リポジトリを見る
2111日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

ResetSpy

Microsoftのセルフサービスパスワードリセット(SSPR)エンドポイントをプローブし、登録済みの確認方法を列挙して、強力な第二要素を欠くものをフラグ付けします。ユーザー列挙と、Entraアカウント全体のMFA態勢の概算を提供します。

[!NOTE] 2026年8月現在、MicrosoftはSSPRフローからレガシーCAPTCHAを削除し、バックエンドのスロットリングと行動ベースの不正利用検知に置き換えました(MC1400824を参照)。Microsoftの立場は、バックエンドの制御が自動化された不正利用を検知・ブロックするのに十分であるというものです。

目次

  • インストール
    • pipx
    • pip
  • 使用方法
    • 例
    • オプション
    • レート制限
  • 精度と制限事項
    • TL;DR
    • SSPRの結果が妥当なMFAプロキシとなる理由
    • 既知の欠点
    • 機能の概要
  • 仕組み
    • TL;DR
    • 方法の分類
    • 結果
  • 謝辞

インストール

pipx

root@kitploit:~
# Install pipx if needed
apt install pipx && pipx ensurepath

# From a local clone
git clone https://github.com/mlcsec/ResetSpy.git
cd ResetSpy
pipx install .

pip

root@kitploit:~
python3 -m venv .venv
pip install -r requirements.txt

例

root@kitploit:~
# Single acc
resetspy [email protected]

# Email file (one per line)
resetspy emails.txt

# Proxy
resetspy emails.txt --proxy http://127.0.0.1:8080

# Export to CSV with increased delay
resetspy emails.txt --csv results.csv --delay 4

# Full HTTP debug — request/response headers and bodies printed to stderr
resetspy [email protected] -v

オプション

レート制限

すべてのリクエスト間に --delay に加えてランダムなジッターが追加されます。 429 レスポンスおよびネットワークエラー時には指数バックオフ(最大 --retries 回)が適用されます。デフォルトの遅延は2秒です。大規模なバッチでは4〜6秒に増やしてください。User-Agentは16種類の一般的なエージェント(Windows、macOS、iOS、Android)のプールからリクエストごとにローテーションされます。


精度と制限事項

TL;DR

  • SSPRの方法列挙は、統合登録により、ほとんどの最新のEntra IDテナントにおけるMFA態勢の妥当なプロキシとなる
  • FIDO2キー、証明書ベースの認証、またはゲスト/フェデレーションアカウントの方法は検出しない
  • SSPRが無効化されているアカウントは存在が確認されるが、その方法は不明
  • これは決定的なMFA監査ではない — 出力に依存する前に、何が見えて何が見えないかを理解すること

SSPRの結果が妥当なMFAプロキシとなる理由

2020年以降デフォルトで有効化されているMicrosoftの統合セキュリティ情報登録エクスペリエンスは、SSPRとMFAの両方の認証方法を単一のフローで登録します。実際には、これはほとんどの最新のEntra IDテナントにおいて、SSPRを通じて表示される方法がサインインを保護する方法と同じであることを意味します。強力なSSPR方法が登録されていないアカウントは、強力なMFA方法が登録されていないアカウントである可能性が非常に高いです。

参考資料:

  • Combined security information registration overview
  • How it works: Azure AD self-service password reset

既知の欠点

SSPRとMFAは別々のレジストリです。 統合登録によりほとんどの場合で重複しますが、同じものではありません。統合登録が有効化される前に登録された場合、または管理者がSSPRポリシーから除外した場合、MFA用に存在する方法がここに表示されないことがあります。

FIDO2セキュリティキーと証明書ベースの認証はSSPRでサポートされていません。 Microsoftはこれらの方法をSSPRフローに追加したことがありません。唯一の登録要素がFIDO2キーやスマートカードであるユーザーは、ここでは方法がないものとして表示されます — 偽陰性です。実際にはこれは標準ユーザーでは稀ですが、高セキュリティまたはパスワードレス環境ではより一般的です。

参考資料:

  • Authentication methods available for SSPR
  • FIDO2 security key sign-in

方法ごとのポリシーの不一致。 管理者はMFAサインインに対して方法を許可しつつ、SSPRポリシーから除外することができます。またはその逆も可能です。例えば、組織がサインインには認証アプリのプッシュを許可するが、パスワードリセットには許可しない場合があります。このツールはSSPRが提供を許容するものだけを見ます。

SSPRが完全に無効化されている場合(SSPR_0011)。 SSPRがライセンスされていない、またはユーザーに対して有効化されていない場合、エンドポイントは ViewSsprNotEnabledInUserPolicy を返し、方法情報は利用できません。アカウントは存在し、おそらくMFAが構成されていますが、このツールではそれが何であるかを判断できません。

ゲストおよびフェデレーションアカウント。 外部ユーザーとB2Bゲストはホームテナントを通じて認証します。リソーステナントのSSPRエンドポイントはホームテナントのMFA登録を可視化できず、ViewFeatureNotAvailable を返します。彼らのMFA態勢はこのエンドポイントからは見えません。

テナント全体の方法制限。 管理者がSSPRポリシーで方法クラスを無効化している場合、個々の登録に関係なくどのユーザーにも提供されず、「方法が登録されていない」と「方法が無効化されている」を区別することが不可能になります。

管理者アカウントは常にSSPRが有効です。 MicrosoftのSSPRポリシー設定は標準エンドユーザーにのみ適用されます。管理者アカウントはテナントのSSPRポリシーに関係なく常にセルフサービスパスワードリセットが有効であり、Microsoftは2つの認証方法を登録することを要求しています。これはプラットフォームレベルで強制され、テナント管理者が無効化することはできません。

参考資料: SSPR policy documentation

[!IMPORTANT] これは偵察において有用な意味を持ちます。テナントの標準ユーザーに対してSSPRが無効化されている場合(ViewSsprNotEnabledInUserPolicy を返す)、方法選択画面に正常に到達するアカウントは特権ロールのメンバーである可能性が高いです。テナント全体のポリシーが無効化されているときにSSPR経由でクリーンに列挙されるアカウントは、管理者アカウントの可能性が高いものとして際立ち、標準ユーザーの方法が見えない場合でも登録された方法が可視化されます。これにより、さらなる標的型攻撃のために選別できる高価値ターゲットと特権アカウントの特定が可能になります。

このツールが提供するものと提供しないものの概要


仕組み

TL;DR

  • ターゲットごとに2つのリクエスト: セッショントークンを取得するGET、次にブラウザの非同期フォーム送信を再現するPOST
  • サーバーの CurrentViewName レスポンスフィールドが結果のグラウンドトゥルースとして使用される — HTMLボディのマッチングではない
  • User-Agentは16種類の現実的なブラウザ文字列のプールからリクエストごとにローテーションされる
  • レート制限を回避するためにジッターと指数バックオフが自動的に適用される

概要

MicrosoftのSSPRポータル(passwordreset.microsoftonline.com)は、有効なユーザー名を受け入れた後に連絡方法選択画面(MultigateAuthenticationControl)を表示します。返されるHTMLは、登録されたすべての確認方法を MultigateAuthenticationControl_RadioTable 内のラジオボタンとしてリストします。<tr> 行が display:none である方法はそのユーザーに登録されておらず、スキップされます。

各ターゲットに対して、ツールは2つのリクエストを実行します。まず、ランディングページへのGETでセッションを確立し、サーバーがPOSTを受け入れるために必要なASP.NETフォームトークン(__VIEWSTATE、__EVENTVALIDATION、WorkflowConsistencyCheck)を抽出します。これらのトークンはセッションCookieに暗号学的にバインドされており、予測したりセッション間で再利用することはできません。次に、ユーザーが次へをクリックしたときにブラウザが実行する非同期UpdatePanelポストバックを再現して、それらのトークンとともにメールアドレスを送信するPOSTです。

ASP.NETのワイヤレスポンス内の CurrentViewName 隠しフィールドが、HTMLボディの部分文字列マッチングではなく、サーバーが何を決定したかの権威あるシグナルとして使用されます。

方法の分類

代替メールとセキュリティの質問は、フィッシング可能であり第二要素の意図を満たさないため、弱としてフラグ付けされます。弱い方法のみを持つアカウント、または方法がまったくないアカウントはフラグ付けされます。

[!NOTE] MicrosoftはSSPR用にソフトウェアOATHトークンとハードウェアOATHトークン(プレビュー)の両方をサポートしています。認証アプリ経由で入力されたソフトウェアOATHトークンは、おそらくTOTPと同じ AppCodeRadio ボタンを通じて表示されます — どちらも6桁のコード入力として提示されるため — 別個のラジオIDなしでおそらくすでにカバーされています。ハードウェアOATHトークン(物理的なキーフォブ)は別個のデバイスクラスですが、同様に時間ベースのコードを生成します。それらは同じボタン、またはこのプロセスのテスト中にまだ観察されていない別のボタンを通じてレンダリングされる可能性があります。

結果


謝辞

  • RedByte1337/CredSpy
  • うちの子Claude
ツールをダウンロード
フラグデフォルト説明
--delay SECONDS2.0リクエスト間の基本遅延。ジッターが自動的に追加される
--retries N1一時的なエラー時のアカウントごとの最大リトライ回数
--proxy URLプロキシ。SSL検証を自動的に無効化する
--csv FILEすべての結果をCSVにエクスポート
-v / --verbose完全なリクエスト/レスポンスヘッダーとボディをstderrに出力
機能対応
ユーザー列挙(アカウントの存在有無)はい
SSPR方法の列挙はい
MFA方法の推測(統合登録経由)概算 — ほとんどの標準テナントで信頼性あり
FIDO2 / 証明書ベースのMFA検出いいえ
ゲスト / フェデレーションアカウントのMFAいいえ
SSPRが無効化されたアカウントいいえ(アカウントの存在は確認、方法は不明)
管理者アカウントの特定部分的 — 管理者は常にSSPRが有効なため、テナントのSSPRがそれ以外で無効化されている場合に際立つ可能性がある
ラジオID方法強度
MultigateAuthenticationControl_AltEmailRadio代替メールOTP弱
MultigateAuthenticationControl_SecurityQuestionsRadioセキュリティの質問弱
MultigateAuthenticationControl_AppCodeRadio認証アプリ(TOTP)十分
MultigateAuthenticationControl_MobileAppNotificationRadio認証アプリのプッシュ通知十分
MultigateAuthenticationControl_PhoneRadio電話 / SMS十分
MultigateAuthenticationControl_OfficePhoneRadioオフィス電話十分
ステータス意味
MFA OKアカウントが見つかった。SSPRに少なくとも1つの強力な第二要素が登録されている
NO MFAアカウントが見つかった。強力な要素がない(弱い方法のみ、または方法が登録されていない)
NOT FOUNDユーザー名がディレクトリに存在しない
SSPR DISABLEDアカウントは存在するが管理者ポリシーがSSPRをブロックしている(例: SSPR_0011) — 方法は不明
SSPR N/ASSPRでサポートされていないアカウントタイプ — ゲスト、外部、またはフェデレーションユーザー
CAPTCHAサーバーがCAPTCHAを提示した。手動介入が必要
ERROR予期しないレスポンスまたはネットワーク障害