
Три неаутентифицированные уязвимости в протоколе локального управления по WiFi видеорегистратора Thinkware U3000: произвольная запись файлов, произвольное чтение файлов и раскрытие учётных данных WiFi в открытом виде. CVE-2026-101053, CVE-2026-101054, CVE-2026-101055.
Три уязвимости в протоколе локального управления по WiFi видеорегистратора Thinkware U3000, обнаруженные путём обратной разработки официального Android-приложения и подтверждённые на реальном оборудовании. Все три требуют только доступа к локальной сети: ни физического доступа к устройству, ни предварительной аутентификации, ни содействия владельца устройства.
Раскрыто компании Thinkware 2026-06-21. 30-дневное окно раскрытия закрылось, получено лишь нетехническое подтверждение получения.
Видеорегистраторы — необычная категория для такого рода уязвимостей. Они непрерывно записывают перемещения автомобиля и часто меняют владельцев через аренду, управление автопарком и продажу подержанных автомобилей. Тот, у кого сейчас есть доступ к автомобилю, не обязательно контролирует сеть, в которой он настроен. В сочетании с примитивом произвольной записи файлов и полным отсутствием аутентификации в протоколе управления это выходит за рамки проблемы конфиденциальности. Это также проблема целостности: любой файл на устройстве, а не только видео, может быть изменён или заменён без ведома владельца.
Это также не первый случай, когда уязвимость такого рода обнаруживается в видеорегистраторе Thinkware. Независимый исследователь geo-chen ранее раскрыл несколько проблем в родственной модели F800 Pro; см. geo-chen/Thinkware-Dashcam. Для их эксплуатации, как правило, требовался физический доступ или доступ к локальной файловой системе. Приведённые ниже находки не требуют ни того, ни другого: достаточно лишь доступа к сети, а находка с записью файлов даёт более широкие возможности, чем что-либо из того предыдущего набора.
Примечание о затронутой модели: все приведённые ниже находки подтверждены на базовой модели Thinkware U3000. Thinkware также продаёт отдельный вариант «U3000 Pro»; проверялось ли, что он использует ту же реализацию протокола, неизвестно.
CVE: CVE-2026-101053 (VulDB #410915)
Полное описание:
findings/01-arbitrary-file-write.md
Продукт: Thinkware U3000 Dashcam
Затронутый компонент: протокол управления TCP (команды на порту 7878 / данные на порту 8787), без аутентификации
Вектор атаки: любое устройство в той же локальной сети может записать контролируемое злоумышленником содержимое по любому абсолютному пути в файловой системе устройства.
Протокол управления устройством предоставляет команду PUT_FILE, которая записывает предоставленные злоумышленником байты по указанному злоумышленником абсолютному пути без какой-либо проверки пути или изоляции. Подтверждено записью файла непосредственно в каталог /tmp устройства — тот же каталог, где хранится его собственная конфигурация WiFi (wpa_supplicant.conf) и как минимум один shell-скрипт (hidraw0.sh), — и последующим чтением его обратно байт в байт для подтверждения точного размещения.

START_SESSION -> SET_CLNT_INFO -> APP_CONNECT.PUT_FILE с param, указывающим на путь за пределами тех мест, куда официальное приложение стало бы записывать легитимно.{"rval": 0, "msg_id": 1286}, а затем отправляет асинхронное NOTIFICATION (msg_id 7), подтверждающее завершение.LS в родительском каталоге подтверждает наличие файла под точно запрошенным именем, рядом с системными файлами.GET_FILE по тому же пути считывает содержимое обратно для побайтового сравнения с отправленным.CVE: CVE-2026-101054 (VulDB #410916)
Полное описание:
findings/02-arbitrary-file-read.md
Продукт: Thinkware U3000 Dashcam
Затронутый компонент: протокол управления TCP (команды на порту 7878 / данные на порту 8787), без аутентификации
Вектор атаки: любое устройство в той же локальной сети может перечислять и читать любой абсолютный путь в файловой системе устройства, а не только записанное видео.
Команды LS и GET_FILE того же протокола перечисляют и читают любой абсолютный путь без ограничений. Подтверждено прямым чтением живого wpa_supplicant.conf устройства, который содержит его реальный SSID WiFi и пароль в открытом виде. Это зеркальное отражение Находки 1 со стороны чтения: та же первопричина, противоположное направление и механически иной путь к тем же учётным данным, раскрытым в Находке 3.
START_SESSION -> SET_CLNT_INFO -> APP_CONNECT.LS в /tmp подтверждает наличие wpa_supplicant.conf рядом с другими системными файлами (hidraw0.sh, aws.dat, resolv.conf и т. д.).GET_FILE с param: "/tmp/wpa_supplicant.conf" возвращает размер файла, после чего полное содержимое передаётся через сокет данных точно так же, как это было бы для видеофайла.ssid=/psk=, соответствующие фактически настроенной сети камеры.CVE: CVE-2026-101055 (VulDB #410917)
Полное описание:
findings/03-wifi-credential-disclosure.md
Продукт: Thinkware U3000 Dashcam
Затронутый компонент: протокол управления TCP (порт 7878), без аутентификации
Вектор атаки: любое устройство в той же локальной сети может напрямую получить пароль WiFi камеры без аутентификации и без предварительного доступа.
Специальный запрос статуса GET_STATUS "wifi_info" напрямую возвращает SSID WiFi устройства и пароль в открытом виде. Это иной механизм, чем в Находке 2: он вообще не требует доступа к файловой системе, только обычное чтение статуса протокола.
START_SESSION -> SET_CLNT_INFO -> APP_CONNECT.GET_STATUS с param: "wifi_info".{"rval": 0, "msg_id": 2050, "type": "wifi_info", "param": [{"ssid": "<real SSID>"}, {"password": "<real plaintext password>"}, {"mac": "<real MAC>"}]}.