Миллионы маршрутизаторов уязвимы из-за бреши в драйвере NetUSB


Sec ConsultСпециалистами компании Sec Consult была обнаружена уязвимость в ПО KCodes NetUSB. Выявленная брешь позволяет злоумышленникам скомпрометировать миллионы маршрутизаторов, таких торговых марок как:

  • D-Link;
  • NETGEAR;
  • TP-LINK;
  • Trendnet и др.


Это стало возможно благодаря применению многими производителями драйвера NetUSB и своего собственного протокола при внедрении в свою продукцию возможности использования подключенных в маршрутизатор USB-устройств через TCP/IP. Технология позволяет подключать любые типы девайсов - принтеры, флеш-накопители, web-камеры, клавиатуры, звуковые карты и пр.

Эксплуатация уязвимости (CVE-2015-3036) в маршрутизаторах, которые поддерживают данную технологию, позволяет вызвать переполнение буфера на стеке в режиме ядра и удаленно выполнить код.

Модуль ядра NetUSB.ko прослушивает порт 20005, даже если к маршрутизатору не подключено ни одно USB-устройство. Чтобы осуществить аутентификацию, он использует алгоритм блочного шифрования AES со статическим ключом. Такой подход уже позволяет атакующему удаленно воспользоваться подключенным USB-девайсом. Однако основная уязвимость заключается в фиксированном размере буфера для имени подсоединяемого компьютера, длина которого не должна превышать 64 символа. И вот переполнение этого буфера и ведет к переполнению стека в ядре.

Эксперты подтвердили наличие уязвимостей в маршрутизаторах TP-Link TL-WDR4300 V1, TP-Link WR1043ND v2 и Netgear WNDR4500. Проанализировав образы прошивок различных производителей на наличие модуля NetUSB.ko, специалисты установили, что уязвимыми являются еще 92 продукта, в том числе маршрутизаторы от D-Link, Netgear, TP-Link, Trendnet и ZyXEL Communications.

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


Обновлено (22.05.2015 18:23)