Нажмите R1+Y, чтобы впустить хакера. Злоумышленники превратили робопсов Unitree в шпионов

leer en español

Нажмите R1+Y, чтобы впустить хакера. Злоумышленники превратили робопсов Unitree в шпионов

Купили робота за тысячи долларов, а получили бэкдор на четырех лапах.

image

Домашний робопёс может превратиться в «троянского коня», если рядом окажется человек с ноутбуком и нужными знаниями. В популярных моделях Unitree нашли уязвимости, которые позволяют незаметно внедрить свой код и получить полный контроль над устройством.

Речь идёт о моделях линейки Go2, включая версию AIR. Проблемы получили идентификаторы CVE-2026-27509 и CVE-2026-27510. Обе приводят к удалённому выполнению кода, но используют разные точки входа. В первом случае злоумышленник подключается к внутреннему сервису робота по протоколу распределённой передачи данных, во втором – подменяет данные в мобильном приложении и заставляет устройство запустить произвольный сценарий.

Первая уязвимость, CVE-2026-27509, затрагивает прошивки до версии 1.1.11 включительно, а в редакции EDU сохраняется и позже. Робот использует промежуточное программное обеспечение Eclipse CycloneDDS для обмена сообщениями между модулями. По умолчанию проверку подлинности не включили. Любое устройство в той же сети может подключиться к домену обмена данными и отправить сообщение в служебный раздел programming_actuator. Сервис принимает запрос, извлекает из него текст программы на Python, сохраняет файл в каталоге /unitree/etc/programming/ и привязывает к одной из комбинаций кнопок на пульте.

Дальше всё просто. Владелец нажимает, например, R1+Y, робот запускает сохранённый файл с правами root. Проверки содержимого нет, ограничения ресурсов нет, изоляции нет. Достаточно один раз загрузить вредоносный сценарий, и он переживёт перезагрузку, поскольку привязка к кнопке хранится в отдельном текстовом файле. Фактически злоумышленник получает постоянный бэкдор, который активируется нажатием кнопки.

В прошивке 1.1.11 производитель попытался сократить поверхность атаки и отключил автоматическое раскрытие служебных разделов в сети. Количество видимых каналов обмена сократилось с десятков до четырёх. Однако в версии EDU проблемный механизм остался доступен, что подтвердили в переписке с компанией.

Вторая уязвимость, CVE-2026-27510, использует ту же внутреннюю логику, но заходит с другой стороны. Приложение Unitree для Android позволяет создавать визуальные сценарии поведения робота – пользователь собирает действия в графическом интерфейсе, после чего программа превращается в код на Python и отправляется устройству. Этот код также сохраняется в /unitree/etc/programming/ и запускается по назначенной комбинации клавиш.

Специалисты выяснили, что текст сценария хранится в локальной базе данных SQLite на смартфоне. Если получить права суперпользователя на устройстве и изменить поле pyCode в таблице, можно подставить любой Python-код. После возврата базы на место приложение без проверок отправляет изменённый сценарий роботу. Дальше механизм тот же: файл записывается в системный каталог, назначается на кнопку и выполняется с правами администратора.

Отдельный риск связан с магазином пользовательских сценариев. Приложение позволяет публиковать созданные программы и делиться ими с другими владельцами. При определённых условиях злоумышленник может подготовить вредоносный сценарий и попытаться распространить его через эту площадку, что открывает путь к массовому заражению устройств.

Производитель запустил собственный центр реагирования на инциденты и в феврале 2026 года выпустил обновление 1.1.13 с исправлениями для CVE-2026-27510 и дополнительной проверкой загружаемых сценариев. Исправление для CVE-2026-27509 в версии EDU пока под вопросом.