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-2026-0073-Android-ADBD-bypass-POC — CVE-2026-0073 — Bypass de autenticación TLS del daemon ADB de Android (adbd) mediante confusión de tipos en EVP_PKEY_cmp. Obtenga acceso shell no autorizado a través de WiFi usando un desajuste de claves EC/Ed25519. Exploit PoC para Android 14+. | Kitploit
Herramientas/GitHubGitHub/martinpsdev/cve-2026-0073-android-adbd-bypass-poc
Seguridad AndroidAnálisis de VulnerabilidadesExplotaciónPruebas de PenetraciónSeguridad MóvilRed Teaming
GitHubmartinpsdev/cve-2026-0073-android-adbd-bypass-poc

CVE-2026-0073-Android-ADBD-bypass-POC

CVE-2026-0073 — Bypass de autenticación TLS del daemon ADB de Android (adbd) mediante confusión de tipos en EVP_PKEY_cmp. Obtenga acceso shell no autorizado a través de WiFi usando un desajuste de claves EC/Ed25519. Exploit PoC para Android 14+.

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
Ver Repositorio
226hace 3 mesesRevisado por Kitploit

CVE-2026-0073 — Bypass de autenticación TLS en ADBD de Android

Confusión de tipos en EVP_PKEY_cmp() → shell ADB no autorizada

Python 3.10+ CVE-2026-0073 Android License


🔥 Resumen

Un bypass de autenticación crítico en el daemon ADB de Android (adbd) permite que cualquier atacante en la red local obtenga una shell completa en un dispositivo objetivo sin autorización del usuario.

La vulnerabilidad existe en adbd_tls_verify_cert() dentro de daemon/auth.cpp, donde EVP_PKEY_cmp() se usa como booleano. Cuando la clave almacenada es RSA y el certificado de cliente TLS presentado lleva una clave no RSA (EC P-256 o Ed25519), EVP_PKEY_cmp() devuelve -1 (desajuste de tipo), que es verdadero en C/C++, por lo que authorized = true.

root@kitploit:~
// Patrón de código vulnerable en daemon/auth.cpp
if (EVP_PKEY_cmp(peer_key, stored_key)) {  // ← ERROR: ¡-1 es verdadero!
    authorized = true;
}

⚡ Inicio rápido

Instalar dependencias

root@kitploit:~
pip install cryptography

Ejecutar el exploit

root@kitploit:~
# Shell interactiva
python adb_tls_auth_bypass.py <IP_OBJETIVO> <PUERTO>

# Ejecución de un solo comando
python adb_tls_auth_bypass.py 192.168.1.42 37521 --cmd "id"

# Modo verboso (ver el rastro completo del protocolo)
python adb_tls_auth_bypass.py 192.168.1.42 37521 -v --cmd "id"

Forzar un tipo de clave específico

root@kitploit:~
python adb_tls_auth_bypass.py 192.168.1.42 5555 --key-type ec
python adb_tls_auth_bypass.py 192.168.1.42 5555 --key-type ed25519

De forma predeterminada, el script prueba automáticamente EC P-256 → Ed25519 → EC/TLS 1.2 hasta que uno tenga éxito.


🎯 Flujo del exploit

root@kitploit:~
   Atacante                          Objetivo (adbd)
      │                                    │
      │──── Conexión TCP ─────────────────►│
      │──── CNXN (texto claro) ───────────►│
      │◄─── STLS (solicitud de actualización TLS) ──│
      │──── Respuesta STLS ───────────────►│
      │                                    │
      │════ Handshake TLS 1.3 ════════════│
      │  (certificado de cliente EC P-256 presentado)  │
      │  EVP_PKEY_cmp(EC, RSA) → -1       │
      │  -1 es verdadero → authorized=true │
      │════════════════════════════════════│
      │                                    │
      │◄─── CNXN (información del dispositivo) ──────────│
      │──── OPEN "shell:" ───────────────►│
      │◄─── OKAY ────────────────────────│
      │◄──► WRTE/OKAY (E/S de shell) ────►│
      │                                    │
    [ACCESO COMPLETO A LA SHELL]           │

📋 Requisitos previos

⚠️ Importante: La clave RSA debe estar en /data/misc/adb/adb_keys, que se completa mediante el emparejamiento de depuración USB (aceptando el diálogo "¿Permitir depuración USB?"). El emparejamiento de depuración inalámbrica (adb pair) almacena las claves en una ubicación diferente (adb_known_hosts.pb) y NO cumple este requisito.


🛡️ Versiones afectadas

  • Android 14 (AOSP) — ✅ Confirmado vulnerable
  • Android 15 (AOSP) — Probablemente vulnerable (compilaciones sin parchear)
  • Las compilaciones específicas del proveedor pueden variar (Samsung One UI, Pixel, etc.)

Cómo comprobar el nivel de parche

root@kitploit:~
adb shell getprop ro.build.version.security_patch

🧪 Entorno de pruebas

Probado y confirmado funcionando en:

root@kitploit:~
Kernel:   6.1.23-android14-4-00257-g7e35917775b8-ab9964412
Plataforma: Android 14 (Emulador de Android Studio)

🔧 Mejoras sobre el original

Este fork incluye varias mejoras:

  • ✅ Respaldo de múltiples claves — Prueba automáticamente EC P-256 → Ed25519 → EC/TLS 1.2
  • ✅ Soporte Ed25519 — Tipo de clave alternativo para mayor compatibilidad
  • ✅ Respaldo TLS 1.2 — Flujo de certificado de cliente diferente (enviado durante el handshake vs. después del handshake)
  • ✅ Certificado mejorado — Extensiones X.509 adecuadas (BasicConstraints, KeyUsage)
  • ✅ Compatible con Windows — Usa E/S con hilos en lugar de select() para soporte multiplataforma
  • ✅ Tiempos de espera aumentados — Mejor fiabilidad en redes más lentas
  • ✅ Diagnósticos verbosos — Rastro detallado del protocolo con la bandera -v

📁 Estructura del proyecto

root@kitploit:~
CVE-2026-0073-Android-ADBD-bypass-POC/
├── adb_tls_auth_bypass.py    # Script principal del exploit
└── README.md                 # Este archivo

⚠️ Aviso legal

Esta herramienta se proporciona únicamente para pruebas de seguridad autorizadas y fines educativos. El acceso no autorizado a sistemas informáticos es ilegal. Obtenga siempre la autorización adecuada antes de realizar pruebas. El autor no asume ninguna responsabilidad por el mal uso de este software.


📚 Referencias

  • CVE-2026-0073 — MITRE
  • Boletín de seguridad de Android
  • Documentación de OpenSSL EVP_PKEY_cmp
  • Referencia del protocolo ADB

Si esto ayudó a tu investigación, deja una ⭐

Descargar herramienta
Retorno de EVP_PKEY_cmp()Significado¿Verdadero en C?Resultado
1Las claves coinciden✅Autorizado (correcto)
0Las claves difieren❌Rechazado (correcto)
-1Desajuste de tipo✅Autorizado (ERROR)
RequisitoDetalles
Opciones de desarrolladorHabilitadas en el dispositivo objetivo
Depuración inalámbricaHabilitada (o ADB sobre TCP en el puerto 5555)
Clave RSA almacenadaEl dispositivo debe haberse emparejado por USB al menos una vez (/data/misc/adb/adb_keys)
Acceso a la redEl atacante debe poder alcanzar el puerto TCP de adbd