В Linux обнаружена удаленно эксплуатируемая уязвимость, потенциально позволяющая полностью скомпрометировать систему. Проблема актуальна для ОС на базе ядра Linux версий 5.3.6 и ниже. Вариант патча уже предложен и, видимо, будет включен в состав очередного обновления Linux, а затем разойдется по дистрибутивам.

В наличии уязвимости, зарегистрированной как CVE-2019-17666, повинен драйвер rtlwifi, обеспечивающий взаимодействие некоторых WiFi-модулей Realtek с операционной системой Linux. Проблема вызвана возможностью переполнения буфера, которой злоумышленник может воспользоваться, чтобы вызвать катастрофический отказ или выполнить сторонний код в контексте ядра.

Уязвимость проявляется при обработке пакетов, передаваемых по протоколу Notice of Absence (NoA), использование которого предусмотрено стандартом Wi-Fi Direct, он же Wi-Fi p2p. При работе в режиме Wi-Fi Direct устройства в беспроводной сети взаимодействуют друг с другом напрямую, и одно из них играет роль точки доступа в группе. В целях снижения электропотребления такой узел, используя NoA, анонсирует периоды «молчания» — временные интервалы, когда p2p-клиентам не разрешается пользоваться радиоканалом. С этой целью он включает соответствующий элемент сигнализации в навигационные кадры и ответные сообщения.

Как оказалось, при парсинге NoA-кадров код rtlwifi, реализующий Wi-Fi Direct, не проверяет размер некоторых данных. В результате злоумышленник может добавить в сигнальный кадр специфические информационные элементы и спровоцировать таким образом переполнение буфера.

Проблему обнаружил Николас Вайсман (Nicolas Waisman), ведущий специалист Github по защите информации. По словам исследователя, уязвимость просуществовала не менее четырех лет, прежде чем была выявлена.

«Баг весьма серьезен, — заявил эксперт журналистам Threatpost. — Если на устройстве работает Realtek-драйвер (rtlwifi), оно уязвимо, и кто-нибудь, находясь в зоне действия беспроводной сети, может этим воспользоваться для атаки».

Эксплуатация, со слов Вайсмана, осуществляется отправкой вредоносного пакета на уязвимое Linux-устройство; никакой аутентификации или действий со стороны жертвы при этом не требуется. Использовать уязвимость можно лишь в том случае, когда WiFi включен и атакуемое устройство использует WiFi-чипы Realtek.

В случае успеха исход атаки может быть плачевным. «Эксплойт провоцирует переполнение буфера, — говорит Вайсман. — Это означает, что автор атаки  сможет вызвать сбой Linux или даже добиться удаленного исполнения кода — но тогда нужен подходящий эксплойт, а написать его непросто».

Категории: Главное, Уязвимости