
Автоматизированный эксплойт для CVE-2026-0073 (Android ADB TLS Auth Bypass). Оснащён встроенным mDNS/Zeroconf-сканером для мгновенного обнаружения рандомизированных портов Wireless Debugging на Android 13+ и устанавливает полностью интерактивную raw PTY-оболочку.
Автоматизированный сетевой сканер и инструмент эксплуатации для CVE-2026-0073 — уязвимости в демоне Android Debug Bridge (adbd), которая позволяет выполнить неаутентифицированный удалённый код (RCE) и получить интерактивный доступ к оболочке через беспроводную отладку.
Этот инструмент специально оптимизирован для современных устройств Android (Android 13+), включает mDNS-автообнаружение для поиска рандомизированных ADB-портов и полностью интерактивную raw PTY-оболочку.
🚨 Краткое описание уязвимости (Android Security Bulletin)
CVE ID: CVE-2026-0073
Android Issue ID: A-469080888
Воздействие: RCE (удалённое выполнение кода)
Серьёзность: Критическая
Официально затронутые версии: Android 14, 15, 16, 16-qpr2 ........ некоторые сообщают, что некоторые устройства Android 13 уязвимы
⚠️ Отказ от ответственности: Данный инструмент предоставляется исключительно в образовательных целях и для авторизованных исследований безопасности. Не используйте его против сетей или устройств, которыми вы не владеете или на тестирование которых у вас нет явного разрешения.
Современные устройства Android используют взаимную аутентификацию TLS для беспроводной отладки, чтобы предотвратить несанкционированные подключения. Однако CVE-2026-0073 выявляет криптографический изъян: когда adbd обрабатывает клиентский сертификат с не-RSA ключами (например, Elliptic Curve ec или ed25519), внутренняя функция OpenSSL EVP_PKEY_cmp возвращает код ошибки, который неправильно обрабатывается, фактически обходя проверку аутентификации полностью.
Для дальнейшего изучения и глубокого технического анализа этой уязвимости ознакомьтесь со следующими ресурсами:
Примечание о подверженности устройств: Хотя эта ошибка в целом документирована для конкретных версий Android, реальное тестирование показало неожиданные результаты на различных реализациях OEM. Как отметил автор блога Mobile Hacker: «Во время моего теста по какой-то причине мне удалось эксплуатировать и Android 13, см. Рисунок 1. В частности, Oppo Reno5 Z.»
PATH вашей системы.zeroconf (для сканирования сети).# Установка необходимого Python-пакета
pip install zeroconf
Просто запустите скрипт без аргументов. Он будет прослушивать локальную сеть в течение 4 секунд, перехватывать mDNS-рассылки всех устройств Android с включённой беспроводной отладкой и покажет вам меню.
python3 adb_tls_exploit.py
Пример вывода:
[*] Scanning local network for Android 13+ devices for 4 seconds...
[+] Found active Android devices:
[1] 192.168.1.15 : 43881 | Pixel 7
[2] 192.168.1.42 : 39105 | Oppo Reno5 Z
Select a device to target [1-2]: 2
============================================================
ADB TLS Auth Bypass -> Interactive Shell
============================================================
[*] Target : 192.168.1.42:39105
[*] Key type : ec
[*] Generating ec self-signed certificate via openssl...
[+] Server requested STLS. Upgrading to TLS...
[+] TLS handshake accepted — mutual authentication bypassed!
[*] Authenticated! Opening interactive shell service...
[+] Shell obtained! (Press Ctrl+D to exit)
Reno5Z:/ $ id
uid=2000(shell) gid=2000(shell) groups=2000(shell),1004(input),1007(log),1011(adb)...
Если вы уже знаете IP-адрес цели и рандомизированный порт (или работаете с устаревшим устройством на порту 5555, которое было пропатчено для работы через TLS), вы можете пропустить сканер:
python3 adb_tls_exploit.py <IP_ADDRESS> <PORT> [--key ec|ed25519] [--verbose]
# Пример
python3 adb_tls_exploit.py 192.168.1.50 42069 --key ec
zeroconf для пассивного прослушивания служб _adb-tls-connect._tcp.local.. Это позволяет мгновенно сопоставить цели без шумного или медленного сканирования TCP-портов.CNXN, рекламирующий поддержку TLS (tls_auth).STLS, требуя установки защищённого соединения.ec) или ed25519.adbd пытается проверить ключ. Так как ключ не RSA, EVP_PKEY_cmp возвращает -1 или -2. Уязвимый код внутри Android неправильно интерпретирует это ненулевое возвращаемое значение как успешное криптографическое совпадение./data/misc/adb/adb_keys полностью пуст. Для срабатывания эксплойта в хранилище ключей должен присутствовать хотя бы один существующий (даже не связанный) ключ, чтобы запустить ошибочное сравнение в цикле.apt install openssl, brew install openssl или установка через Windows-сборки).OPEN с назначением shell\x00 и подключает стандартные потоки ввода/вывода к вашему терминалу, предоставляя полную, непривилегированную оболочку (uid=2000).