Эксперт Google раскрыл технические подробности 0-day бреши в Windows

Эксперт Google раскрыл технические подробности 0-day бреши в Windows

Эксперт Google раскрыл технические подробности 0-day бреши в Windows

Уязвимость Windows 10, позволяющая обойти Windows Lockdown Policy и привести к выполнению кода, остается неисправленной, хотя Microsoft была проинформирована о ее существовании 90 дней назад.

Уязвимость обнаружил Джеймс Форшоу из команды Google Project Zero, она затрагивает платформу .NET, позволяет обойти политику Windows Lockdown Policy. Проблема была воспроизведена в Windows 10S, однако эксперт утверждает, что она затрагивает все версии Windows 10 с включенной функцией UMCI (User Mode Code Integrity).

Баг, как поясняет исследователь, существует из-за того, как Windows Lockdown Policy реагирует на создание COM-объекта. Грамотная реализация должна проверять CLSID, передаваемый в DllGetObject для регистрации DLL.

Специалист же обнаружил, что при создании COM-объекта CLSID используется только для поиска регистрационной информации в ветке реестра HKCR. Таки образом, злоумышленник может добавлять ключи реестра, в том числе в ветке HKCU, для загрузки произвольного COM-класса под одним из разрешенных CLSID.

Для успешной эксплуатации злоумышленник может использовать такие инструменты, как DotNetToJScript. DotNetToJScript представляет собой бесплатный инструмент, позволяющий пользователям создавать JScript, который загружает сборку .NET.

Proof-of-Concept код был опубликован Форшоу по этому адресу. Специалист сообщил о проблеме Microsoft 19 января, компания признала наличие данной уязвимости. Исходя из условий раскрытия информации об уязвимостях, Форшоу опубликовал технические детали спустя 90 дней, за которые Microsoft так и не устранила недостаток.

Инструмент для Linux-гейминга оказался дырой с root-доступом

Инструмент InputPlumber, который используется для объединения устройств ввода в Linux-системах (в том числе в SteamOS), оказался небезопасным. Специалисты SUSE обнаружили в нём критические уязвимости, позволяющие локальному злоумышленнику перехватывать пользовательские сессии, подсовывать нажатия клавиш и даже читать файлы с правами root.

Речь идёт о двух уязвимостях — CVE-2025-66005 и CVE-2025-14338. Обе связаны с тем, что InputPlumber практически не проверял, кто именно обращается к его D-Bus-сервису. А это особенно неприятно, учитывая, что сервис работает с правами root.

Как выяснилось в ходе плановой проверки пакетов, ранние версии InputPlumber вообще не содержали никакой аутентификации клиентов.

«Первая версия InputPlumber, которую мы проверяли, полностью игнорировала аутентификацию, из-за чего мы сразу её забраковали», — пишут эксперты SUSE в отчёте SUSE.

Разработчики попытались исправиться и добавить Polkit, но сделали это так, что защита в реальности часто не работала. Поддержка Polkit была опциональна на этапе компиляции — и по умолчанию оказывалась отключённой. В результате бинарники нередко поставлялись вообще без какой-либо валидации.

Более того, даже при включённом Polkit обнаружилась состояние гонки (race condition) — классическая проблема, связанная с небезопасным использованием unix-process в Polkit (CVE-2025-14338).

По сути, любой пользователь системы получал доступ ко всем D-Bus-методам InputPlumber. А это открывало довольно опасные вектора атаки.

Например, через метод CreateTargetDevice можно было создать виртуальную клавиатуру и начать «нажимать» клавиши в чужой активной сессии — будь то рабочий стол или экран входа в систему.

Проще говоря, один пользователь мог незаметно управлять вводом другого и потенциально добиться выполнения произвольного кода от его имени.

Другой метод — CreateCompositeDevice — позволял использовать конфигурационные файлы для сторонних целей. С его помощью исследователи смогли определить существование привилегированных файлов и даже частично утёкшие данные, включая содержимое /root/.bash_history, которое «подсвечивалось» через сообщения об ошибках.

После раскрытия информации разработчики InputPlumber устранили проблемы. В версии v0.69.0 Polkit-аутентификация включена по умолчанию, а небезопасный механизм проверки заменён на корректный.

Обновления уже добрались и до SteamOS — компания выпустила новые образы SteamOS 3.7.20, в которых уязвимости закрыты.

Пользователям, у которых InputPlumber установлен в системе, настоятельно рекомендуется обновиться как можно скорее. Даже если вы используете его «только для игр», root-сервисы без нормальной аутентификации — это всегда плохая идея.

RSS: Новости на портале Anti-Malware.ru