## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-XQI1337-POC-CVE-2026-0073
# CVE-2026-0073 PoC (Обход аутентификации TLS в беспроводном ADB)
Этот каталог содержит Python-концепт (PoC) для CVE-2026-0073.
> Скрипт создан с использованием методов генерации кода с помощью ИИ.
## Краткое описание
CVE-2026-0073 — это логическая ошибка в проверке сертификатов демона ADB (`adbd_tls_verify_cert` в `auth.cpp`). Уязвимая проверка трактует любое ненулевое возвращаемое значение `EVP_PKEY_cmp(...)` как успешное совпадение.
Ожидаемая обработка результата сравнения должна быть:
* `1` = ключи совпадают
* `0` = ключи не совпадают
* отрицательные значения = ошибка / неподдерживаемое сравнение
В уязвимых сборках отрицательные значения рассматриваются как истинные и могут ошибочно пометить сертификат как авторизованный.
## Что делает `poc-cve-2026-0073.py`
Скрипт:
1. Создаёт клиентский сертификат, отличный от RSA (`ec` или `ed25519`).
2. Подключается к целевому TCP-сервису ADB.
3. Выполняет процедуру рукопожатия CNXN -> STLS -> TLS.
4. Проходит аутентификацию через уязвимый путь сравнения сертификатов.
5. Открывает командный сервис (`shell:` с запасным `exec:`).
6. Выводит результат выполнения команды.
## Требования
* Python 3.10+ (рекомендуется)
* пакет `cryptography`
* включён беспроводной ADB на целевом устройстве
* сетевая доступность целевого ADB-порта
* разрешение на тестирование целевого устройства
Установка зависимости:
root@kitploit:~
pip install cryptography
## Использование
Обнаружение целевого ADB-сервиса (при необходимости):
root@kitploit:~
adb mdns services
Запуск PoC:
root@kitploit:~
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`: включить отладочные логи протокола
Примеры:
root@kitploit:~
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
## Пример успешного вывода
root@kitploit:~
[*] 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`
* Возможно, беспроводной ADB отключён.
* Неверный IP-адрес или порт целевого устройства.
* `certificate_unknown`
* Вероятно, устройство уже получило исправление этой проблемы.
* Либо на целевом устройстве нет подходящего доверенного состояния ключа для этого пути аутентификации.
* Тайм-аут ожидания ответов
* Проверьте сетевой путь и доступность целевого ADB-сокета.
* Повторите с `--verbose` для трассировки на уровне пакетов.
## Примечания по проверке уровня исправлений
Базовый уровень исправлений безопасности ОС и уровень исправлений модулей Mainline могут различаться. Устройство может показывать более старый ежемесячный SPL, получая при этом более новые исправления модуля ADB.
Полезные проверки:
root@kitploit:~
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 только в разрешённых средах (собственные лабораторные устройства, явное разрешение или санкционированное тестирование). Не запускайте его против систем, которые вам не принадлежат или на тестирование которых у вас нет письменного разрешения.
## Ссылки
* Бюллетень безопасности Android (май 2026)
* Запись NVD для CVE-2026-0073
* Исходники ADB из AOSP (`daemon/auth.cpp`)