Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-0073-Android-ADBD-bypass-POC — CVE-2026-0073 — Bypass de autenticação TLS no daemon ADB (adbd) do Android via confusão de tipos em EVP_PKEY_cmp. Obtenha acesso shell não autorizado por WiFi usando incompatibilidade de chaves EC/Ed25519. Exploit PoC para Android 14+. | Kitploit
Ferramentas/GitHubGitHub/xqi1337/cve-2026-0073-android-adbd-bypass-poc
Segurança AndroidExploraçãoExploração de Aplicações WebCriptografiaTestes de PenetraçãoSegurança MóvelAutenticação
GitHubxqi1337/cve-2026-0073-android-adbd-bypass-poc

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

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

CVE-2026-0073 — Bypass de autenticação TLS no daemon ADB (adbd) do Android via confusão de tipos em EVP_PKEY_cmp. Obtenha acesso shell não autorizado por WiFi usando incompatibilidade de chaves EC/Ed25519. Exploit PoC para Android 14+.

Ver Repositório
1há 5 mesesAinda não revisado

CVE-2026-0073 — Bypass de Autenticação TLS do ADBD do Android

Confusão de tipos em EVP_PKEY_cmp() → shell ADB não autorizado

Python 3.10+ CVE-2026-0073 Android License


🔥 Visão Geral

Um bypass crítico de autenticação no daemon ADB do Android (adbd) permite que qualquer atacante na rede local obtenha um shell completo em um dispositivo alvo sem autorização do usuário.

A vulnerabilidade existe em adbd_tls_verify_cert() dentro de daemon/auth.cpp, onde EVP_PKEY_cmp() é usado como booleano. Quando a chave armazenada é RSA e o certificado de cliente TLS apresentado carrega uma chave não-RSA (EC P-256 ou Ed25519), EVP_PKEY_cmp() retorna -1 (incompatibilidade de tipo), o que é verdadeiro em C/C++, portanto authorized = true.

// Vulnerable code pattern in daemon/auth.cpp
if (EVP_PKEY_cmp(peer_key, stored_key)) {  // ← BUG: -1 is truthy!
    authorized = true;
}
Retorno de EVP_PKEY_cmp()SignificadoVerdadeiro em C?Resultado
1As chaves correspondem✅Autorizado (correto)
0As chaves diferem❌Rejeitado (correto)
-1Incompatibilidade de tipo✅Autorizado (BUG)

⚡ Início Rápido

Instalar dependências

pip install cryptography

Execute o exploit

# Interactive shell
python adb_tls_auth_bypass.py <TARGET_IP> <PORT>

# Single command execution
python adb_tls_auth_bypass.py 192.168.1.42 37521 --cmd "id"

# Verbose mode (see full protocol trace)
python adb_tls_auth_bypass.py 192.168.1.42 37521 -v --cmd "id"

Forçar um tipo de chave específico

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

Por padrão, o script tenta automaticamente EC P-256 → Ed25519 → EC/TLS 1.2 até que uma delas seja bem-sucedida.


🎯 Fluxo de Exploração

   Attacker                          Target (adbd)
      │                                    │
      │──── TCP connect ──────────────────►│
      │──── CNXN (cleartext) ────────────►│
      │◄─── STLS (TLS upgrade request) ──│
      │──── STLS reply ──────────────────►│
      │                                    │
      │════ TLS 1.3 Handshake ════════════│
      │  (EC P-256 client cert presented)  │
      │  EVP_PKEY_cmp(EC, RSA) → -1       │
      │  -1 is truthy → authorized=true   │
      │════════════════════════════════════│
      │                                    │
      │◄─── CNXN (device info) ──────────│
      │──── OPEN "shell:" ───────────────►│
      │◄─── OKAY ────────────────────────│
      │◄──► WRTE/OKAY (shell I/O) ──────►│
      │                                    │
    [FULL SHELL ACCESS]                    │

📋 Pré-requisitos

RequisitoDetalhes
Opções do desenvolvedorAtivadas no dispositivo de destino
Depuração sem fioAtivada (ou ADB sobre TCP na porta 5555)
Chave RSA armazenadaO dispositivo deve ter sido emparelhado via USB pelo menos uma vez (/data/misc/adb/adb_keys)
Acesso à redeO atacante deve conseguir alcançar a porta TCP do adbd

⚠️ Importante: A chave RSA deve estar em /data/misc/adb/adb_keys, que é preenchido via emparelhamento de depuração USB (aceitando o diálogo "Permitir depuração USB?"). O emparelhamento de depuração sem fio (adb pair) armazena as chaves em um local diferente (adb_known_hosts.pb) e NÃO satisfaz este requisito.


🛡️ Versões afetadas

  • Android 14 (AOSP) — ✅ Vulnerabilidade confirmada
  • Android 15 (AOSP) — Provavelmente vulnerável (builds sem patch)
  • Builds específicos de fabricantes podem variar (Samsung One UI, Pixel, etc.)

Como verificar o nível de patch

adb shell getprop ro.build.version.security_patch

🧪 Ambiente de Testes

Testado e confirmado como funcional em:

Kernel:   6.1.23-android14-4-00257-g7e35917775b8-ab9964412
Platform: Android 14 (Android Studio Emulator)

🔧 Melhorias em Relação ao Original

Este fork inclui várias melhorias:

  • ✅ Fallback multi-chave — Tenta automaticamente EC P-256 → Ed25519 → EC/TLS 1.2
  • ✅ Suporte a Ed25519 — Tipo de chave alternativo para maior compatibilidade
  • ✅ Fallback para TLS 1.2 — Fluxo de certificado de cliente diferente (enviado durante o handshake vs pós-handshake)
  • ✅ Certificado aprimorado — Extensões X.509 adequadas (BasicConstraints, KeyUsage)
  • ✅ Compatível com Windows — Usa I/O com threads em vez de select() para suporte multiplataforma
  • ✅ Timeouts aumentados — Maior confiabilidade em redes mais lentas
  • ✅ Diagnósticos detalhados — Rastreamento detalhado do protocolo com a flag -v

📁 Estrutura do Projeto

CVE-2026-0073-Android-ADBD-bypass-POC/
├── adb_tls_auth_bypass.py    # Main exploit script
└── README.md                 # This file

⚠️ Aviso legal

Esta ferramenta é fornecida apenas para testes de segurança autorizados e fins educacionais. O acesso não autorizado a sistemas de computador é ilegal. Sempre obtenha a autorização adequada antes de testar. O autor não assume qualquer responsabilidade pelo uso indevido deste software.


📚 Referências

  • CVE-2026-0073 — MITRE
  • Boletim de Segurança do Android
  • Documentação do OpenSSL EVP_PKEY_cmp
  • Referência do Protocolo ADB

Se isto ajudou a sua pesquisa, deixe uma ⭐

Baixar ferramenta