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-2024-5243-pwn2own-toronto-2023 — Exploit de Ejecución Remota de Código previo a la autenticación para el router TP-Link Omada ER605 a través del demonio del cliente DDNS (cmxddnsd) | Kitploit
Herramientas/GitHubGitHub/redpack-kr/cve-2024-5243-pwn2own-toronto-2023
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónHerramienta de Acceso RemotoExplotación de Binarios
GitHubredpack-kr/cve-2024-5243-pwn2own-toronto-2023

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-5243-pwn2own-toronto-2023

Exploit de Ejecución Remota de Código previo a la autenticación para el router TP-Link Omada ER605 a través del demonio del cliente DDNS (cmxddnsd)

Ver Repositorio
1hace 6 mesesAún no revisado

CVE-2024-5243-pwn2own-toronto-2023

TP-Link ER605 Pre-Auth RCE (CVE-2024-5242 / CVE-2024-5243 / CVE-2024-5244)

Cadena de explotación (PoC) dirigida al daemon de cliente DDNS (cmxddnsd) del TP-Link Omada ER605 cuando el dispositivo está configurado para usar el servicio Comexe DDNS.

⚠️ Legal / Ética: Este repositorio es únicamente para investigación de seguridad autorizada y reproducción controlada en laboratorio. No lo utilice contra sistemas que no posea o para los cuales no tenga permiso explícito de pruebas.


Resumen

Este PoC demuestra un enfoque de encadenamiento que combina:

  1. una primitiva de suplantación/impersonación contra la capa del protocolo DDNS,
  2. una fuga de información para omitir ASLR, y
  3. un secuestro del flujo de control que conduce a ejecución de código basada en ROP.

La cadena corresponde a los siguientes problemas publicados:

CVEAviso ZDITipo (según ZDI/NVD)Rol de alto nivel en una cadena
CVE-2024-5244ZDI-24-503Dependencia en seguridad por oscuridad (los mensajes DDNS pueden ser accedidos/suplantados)Permite crear/suplantar mensajes DDNS con apariencia válida
CVE-2024-5243ZDI-24-502Desbordamiento de búfer en el manejo de nombres DNSSe usa para influir/envenenar el estado relacionado con nombres DNS y habilitar una ruta de fuga para omitir ASLR
CVE-2024-5242ZDI-24-501Desbordamiento de búfer basado en pila en el manejo de códigos de error DDNSSe usa como primitiva de secuestro del flujo de control para RCE basada en ROP

Nota: Este README alinea la CVE ↔ descripción del problema según la redacción de ZDI/NVD. La coreografía exacta del exploit puede variar según la compilación del firmware y los detalles de reproducción local; consulte exploit.py y las notas de análisis en este repositorio.


Versiones afectadas

  • Objetivo: Router VPN TP-Link Omada ER605
  • Vulnerable: < ER605(UN)_V2_2.2.4
  • Probado en: 2.2.2
  • Corregido en: ER605(UN)_V2_2.2.4 Build 20240119 (y posteriores)

Modelo de amenaza / Precondiciones (Alto nivel)

ZDI describe el impacto como adyacente a la red cuando Comexe DDNS está habilitado/configurado. En la práctica, una reproducción generalmente requiere la capacidad de observar e influir en la ruta de tráfico DDNS/DNS del router lo suficiente como para:

  • redirigir/suplantar el lado del servidor Comexe DDNS, y
  • entregar respuestas DDNS manipuladas al router.

Este repositorio evita intencionalmente proporcionar una guía operativa paso a paso para lograr ese posicionamiento fuera de un laboratorio controlado.


Flujo de ataque (Conceptual)

