
Demostración de CVE-2025-11953: Vulnerabilidad crítica de RCE en React Native CLI (CVSS 9.8). Investigación educativa en seguridad con exploits de prueba de concepto y estrategias de mitigación.
JFSA-2025-001495618 - Inyección Crítica de Comandos en la CLI de React Native
El Servidor de Desarrollo de Metro, que es abierto por la CLI de React Native, se vincula a interfaces externas por defecto. El servidor expone un endpoint (/open-url) que es vulnerable a la inyección de comandos del sistema operativo. Esto permite que atacantes de red no autenticados envíen una solicitud POST al servidor y ejecuten ejecutables arbitrarios.
react-native-cli-command-injection-demo/
├── README.md # Este archivo
├── vulnerable-setup/
│ ├── package.json # Configuración de versión vulnerable
│ ├── metro.config.js # Configuración de Metro
│ └── start-vulnerable.js # Script para iniciar servidor vulnerable
├── exploit-examples/
│ ├── basic-exploit.sh # Ejemplo básico de inyección de comandos
│ ├── windows-exploit.sh # Exploit específico para Windows
│ ├── advanced-exploit.py # Script de explotación avanzada
│ └── payload-examples.json # Varios ejemplos de payloads
├── secure-setup/
│ ├── package.json # Configuración de versión corregida
│ ├── metro.config.js # Configuración segura
│ └── start-secure.js # Inicio seguro del servidor
└── mitigation/
├── SECURITY.md # Recomendaciones de seguridad
└── host-binding-examples.sh # Ejemplos de vinculación de host
cd vulnerable-setup
npm install
npm run start:vulnerable
cd exploit-examples
./basic-exploit.sh
cd secure-setup
npm install
npm run start:secure
Esta demostración es solo con fines educativos. No utilice estos ejemplos en entornos de producción ni contra sistemas que no posea. Siga siempre prácticas de divulgación responsable.