
📦 Pluck CMS 4.7.18 - 認証済みRCEエクスプロイト (CVE-2023-50564)。アップロード制限のバイパスとリモート実行。🎯
exploit.py 🐍💥
⚠️ 法的/倫理的注意: このスクリプトは許可された環境(CTF、ラボ、許可を得たペネトレーションテスト)のみで使用してください。許可なくシステムに対して使用しないでください。❌
🧾 このスクリプトの機能
exploit_greenhorn.pyは、Webパネルにおける典型的なエクスプロイトチェーンを自動化します:
✅ パネルにログイン (有効なパスワードが必要) ✅ メモリ上でZIPを作成 (ローカルファイルを書き込まない) 📦 ✅ その中にリバースシェル rev.php を配置 🔁🐚 ✅ そのZIPを「モジュール」としてパネルにアップロード 🧩⬆️ ✅ アップロードされたPHPのURLにアクセスしてペイロードを「起動」 🚀
📌 モジュール名はランダムに生成され、競合を回避します(例: abcdefg, xqpmzuiなど)🎲
🧰 必要条件
Python 3.8+ 🐍
依存関係: requests 📌
インストール: pipでrequestsライブラリをインストール (pip install requests) ✅
⚙️ 設定 (重要 🔧)
スクリプト内の「TUS DATOS」セクションを調整する必要があります:
RHOST_DOMAIN 🌐 → ターゲットのURL (http:// または https:// を含む)
LHOST_IP 🧭 → シェルを受け取るあなたのIP (通常はVPN/tun0のIP)
LHOST_PORT 🔌 → リスニングするポート
PASSWORD 🔑 → パネルのパスワード (スクリプトはブルートフォースしません)
✅ アドバイス: 最もよくある失敗はLHOST_IPの設定ミスです (VPNインターフェースの正しいIPを設定してください) 😅
🎧 リスナー (実行前に)
エクスプロイトを実行する前に、リバースシェルを受け取るためのリスナーを起動してください 👂🐚
例: LHOST_PORTで指定したポート(例: 4444)でnetcatを待機させます。リスニングしていなければ何も届きません 📭。
▶️ 使い方
RHOST_DOMAIN、LHOST_IP、LHOST_PORT、PASSWORDを設定 ✅
リスナーを起動 🎧
Pythonでスクリプトを実行 🐍
確認できる典型的な出力例:
[] 対象: http://greenhorn.htb
[] クリーンモジュール作成中: xqpmzui [] ログイン中... [+] Login OK. [] ペイロードアップロード中... [*] 起動先: http://greenhorn.htb/data/modules/xqpmzui/rev.php
[+] タイムアウト! (良い兆候、netcatを確認)
😎 注意: 「タイムアウト! (良い兆候)」は通常正常です ✅ PHPがリバースシェルを開くとき、Webリクエストはインタラクティブセッションが生きている間、保留状態になることがあるためです 🔁
🧠 内部動作の仕組み (簡単な説明)
ランダムなモジュール名を生成 🎲
メモリ上にZIPを作成 📦 (フラット構造、内部フォルダなし)
内部にrev.phpを含め、LHOST_IP:LHOST_PORTに接続するリバースシェルを配置 📡
/login.php にログイン 🔑 (互換性のためRefererを含む)
ZIPを /admin.php?action=installmodule にアップロード ⬆️🧩
ペイロードを /data/modules/<module_name>/rev.php にアクセスして実行 🚀🐚
🧪 トラブルシューティング (問題が発生した場合)
❌ ログイン失敗
PASSWORD を確認 🔑
エンドポイントが /login.php であることを確認
ラボでは、マシン/サービスを再起動する必要がある場合があります 🔄
❌ シェルが届かない
LHOST_IP を確認 🧭 (正しいIP、通常はtun0)
正しいポートでリスニングしていることを確認 🔌🎧
フィルタリングがある場合は別のポートを試す (例: 443 または 9001) 🚧
❌ 起動時に404
モジュールがインストールされていない可能性があります 🧩
一部のインストールではパスが変更されています; /data/modules/ の構造を確認 📁
🛡️ 注意事項
ローカルディスクにZIPを残さない (すべてメモリ上) ✅
sysをインポートしているが未使用 (必要に応じて削除可) 🧹
賢く使用してください 🧠😄
✅ 最終免責事項
無保証。教育目的および許可された使用のみ。許可なく使用した場合の責任はあなたにあります 🚫⚖️