Серьезная уязвимость в популярном роутере Belkin может быть эксплуатирована локальным неаутентифицированным злоумышленником для взятия устройства под полный контроль.

Хорошая новость в том, что баг уже пропатчен производителем. Есть и плохая — никто не обновляет прошивку домашнего роутера.

Уязвимость присутствует в веб-интерфейсе гостевой сети гигабитного роутера Belkin N750 DB Wi-Fi Dual-Band N+ (версия микропрограммы F9K1103_WW_1.10.16m). В данном роутере функциональность гостевой сети включена по умолчанию, и для подключения к ней не требуется аутентификация. Для решения этой проблемы пользователям необходимо обновить микропрограмму до версии F9K1103_ww_1.10.17m.

Согласно Марко Вазу (Marco Vaz) из Integrity Labs, баг (CVE-2014-1635) поначалу расценивался как простое переполнение буфера, и не было ясно, можно ли его эксплуатировать.

Ваз обнаружил уязвимость после проведения легкого фаззинга. Он заметил, что параметр «jump» POST-запроса меняется от переполнения буфера при нагрузке пакета 5000 байт. Когда он вызвал переполнение буфера, процесс умирал.

Чтобы определить, эксплуатируем ли баг, он виртуализировал процесс роутера и смог провести отладку процесса (для MIPS32) на x86-системе. Это потребовало применения бинарных патчей и внедрения функций, чтобы обойти ограничения на доступ к конфигурации на его эмуляторе QEMU. Ваз описал свои виртуализированные тесты эксплуатируемости в блоге на сайте Integrity Labs.

В конце концов он определил, что удаленный неаутентифицированный злоумышленник может запускать команды root-уровня на роутере, отправляя особо сконструированные POST-запросы к httpd (HTTP-сервер Apache), который служит в качестве агента аутентификации для захода в гостевую сеть.

Integrity Labs сообщила Belkin о баге 24 января и отправила доказательство концепции 28 января. Belkin выпустила обновленную версию своей прошивки, исправляющую баг, 31 марта.

Сама по себе уязвимость, очевидно, не нова. С другой стороны, Ваз опубликовал свой эксплойт только вчера.

Категории: Уязвимости