CVE-2025-38236: баг в Linux открывал путь к захвату ядра через Chrome

CVE-2025-38236: баг в Linux открывал путь к захвату ядра через Chrome

CVE-2025-38236: баг в Linux открывал путь к захвату ядра через Chrome

В Linux-ядре нашли опасную уязвимость CVE-2025-38236, которую обнаружил исследователь из Google Project Zero Янн Хорн. Она позволяет злоумышленнику, начав с выполнения кода внутри песочницы Chrome, добраться до полного контроля над ядром в Linux.

Проблема связана с малоизвестной функцией MSG_OOB (out-of-band) в UNIX domain sockets. Её добавили ещё в Linux 5.15 в 2021 году для специфических приложений Oracle, но она была включена по умолчанию и в итоге оказалась доступна из песочницы Chrome на Linux.

Ошибка приводит к use-after-free — состоянию, при котором система обращается к уже освобождённой области памяти. Хорн показал, что с помощью определённой последовательности операций с сокетами можно читать и изменять память ядра, а значит — повышать привилегии.

Эксплойт был протестирован на Debian Trixie (x86-64) и использовал «примитив чтения» для копирования произвольной памяти ядра в пространство пользователя, обходя защиту usercopy hardening. Хорн нашёл способ использовать даже защитный механизм Debian CONFIG_RANDOMIZE_KSTACK_OFFSET в свою пользу — это помогало точнее выровнять стек для успешной атаки.

Уязвимость уже закрыта в обновлениях Linux, а Chrome изменил работу своей песочницы, заблокировав передачу MSG_OOB-сообщений.

Интересно, что похожая ошибка попадалась фреймворку syzkaller ещё в августе 2024 года, но для её воспроизведения требовалось шесть системных вызовов, а найденный Хорном вариант — восемь. Это подчёркивает, насколько сложно автоматическим инструментам находить такие уязвимости.

Отдельно Хорн отметил, что в Linux-песочнице Chrome остаётся много лишних интерфейсов — от UNIX-сокетов и pipe до syscalls вроде sendmsg() и mprotect(). Ранее через подобные механизмы уже находили баги в futex(), memfd_create() и pipe2().

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

Подпишитесь на новости

Энтузиасты обошли ограничения GeForce и удвоили скорость

Часть возможностей GeForce оказалась доступна после программной разблокировки. Авторы GPU Unlock и его версии для архитектуры Ada показали, как увеличить скорость отдельных матричных вычислений на потребительских видеокартах Nvidia. На RTX 4090 в синтетических тестах результат вырос примерно вдвое.

Разработчики опубликовали код и замеры в репозиториях GPU Unlock и GPU Unlock Ada.

Инструмент запускается до штатного драйвера Nvidia и меняет настройки, ограничивающие скорость определённых тензорных операций. Основная мишень — вычисления FP16 и BF16 с накоплением результата в FP32, которые используются в задачах машинного обучения.

В независимом тесте RTX 4090 при одинаковом лимите мощности скорость таких инструкций действительно удвоилась. А вот в вычислениях через библиотеку cuBLAS прибавка оказалась скромнее: около 12-34% для FP16 и 16-20% для BF16 в отдельных конфигурациях. Один из вариантов нагрузки вообще не ускорился.

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

Для любителей локального ИИ эти эксперименты могут быть полезны.

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