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-scanner — Un escáner de superficie no intrusivo para CVE-2025-55182 (RCE de React Server Components). Detecta endpoints RSC expuestos en aplicaciones React 19 y Next.js. | Kitploit
Herramientas/GitHubGitHub/fatguru/cve-2025-55182-scanner
Escáneres de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebEvasión de WAFSeguridad WebPruebas de PenetraciónRed Teaming
GitHubfatguru/cve-2025-55182-scanner

CVE-2025-55182-scanner

Un escáner de superficie no intrusivo para CVE-2025-55182 (RCE de React Server Components). Detecta endpoints RSC expuestos en aplicaciones React 19 y Next.js.

Ver Repositorio
112173hace 9 mesesRevisado por Kitploit

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

Escáner de Exposición de Superficie de React Server Components

(CVE-2025-55182)

Un detector de superficie especializado y no intrusivo para CVE-2025-55182 (RCE de React Server Components).


⚠️ Contexto técnico crítico

Lee esto antes de escanear:

Aunque CVE-2025-55182 es una vulnerabilidad RCE crítica (CVSS 10.0), la explotación en entornos de producción reales de Next.js es condicional.

  1. La barrera de la lista blanca: Next.js utiliza un serverManifest para permitir módulos en la lista blanca. Los intentos directos de cargar módulos peligrosos (como child_process) vía RSC a menudo fallan porque no están en este manifiesto.
  2. La cadena de ataque: Para lograr RCE en un objetivo endurecido, los atacantes a menudo necesitan encadenar esta vulnerabilidad con una primitiva de Prototype Pollution para sobrescribir el serverManifest en memoria y evadir la lista blanca.
  • Minificación de Webpack: En builds de producción, los IDs de módulos están minificados (p. ej., 742 en lugar de "vm"). Los exploits rígidos que adivinan nombres fallarán (falsos negativos).
  • Esta herramienta es un detector de superficie. Identifica si el protocolo RSC está expuesto y activo. Encontrar un endpoint expuesto es el paso previo para identificar la superficie de ataque donde podría intentarse una cadena de Prototype Pollution.


    🛡️ ¿Por qué usar este detector de superficie?

    • La mayoría de los PoCs y escáneres públicos producen falsos negativos en entornos de producción porque caen en cuatro trampas comunes:

    • Rigidez del exploit: intentan ejecutar gadgets específicos (como vm o child_process) que están bloqueados por las listas blancas, o dependen de IDs hardcodeados (p. ej., "id":"vm") que fallan contra builds de Webpack minificadas.

    • Redirecciones de raíz: hacer POST / en Next.js a menudo provoca una redirección 307/308 (p. ej., a /login), lo que hace que el cuerpo del POST se pierda o se convierta en GET antes de que el servidor lo procese.

    • Desajuste de transporte: muchos escáneres envían los payloads como text/plain o JSON crudo. Las Server Actions estrictas de Next.js a menudo requieren encapsulación multipart/form-data. Si el formato es incorrecto, el servidor devuelve 404/200 sin llegar a activar el parser vulnerable.

    • Ceguera ante WAF: las herramientas estándar ven un 403 Forbidden y se rinden. No distinguen entre un bloqueo global de IP y un filtro de reglas específico, perdiendo oportunidades de evadir el WAF mediante técnicas de codificación o padding.

    Este escáner resuelve los tres desafíos:

    ✅ Sondeo inteligente de rutas: sondea automáticamente rutas aleatorias inexistentes (p. ej., /x7z9q2) para evadir redirecciones de raíz (307/308) y forzar al Next.js App Router a procesar el contexto de la solicitud.

    ✅ Transporte estricto (Multipart): usa encapsulación multipart/form-data en lugar de texto plano. Esto resuelve los falsos negativos en endpoints de Server Actions estrictos que de otro modo devuelven 404.

    ✅ Análisis diferencial de WAF: distingue entre bloqueos globales ([BLOCKED]) y filtrado por reglas específicas ([FILTERED]). Si el backend permite el protocolo pero bloquea el payload, el escáner lo identifica como un objetivo de alto valor.

    ✅ Modo de auto-bypass: incluye un motor --bypass opcional que intenta automáticamente técnicas de evasión (escapes Unicode, mutación de espacios en blanco, padding basura) contra objetivos [FILTERED].

    ✅ Detección endurecida: captura "caídas silenciosas" ([SUSPICIOUS]) en servidores empresariales que eliminan las cabeceras X-Powered-By, e identifica la huella de redirección 303 See Other de Assetnote.

    ✅ Fingerprinting activo: utiliza un payload especializado (["$1:aa:aa"]) para provocar el error "Digest" único de React 19 RSC, confirmando que el parser está activo incluso sin un RCE completo.


    🚀 Instalación

    1. Clona el repositorio:

      root@kitploit:~
      git clone https://github.com/fatguru/CVE-2025-55182-scanner.git
      cd CVE-2025-55182-scanner
      
      
    2. Instala las dependencias (recomendado en un entorno virtual):

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

    💻 Uso

    Escaneo básico

    Comprueba una sola URL. Nota: asegúrate de apuntar a la ruta correcta de la aplicación (p. ej., /dashboard, /login), no solo al dominio raíz, ya que los endpoints del App Router de Next.js son específicos de la ruta.

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -u http://localhost:3000/dashboard
    

    Escaneo masivo

    Escanea una lista de URLs desde un archivo (una URL por línea). Esta es la estrategia recomendada para no perderte rutas específicas.

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -l targets.txt -o results.csv
    

    Modo inseguro (Nuevo)

    Ignora los errores de certificados SSL/TLS (útil para escaneo basado en IP, laboratorios locales o certificados autofirmados).

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -u [https://192.168.1.50](https://192.168.1.50) -k
    

    Escaneo con cabeceras personalizadas (Bypass de WAF / Autenticación)

    Nuevo en v2.1: usa el flag --header para pasar cookies de sesión o tokens si la aplicación está detrás de autenticación o de un WAF que requiere cabeceras específicas.

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -u https://target.com --header "Cookie: session=123" --header "Authorization: Bearer xyz"
    

    Opciones

    FlagDescripción
    -u, --urlURL objetivo única (p. ej., http://target.com/dashboard).
    -l, --listArchivo que contiene una lista de URLs a escanear (una por línea).
    --bypass(Nuevo v2.5) Habilita el modo de evasión de WAF. Intenta automáticamente técnicas de mutación (Unicode, Padding, Whitespace) si se detecta un objetivo como [FILTERED].
    --headerAñade cabeceras personalizadas (p. ej., Cookie: session=xyz, Authorization: Bearer...). Se puede usar varias veces.
    -o, --outputGuarda los resultados en un archivo de texto.
    -k, --insecureDesactiva la verificación de certificados TLS (suprime las advertencias SSL).
    -t, --threadsNúmero de hilos simultáneos para escaneo masivo (por defecto: 10).
    --timeoutTiempo de espera de la solicitud en segundos (por defecto: 10s para acomodar payloads multipart).
    --verboseHabilita el modo debug. Muestra pasos de sondeo detallados, estado de bloqueo del WAF e intentos de bypass.

    📊 Interpretación de Resultados (v2.5)

    [EXPOSED] | 🔴 (Rojo) | Vulnerable

    El servidor procesó el payload y devolvió un error de digest de React 19 O una redirección de acción (303). Alta confianza de superficie expuesta.

    [BYPASSED] | 🟠 (Naranja) | WAF Evadido

    ¡Éxito! El escáner detectó inicialmente un filtro, pero lo evadió con éxito usando técnicas de mutación (p. ej., Padding/Unicode) para activar la vulnerabilidad.

    [SUSPICIOUS] | 🟡 (Amarillo) | Advertencia

    El servidor falló (500) al parsear el payload. Indica lógica de serialización expuesta, incluso en objetivos endurecidos que eliminan las cabeceras X-Powered-By.

    [FILTERED] | 🔵 (Azul) | Regla WAF Detectada

    El servidor acepta tráfico RSC (el payload benigno pasó), pero una regla WAF específica bloqueó el payload de exploit. El objetivo está vivo detrás del WAF. Usa --bypass para intentar la evasión.

    [INFO] | 🔵 (Cian) | Protocolo Detectado

    El servidor habla RSC (text/x-component) pero manejó el payload correctamente. Probablemente parchado o comportamiento estándar.

    [BLOCKED] | 🟣 (Magenta) | Bloqueo Global de WAF

    Todo fue bloqueado (403/406), incluido el handshake benigno. El WAF está bloqueando el protocolo por completo o tu IP.

    [SAFE] | 🟢 (Verde) | Limpio

    El servidor devolvió 404/200 pero ignoró las cabeceras RSC/los cuerpos multipart en todas las rutas sondeadas.

    🛠️ Plantilla de Nuclei (https://github.com/projectdiscovery/nuclei)

    En este repositorio se incluye una plantilla de Nuclei basada en esta lógica de detección: cve-2025-55182-detection.yaml.

    root@kitploit:~
    nuclei -t cve-2025-55182-detection.yaml -l targets.txt
    

    v2.5 Registro de Cambios (Actualización Importante)

    • Modo de Bypass de WAF: el nuevo flag --bypass automatiza técnicas de evasión (Whitespace, Unicode, Padding grande) cuando un objetivo se detecta como [FILTERED].
    • Soporte Multipart: el transporte del payload cambió a multipart/form-data para corregir falsos negativos en objetivos que devuelven 404 a payloads de texto.
    • Análisis Inteligente:
      • [FILTERED]: identifica cuando un WAF bloquea específicamente el payload de exploit pero permite tráfico RSC (objetivos de alto valor).
      • [SUSPICIOUS]: ahora captura caídas en servidores endurecidos que ocultan las cabeceras X-Powered-By.
      • [EXPOSED]: se añadió detección de redirecciones 303 See Other utilizadas por algunas implementaciones vulnerables.

    v2.2 Registro de Cambios (Actualización Crítica)

    • Corrección de Falsos Negativos (Multipart): el transporte del payload pasó de text/plain a multipart/form-data. Esto resuelve los falsos negativos en objetivos que aplican estrictamente datos de formulario para Server Actions y antes devolvían 404.
    • Detección de Redirecciones: la lógica se actualizó para capturar HTTP 303 See Other y las cabeceras x-action-redirect, que son fuertes indicadores de procesamiento RSC y a menudo quedan ocultos cuando los escáneres siguen las redirecciones automáticamente.

    Actualizaciones de v2.1

    • Corrección de Falsos Positivos: la lógica se actualizó para separar 'Info' (Protocolo RSC Detectado, probablemente parchado) de 'Suspicious' (Caída del Servidor/500), resolviendo problemas con versiones parchadas de React 19.x.
    • Detección de WAF: el escáner ahora identifica y reporta explícitamente el estado [BLOCKED] (HTTP 403/406) cuando los WAF interceptan la firma del ataque.
    • Estrategia de Cabeceras: se añadió el argumento opcional --header para identificación de tráfico personalizado, Authorization o listas blancas del WAF.
    • Mejoras de UX: banner ASCII corregido, supresión de advertencias SSL añadida (-k) y manejo robusto de colores.

    ⚖️ Descargo de responsabilidad

    Esta herramienta está pensada para ayudar a investigadores de seguridad y administradores a identificar superficies de ataque expuestas en sus propios sistemas. El autor no es responsable del mal uso de esta herramienta. No la uses contra sistemas para los que no tengas permiso explícito de prueba.

    Referencias:

    root@kitploit:~
    - https://nvd.nist.gov/vuln/detail/CVE-2025-55182
    - https://www.wiz.io/blog/critical-vulnerability-in-react-cve-2025-55182
    
    Descargar herramienta