Исследователи из компании VulnCheck обнаружили бэкдор ENDLESSDOORS в прошивках как минимум 20 моделей роутеров китайской компании Zbtlink. Вредонос запускается при загрузке системы, регулярно связывается с управляющей инфраструктурой и позволяет без аутентификации выполнять команды с правами root. При этом представители Zbtlink утверждают, что это не бэкдор, а инструмент для сервисного обслуживания.
Специалисты изучили все образы прошивок, опубликованные на сайте Zbtlink за последние два года, и в каждом из них был обнаружен один и тот же имплант, который запускается посредством init.d-скрипта skworker и обращается к своим управляющим серверам каждые 35 секунд.
ENDLESSDOORS маскируется под поток ядра Linux с именем kworker, однако на самом деле он представляет собой пользовательский процесс, который работает с правами root и маскируется среди других легитимных процессов kworker.
По словам специалистов, в основе бэкдора лежит модифицированная версия малоизвестного опенсорсного инструмента rctl (remote control linux), чей исходный код был опубликован на GitHub еще в 2015 году и с тех пор не обновлялся. Серверная часть rctl принимает соединения на порту 7000, а также может отправлять клиенту отдельные шелл-команды или запускать реверс-шелл.
В отчете VulnCheck подчеркивается, что никаких проверок, аутентификации или обмена ключами не предусмотрено. После подключения к управляющему серверу роутер передает фиксированное 39-байтовое приветствие и MAC-адрес локального интерфейса, а затем просто выполняет полученные в ответ команды. При этом специальная строка rctlbash может вынудить бэкдор открыть второе соединение на порту 7001, запустить /bin/sh и предоставить удаленным операторам интерактивный root-шелл.
«Весь этот протокол сводится к двум командам: "выполни это с правами root" и "дай мне root-шелл". Любой, кто находится на пути следования сетевого трафика, может перехватить обмен данными между клиентом и сервером», — объясняют эксперты.
Таким образом, перехватить управление устройством может и злоумышленник: перехватить исходящее соединение, подменить DNS-ответ или получить контроль над одним из доменов или IP-адресов, к которым обычно обращается ENDLESSDOORS. При этом атакующему даже не потребуется подключаться к роутеру извне: устройство само инициирует исходящее соединение.
Исследователи зафиксировали четыре основных адреса, к которым обращаются роутеры: zbtctl.epplink[.]net, online-string[.]com, rbdg4nzqadui.wikaba[.]com и 47.107.224[.]89.
Среди зараженных ENDLESSDOORS моделей перечислены:
- CPE2801;
- WE1026-5G-WD;
- WE1326;
- WE2007;
- WE2008-DSIM;
- WE2416;
- WE3326;
- WE5927;
- WE5931;
- WE5931AC;
- WE826-T3-DSIM;
- WG108;
- WG1602;
- WG1608-DSIM;
- WG209;
- WG2105;
- WG2107;
- WG259;
- WG3526;
- Z8102AX-2DSIM.
Следует отметить, что в VulnCheck не стали заранее уведомлять производителя об обнаружении ENDLESSDOORS. Технический директор компании Джейкоб Бейнс (Jacob Baines) пояснил, что обнаруженный механизм умышленно внедрен в прошивки роутеров, запускается штатным скриптом и присутствует в десятках образов. Поэтому, по его словам, стандартная процедура координированного раскрытия уязвимостей в этом случае не имела смысла.
После публикации исследования VulnCheck представители Zbtlink заявили, что роутеры компании не содержат бэкдор. По их словам, обнаруженный ИБ-специалистами механизм не является вредоносным, а предназначен исключительно для послепродажного сервисного обслуживания устройств и отладки ПО.
В компании уверяют, что обычно такая функциональность присутствует только в тестовых образцах оборудования и не попадает на серийные устройства. Также в Zbtlink подчеркнули, что компания занимается OEM- и ODM-производством, и многие ее клиенты устанавливают на устройства собственные прошивки.
Роутеры Zbtlink действительно продаются под такими брендами, как ZBT, ZBTWiFi и Wiflyer, и в своем отчете исследователи отмечают, что из-за OEM-модели бэкдор может присутствовать и в устройствах других брендов.
В настоящее время компания приостановила продажи всех затронутых моделей, а с сайта Zbtlink убрали возможность скачивания прошивок. Теперь на сайте сообщается, что в некоторых прошивках были выявлены проблемы безопасности, поэтому они временно недоступны, а разработчики уже работают над созданием исправленных версий.
В свою очередь специалисты рекомендуют владельцам затронутых маршрутизаторов заменить их другими устройствами или как минимум заблокировать соединения с управляющими адресами, жестко ограничить исходящий трафик и считать локальную сеть устройства недоверенной.
