Обычный LTE-маршрутизатор за $88 привёл специалистов к двум скрытым механизмам удалённого управления, встроенным прямо в прошивку: один позволяет выполнять команды с правами root через интернет без аутентификации, а второй умеет перехватывать DNS, красть учётные данные провайдера и открывать обратный SSH-туннель.
Специалисты VulnCheck обнаружили закладки DARKLANTERN и SPEAKINGSTONE в маршрутизаторе Deep Orange 3G/4G/LTE Router, купленном у американского поставщика. Устройство оказалось переименованной версией китайского ZBT-WE826-T2 производства Shenzhen Zhibotong Electronics. Прошивку собрали ещё в 2019 году.
Проверка началась после предыдущей работы VulnCheck, посвящённой закладке ENDLESSDOORS. В августе специалисты нашли её более чем в 20 моделях Zbtlink. Компонент запускался при загрузке с правами root и самостоятельно подключался к серверу управления. После того как VulnCheck опубликовала эти данные, специалисты решили проверить более старые устройства из цепочки поставок ZBT и вместо ENDLESSDOORS обнаружили ещё два механизма удалённого управления.
DARKLANTERN работает как служба infosrvd и слушает UDP-порт 9992, который штатный межсетевой экран маршрутизатора открывает для подключений из интернета. Протокол не использует шифрование и полноценную аутентификацию. Специальный пакет позволяет запросить модель устройства, версию прошивки, MAC-адрес, время работы и другие сведения.
Второй тип пакета передаёт системную команду. Из-за того, как обрабатываются данные, отправитель может выполнить произвольную команду с максимальными привилегиями. Проверку MAC-адреса тоже можно обойти, указав вместо адреса шесть нулевых байтов. С 18 по 21 августа VulnCheck обнаружила 203 доступных из интернета устройства с DARKLANTERN в 22 странах. Маршрутизаторы сообщили о 16 разных моделях, поэтому проблема не ограничивается WE826-T2.
SPEAKINGSTONE устроен иначе. Служба yunmgrd сама устанавливает UDP-соединение с сервером управления и регулярно отправляет сведения об устройстве, включая модель, прошивку, MAC-адрес, SSID, локальный IP-адрес, время работы и в некоторых конфигурациях координаты. Оператор может запускать произвольные команды, получать имя пользователя и пароль PPPoE, менять настройки DNS, создавать обратный SSH-туннель и указывать резервные серверы управления.
В прошивке также оказался скрыт резервный домен findmyipaddr.com. На момент проверки адрес никому не принадлежал, поэтому VulnCheck зарегистрировала домен и направила подключения на контролируемый сервер. Маршрутизаторы начали обращаться к нему почти сразу. К 21 августа специалисты получили сигналы от 392 уникальных устройств, причём 390 находились в Китае. Около 83% работали в сети China Mobile, а 363 устройства сообщили одну и ту же модель L3_V2_8 и одинаковую версию прошивки.
Масштаб может быть больше полученных цифр. SPEAKINGSTONE обращается к резервному адресу только тогда, когда в конфигурации отсутствует основной сервер. Основной домен ac-link.com продолжал работать во время проверки, поэтому устройства, настроенные на него, в статистику VulnCheck не попали.
Дополнительную проблему создаёт то, как ZBT производит оборудование. Компания выпускает оборудование для других поставщиков, которые продают маршрутизаторы под собственными названиями. Сама ZBT предлагает OEM- и ODM-производство, включая полную кастомизацию устройств. VulnCheck связала платформы компании с продукцией, продававшейся в США, Канаде, Австралии, Германии, на Филиппинах и других рынках. Наличие аппаратной платформы ZBT при этом не означает, что конкретный маршрутизатор обязательно содержит найденные закладки.
После того как раскрыли ENDLESSDOORS, производитель заявил, что компонент rctl предназначался исключительно для технической поддержки с разрешения клиента. ZBT остановила продажи затронутых моделей, убрала соответствующие прошивки с сайта и сообщила о подготовке исправлений.
Новые DARKLANTERN и SPEAKINGSTONE относятся к другим компонентам и встречаются в более старых поколениях прошивок, что указывает на существование нескольких механизмов удалённого управления в устройствах ZBT разных лет.
