
Exploit de bypass de autenticação zero-click para Android ADB Wireless Debugging (CVE-2026-0073). Fornece shell interativo, execução de comandos e varredura de rede para testes de segurança autorizados.

Zero-Click | Shell Remoto | Scanner de Rede | Ferramenta Educacional de Pesquisa em Segurança
USO EXCLUSIVAMENTE ÉTICO – TESTES DE SEGURANÇA AUTORIZADOS
Este repositório fornece ferramentas apenas para profissionais de segurança autorizados, blue teams e pentesters.
O acesso não autorizado a sistemas de computador é ilegal sob o CFAA (EUA), Computer Misuse Act (Reino Unido), TCK 243/244 (Turquia) e leis similares em todo o mundo.
CVE-2026-0073 é uma vulnerabilidade crítica de bypass de autenticação no daemon ADB do Android que afeta o Wireless Debugging em dispositivos Android 14, 15 e 16. A falha reside na lógica de verificação de certificado TLS, onde uma confusão de tipos em EVP_PKEY_cmp() permite que atacantes contornem a autenticação apresentando um certificado EC P-256 ou Ed25519 contra um dispositivo configurado com uma chave RSA.
Este repositório fornece duas ferramentas separadas: um exploit.py weaponizado para operações autorizadas de red team, e um safedetect.py não intrusivo para blue teams e auditorias de segurança.
Ambas as ferramentas são fornecidas apenas para pesquisa de segurança autorizada e fins educacionais.
| Recurso | Descrição |
|---|---|
| Descoberta Inteligente de Portas | Escaneia automaticamente portas wireless comuns + descoberta mDNS, verifica ADB via handshake CNXN |
| Bypass TLS 1.3 | Explora confusão de tipos em EVP_PKEY_cmp() para bypass de autenticação |
| Suporte a Chave Dupla | Certificados EC P-256 (padrão) ou Ed25519 |
| Shell Interativo | Acesso completo ao terminal com I/O baseado em threads |
| Modo Comando Único | Executa um comando e sai - perfeito para scripting |
| Scanner de Rede | Escaneia toda a sub-rede em busca de dispositivos vulneráveis |
| Retry Automático | Backoff exponencial + jitter + máximo de tentativas configurável |
| Substituição Manual de Porta | Especifica porta quando a descoberta automática falha |
| Captura de Saída | Salva resultados de comandos em arquivo |
| Saída Colorida | Feedback visual profissional via colorama |
| Debug Verboso | Log detalhado para solução de problemas |
| Suporte a Proxy | Compatibilidade com proxy SOCKS5 / SOCKS4 / HTTP |
| Shell com Threads | Sessão interativa não bloqueante |
| Descoberta mDNS | Detecção passiva do serviço _adb-tls-connect._tcp |
| Pool Persistente | Pool de conexões thread-safe com tamanho configurável |
| Timeouts Granulares | Timeouts por estágio (connect, TLS, auth, recv) |
| Modo Furtivo | Jitter + rotação de SNI + rotação de CN + rotação de chave |
| Rate Limiting | Throttle de conexões token-bucket para evitar IDS |
| Relatórios JSON/CSV/HTML | Saída estruturada compatível com SIEM para SafeDetect |
| Versão do Android | Afetada |
|---|---|
| Android 14 | ✅ Sim |
| Android 15 | ✅ Sim |
| Android 16 | ✅ Sim |
| Android 13- | ❌ Não |
Patch: Android Security Bulletin 2026-05-01
| Recurso | exploit.py (Weaponizado) | safedetect.py (Blue Team) |
|---|---|---|
| Propósito | Exploração completa + acesso ao shell | Detecção não intrusiva e auditoria |
| Entrada de alvo | Alvo único / scan de sub-rede | Único / CIDR / arquivo / mDNS |
| Suporte a CIDR | ❌ Não | ✅ Sim (até /20) |
| Suporte a intervalo de portas | ❌ Não | ✅ Sim (--ports 5555,39311-39400) |
| Alvos baseados em arquivo | ❌ Não | ✅ Sim (-f targets.txt) |
| Descoberta mDNS | ✅ avahi-browse | ✅ zeroconf (Python puro) |
| Descoberta automática de rede | ✅ Sim (interface ou /24 padrão) | ✅ Sim (interface ou /24 padrão) |
| Scan multi-threaded | ✅ Sim (lote de 32 threads) | ✅ Sim (ThreadPoolExecutor) |
| Detecção de porta ADB | ✅ Handshake CNXN | ✅ Apenas banner CNXN |
| Detecção de ADB wireless | ✅ Sonda STLS | ✅ Sonda STLS (sem auth) |
| Inspeção de handshake TLS | ✅ Completa (mTLS) | ✅ Apenas observacional |
| Detecção de ADB em texto claro | ❌ Não (assume wireless) | ✅ Sim (tcp_banner) |
| Geração de certificado | ✅ EC / Ed25519 | ❌ Nunca |
| Bypass de autenticação | ✅ Confusão de tipos EC/Ed25519 vs RSA | ❌ Nunca tentado |
| Envio de assinatura AUTH | ✅ Sim | ❌ Nunca |
| Acesso ao shell | ✅ Shell interativo | ❌ Nunca |
| Execução de comando | ✅ Sim (-c "id") | ❌ Nunca |
| Reverse shell | ❌ Não | ❌ Nunca |
| Shell interativo | ✅ Sim (I/O com threads) | ❌ Nunca |
| Saída para arquivo | ✅ Sim (-o) | ❌ Não |
| Relatório JSON | ❌ Não | ✅ Sim |
| Relatório CSV | ❌ Não | ✅ Sim |
| Relatório HTML | ❌ Não | ✅ Sim |
| Streaming JSONL | ❌ Não | ✅ Sim |
| Pontuação de risco | ❌ Não (vuln/seguro binário) | ✅ Sim (CRITICAL/HIGH/MEDIUM/SECURE) |
| Recomendações | ❌ Não | ✅ Sim (lista priorizada) |
| Orientação de patch | ❌ Não | ✅ Sim (2026-05-01) |
| Suporte a proxy | ✅ SOCKS5 / SOCKS4 / HTTP | ❌ Não |
| PySocks necessário | ✅ Sim (se proxy usado) | ❌ Não |
| Rate limiting | ✅ Token bucket | ❌ Não |
| Pool de conexões | ✅ BoundedSemaphore | ❌ Não |
| Modo furtivo | ✅ Jitter + SNI + CN + rotação de chave | ❌ Não |
| Rotação de SNI | ✅ Sim | ❌ Não |
| Rotação de CN | ✅ Sim | ❌ Não |
| Rotação de tipo de chave | ✅ Sim (ec ↔ ed25519) | ❌ Não |
| Embaralhamento de portas | ✅ Sim (furtivo) | ❌ Não |
| Lógica de retry | ✅ Exponencial + jitter | ❌ Não |
| Timeouts granulares | ✅ 6 timeouts diferentes | ✅ --timeout único |
| Timeouts configuráveis | ✅ connect/tls/auth/recv/retry | ✅ Apenas --timeout |
| Controle de concorrência | ✅ --pool-size | ✅ --concurrency |
| Modo verboso | ✅ Sim | ✅ Sim |
| Modo silencioso | ❌ Não | ✅ Sim (-q) |
| Saída colorida | ✅ Sim (ANSI) | ✅ Sim (ANSI) |
| Banner | ✅ Banner completo | ✅ Banner safe-detect |
| Root necessário | ✅ Sim (não imposto) | ❌ Não |
| Dependências | cryptography, pysocks (opc) | cryptography (opc), zeroconf (opc) |
| Módulos opcionais | PySocks | cryptography, zeroconf |
| Multiplataforma | ✅ Linux / macOS / Windows | ✅ Linux / macOS / Windows |
| Versão do Python | 3.8+ | 3.8+ |
| Propósito específico | Red team / pentest | Blue team / auditoria |
| Aviso ético | ✅ Banner + comentário | ✅ Banner + rodapé |
| Pegada forense | Alta (TLS, auth, shell) | Mínima (apenas sondagens de banner) |
| Risco legal | Alto (exploit ativo) | Baixo (detecção passiva) |
| Recomendado para | Pentest autorizado | Conformidade / IR / auditoria |
git clone https://github.com/tc4dy/CVE-2026-0073-PoC-Exploit
cd CVE-2026-0073-PoC-Exploit
pip install -r requirements.txt
python3 exploit.py
#or
python3 safedetect.py
cryptography
colorama
zeroconf
pysocks
#Basic - One Shot Exploit
python exploit.py --target 192.168.1.100
#Interactive Shell
python exploit.py -t 192.168.1.100
#Execute Single Command
python exploit.py -t 192.168.1.100 -c "id" -o result.txt
#Scan Entire Network
python exploit.py --scan --interface eth0
#Manual Port + Verbose
python exploit.py -t 192.168.1.100 -p 39311 -v
#Ed25519 Certificate
python exploit.py -t 192.168.1.100 --key-type ed25519
#Non-Interactive Mode (Exit After Command)
python exploit.py -t 192.168.1.100 -c "whoami" --no-interactive