root@kitploit:~
┌─────────────────┐                    ┌─────────────────────────┐
│   TP-Link ER605  │                    │        Atacante         │
│   (cmxddnsd)     │                    │ (laboratorio autorizado)│
└───────┬─────────┘                    └───────────┬─────────────┘
        │                                          │
        │ (1) Suplantación/impersonación de msg    │  CVE-2024-5244
        │<-----------------------------------------│
        │                                          │
        │ (2) Desbordamiento en parsing afecta     │  CVE-2024-5243
        │     estado de nombre DNS; luego ocurre   │
        │     fuga en ruta de envío de consulta DNS│
        │     (ej. sndDnsQuery) para omitir ASLR   │
        │<-----------------------------------------│
        │                                          │
        │ (3) Desbordamiento de código de error    │  CVE-2024-5242
        │     para secuestro flujo control → ROP   │
        │     → system(comando)                    │
        │<-----------------------------------------│

Separación clave:

  • Los desbordamientos en parsing se activan durante el análisis de mensajes DDNS (notablemente a través de la lógica de parsing adyacente a _chkPkt para códigos de error / manejo de nombres DNS).
  • La fuga para omitir ASLR se logra posteriormente a través de la ruta de envío de consulta DNS después de envenenar el estado relacionado con nombres DNS.

Contenidos del repositorio

  • exploit.py — Implementación del PoC utilizada para reproducción en laboratorio (requiere completar constantes/offsets específicos de la compilación).
  • README.md — Este documento.

Notas de configuración (Específicas de la compilación)

Este PoC requiere valores específicos de la compilación (ej. offsets, ubicaciones de gadgets, interpretación de la fuga) que dependen del firmware objetivo y la libc. Estos valores se dejan intencionalmente como marcadores de posición y deben derivarse mediante análisis de la compilación probada.

Ejemplos de marcadores (ver exploit.py):

  • Derivación de base de libc (offset de fuga → base de libc)
  • Offset de system()
  • Secuencia adecuada de gadget MIPS y restricciones
  • Dirección para una referencia estable de cadena de comando utilizada por la cadena ROP

Notas técnicas (Alto nivel)

Patrón de causa raíz (Conceptual)

Un antipatrón recurrente en la lógica de parsing es copiar datos de campo controlados por el atacante usando una longitud derivada de un delimitador sin limitarla adecuadamente al tamaño del búfer de destino (conceptualmente):

root@kitploit:~
char *end = strchr(ptr, '\x01');   // delimitador
int len = end - ptr;               // longitud influenciada por atacante
memcpy_or_strncpy(dest, ptr, len); // falta verificación de límites -> desbordamiento

Gadget ROP (Delay slot MIPS)

El PoC utiliza una forma de gadget compatible con delay slots MIPS:

root@kitploit:~
move    $t9, $s0
jalr    $t9
move    $a0, $s1      ; delay slot

Al controlar $s0 y $s1 mediante sobrescritura de registros guardados, esto permite una secuencia compacta de llamada system(comando).

Restricciones del payload (Dependientes de la implementación)

La construcción práctica del payload está restringida por:

  • delimitadores de campo del protocolo (ej. \x01), y
  • comportamiento de cadenas/parsing que puede truncar o alterar los datos copiados.

Consulte exploit.py para conocer las restricciones exactas utilizadas en esta reproducción.


Descargo de responsabilidad

Este código y documentación se proporcionan con fines educativos e investigación de seguridad autorizada únicamente. Cualquier uso sin permiso explícito está prohibido y puede ser ilegal.


Créditos

  • Descubrimiento original de vulnerabilidades e investigación de Pwn2Own Toronto 2023: Claroty Research Team82
  • Este repositorio: trabajo independiente de reproducción y análisis

Referencias

  • ZDI-24-501 (CVE-2024-5242): https://www.zerodayinitiative.com/advisories/ZDI-24-501/
  • ZDI-24-502 (CVE-2024-5243): https://www.zerodayinitiative.com/advisories/ZDI-24-502/
  • ZDI-24-503 (CVE-2024-5244): https://www.zerodayinitiative.com/advisories/ZDI-24-503/
  • Entradas NVD:
    • CVE-2024-5242: https://nvd.nist.gov/vuln/detail/CVE-2024-5242
    • CVE-2024-5243: https://nvd.nist.gov/vuln/detail/CVE-2024-5243
    • CVE-2024-5244: https://nvd.nist.gov/vuln/detail/CVE-2024-5244

Descargar herramienta