
Dieses Repository enthält einen Proof-of-Concept (PoC) für CVE-2022-24434, eine Sicherheitslücke, die das npm-Paket Dicer betrifft.
PoC-Zielversion: 0.3.1 (stellen Sie sicher, dass der verwendete Dicer-Code exakt v0.3.1 ist)
Stellen Sie sicher, dass das Verzeichnis wie folgt strukturiert ist:
. ├── dicer/ # Cloned Dicer repo (must be v0.3.1) ├── server.js # Vulnerable server script └── dicer_poc.js # Exploit PoC script
yaml Code kopieren
git clone https://github.com/mscdex/dicer.git
cd dicer
# fetch tags and switch to v0.3.1 (tag name may be "v0.3.1" or "0.3.1")
git fetch --all --tags
# try the tag checkout (if tag is 'v0.3.1')
git checkout tags/v0.3.1 -b poc-0.3.1 || git checkout tags/0.3.1 -b poc-0.3.1
npm install # install dicer repo dependencies if needed
cd ..
Option B — Paket in Version 0.3.1 installieren (falls Sie npm anstelle des Klonens des Repositorys verwenden möchten)
Falls Sie das vollständige Repository nicht klonen möchten, können Sie ein lokales node_modules mit der spezifischen Version erstellen:
bash
Code kopieren
mkdir tmp_project && cd tmp_project
npm init -y
npm install [email protected]
# copy the installed package folder node_modules/dicer into the parent folder as 'dicer'
cp -R node_modules/dicer ../dicer
cd ..
rm -rf tmp_project
Wichtig: Der PoC ist dafür ausgelegt, gegen den Dicer-Quellordner im Stammverzeichnis dieses Projekts ausgeführt zu werden. Stellen Sie sicher, dass der Ordner namens dicer im Stammverzeichnis der Version 0.3.1 entspricht.
└── poc/
├── dicer/ # Cloned Dicer repo (must be v0.3.1)
├── server.js # Vulnerable server script (place here)
└── dicer_poc.js # Exploit PoC script (place here)
▶️ Ausführen des PoC
Starten Sie den verwundbaren Server:
bash
Code kopieren
node server.js
Führen Sie in einem separaten Terminal den Exploit-PoC aus:
bash
Code kopieren
node dicer_poc.js
🧩 Hinweise
Der PoC hängt von Verhalten ab, das in dicer v0.3.1 vorhanden ist. Mit neueren oder gepatchten Versionen lässt sich das Problem möglicherweise nicht reproduzieren.
Falls Sie das Repository geklont haben und den Tag nicht finden können, prüfen Sie mit git tag die verfügbaren Tags. Wenn es keinen 0.3.1-Tag gibt, verwenden Sie die oben beschriebene npm-Installationsmethode und vergewissern Sie sich, dass die package.json in dicer/ die Version 0.3.1 anzeigt.
⚠️ Haftungsausschluss
Dieses Repository dient ausschließlich Bildungs- und Forschungszwecken.
Verwenden Sie diesen PoC nicht gegen Systeme ohne ausdrückliche Genehmigung.
Der Autor übernimmt keine Verantwortung für Missbrauch oder verursachte Schäden.