MailSniperは、Microsoft Exchange環境向けのPowerShellベースのペネトレーションテストツールです。メールボックス内の認証情報、内部情報、インフラ詳細を発見するためのターゲット指定または大量検索を可能にします。標準ユーザーは自分のメールボックスを検索でき、**ApplicationImpersonation
**ロールを持つ管理者は組織全体の検索を実行できます。

これは、Nishangのような既存のポストエクスプロイトフレームワークや、TREVORsprayなどのパスワードスプレーツールと並び、電子メール層への偵察を拡張することでdarknet.org.ukの攻撃ツール特集を補完します。
主な機能
- Invoke-SelfSearch: 現在のユーザーのメールボックスを指定したキーワードで検索
- Invoke-GlobalMailSearch: なりすまし機能を使い全メールボックスを検索
- Get-GlobalAddressList: グローバルアドレスリストからメールアドレスを列挙
- Get-ADUsernameFromEWS: メールアドレスをActive Directoryのユーザー名にマッピング
- Invoke-OpenInboxFinder: アクセス可能な共有またはグループメールボックスを特定
- OWA、EWS、ActiveSync向けパスワードスプレーモジュール
インストールと使用方法
必要条件: PowerShellが利用可能なWindowsと、Exchangeへのネットワークアクセス。
git clone https://github.com/dafthack/MailSniper.git<br>Import-Module .\MailSniper\MailSniper.ps1 |
よく使われる例:
# 現在のメールボックスを検索 Invoke–SelfSearch –Mailbox user@domain.com # なりすましで全メールボックスを検索 Invoke–GlobalMailSearch –ImpersonationAccount admin –ExchHostname exchange.domain.local –OutputCsv results.csv # GALを列挙しユーザー名をマッピング Get–GlobalAddressList –ExchHostname exchange.domain.local –Username user@domain.local –Password P@ssw0rd Get–ADUsernameFromEWS –EmailList .\users.txt # OWAに対してパスワードスプレー Invoke–PasswordSprayOWA –ExchHostname exchange.domain.local –UserList .\users.txt –Password Winter2025! |
攻撃シナリオ
レッドチーム演習において、テスターがApplicationImpersonation権限を持つアカウントを侵害します。次のコマンドを実行します:
Invoke–GlobalMailSearch –ImpersonationAccount attacker –ExchHostname mail.corp.local –OutputCsv creds.csv |
出力には、パスワード、VPN情報、ネットワーク図など、メールで送信された情報が含まれます。GALの列挙と組み合わせることで、テスターはユーザーマップと有効な認証情報を手に入れ、ラテラルムーブメントやさらなる侵害が可能になります。
まとめ
MailSniperは、レッドチームの武器庫にターゲットを絞った高価値な機能をもたらし、メールシステムをインテリジェンスの宝庫へと変えます。Exchangeが存在する環境での演習では、初期アクセスからラテラルムーブメントへの橋渡しとして、通常は見つからない認証情報やネットワーク情報を明らかにします。パスワードスプレーやメールボックス列挙と組み合わせることで、攻撃者の足場や作戦範囲を急速に拡大できます。
MailSniperの詳細やダウンロードはこちらから: https://github.com/security-geeks/MailSniper