Уязвимость UPnP, позволяющая сканировать сети и организовывать DDoS-атаки, признана официально

Концепция Universal Plug and Play (UPnP) изначально имела благие намерения — унифицировать и автоматизировать настройку сетевых устройств, от домашних медиапроигрывателей до сетей малых предприятий. Но благими намерениями часто бывает вымощена дорога известно куда. Сложный набор протоколов и технологий не мог не иметь пробелов. Так, новая уязвимость CallStranger позволяет отправлять сетевой трафик произвольному получателю.

UPnP применяется во множестве бытовых и офисных устройств с доступом в сеть

UPnP — довольно удобная технология: устройство с поддержкой этой технологии присоединяется к сети, в динамическом режиме получает IP-адрес, сообщает о своих возможностях и опрашивает другие устройства на предмет их возможностей. В UPnP используются известные технологии: IP, TCP/UDP, HTTP и XML. Пример использования UPnP — автоматическое перенаправление портов, которое реализовано, например, в Skype и торрент-клиентах.

Однако бездумное включение UPnP везде может сделать вашу сеть привлекательной целью для злоумышленников. Как сообщает ресурс OpenNET, новая уязвимость CVE-2020-12695, получившая имя CallStranger, позволяет извлекать данные даже из защищённых сетей, сканировать порты компьютеров во внутренней сети, а также задействовать для DDoS-атак весь парк UPnP-устройств, от кабельных модемов и домашних маршрутизаторов до IP-камер и игровых консолей.

В поле CALLBACK можно подставить любой URL

В спецификациях UPnP предусмотрена функция SUBSCRIBE (подписка), она изначально предназначена для отслеживания изменений настроек различных устройств и сервисов в сети. Но она же позволяет и любому атакующему извне отправить HTTP-пакет с заголовком Callback, что даёт возможность применить UPnP-устройство в качестве прокси-узла. Этот узел может быть занят отправкой запросов на другие хосты.

Проблема этой части спецификаций UPnP в том, что функция SUBSCRIBE позволяет указать любой URL, с которым устройство попытается осуществить соединение. К сожалению, этой уязвимости подвержены все системы с UPnP, отвечающие спецификациям с датой выпуска до 17 апреля этого года. Подтверждено использование CallStranger в открытом пакете hostapd (для Wi-Fi), к нему доступен патч с исправлением.

В основе UPnP лежит XML

Но большая часть Linux-систем всё ещё уязвима, в список входят такие известные дистрибутивы, как RHEL, SUSE, Arch, Fedora, Ubuntu, Debian, а также «народная» прошивка для маршрутизаторов OpenWRT. Все устройства, в которых UPnP реализовано на основе открытого стека pupnp также под угрозой.

К сожалению, организация, ответственная за развитие UPnP, Open Connectivity Foundation (OCF) знала о наличии проблемы ещё в конце прошлого года, но отнеслась к ней небрежно, изначально не считая данную возможность уязвимостью. В настоящее время проблема признана, предписано использование UPnP только в сегменте LAN, но не WAN. Однако недоработка имеет фундаментальную природу; UPnP используется широко и для ряда старых устройств обновлений может попросту не появиться.

В качестве защитных мер рекомендуется изоляция UPnP-устройств от внешних запросов со стороны WAN, для этого нужно соответствующим образом настроить брандмауэр. Необходимо блокировать HTTP-запросы типа SUBSCRIBE и NOTIFY. В качестве крайней мере рекомендуется полное отключение UPnP. Провериться на наличие уязвимости можно с использованием специального инструментария. Полный отчёт об уязвимости доступен здесь.

Источник: servernews.ru