Проанализирована root-уязвимость в ядре Linux

Проанализирована root-уязвимость в ядре Linux

Проанализирована root-уязвимость в ядре Linux

Раскрыты подробности эксплуатации уязвимости (CVE-2015-8660) в ядре Linux, позволяющей непривилегированному локальному пользователю получить права root. Уязвимость вызвана недоработкой в коде установки прав доступа в файловой системе OverlayFS, проявляющейся при использовании пространств имён для идентификаторов пользователей (user namespaces).

Суть проблемы в том, что пользователь может при помощи технологии "user namespaces" создать изолированное окружение со своим пользователем root и примонтировать в нём часть внешней ФС через OverlayFS. Из-за ошибки в OverlayFS при изменении прав доступа в изолированном окружении, изменения также остаются в связанной с OverlayFS директории для хранения изменений (например, директория для изменений может быть создана в tmpfs и остаётся доступна извне, также доступ к ФС изолированного окружения можно получить через /proc). Таким образом, в изолированном окружении можно создать исполняемый файл с флагом suid root и выполнить его вне изолированного окружения. Для тестирования подготовлен прототип эксплоита, пишет opennet.ru.

Вызвавшая уязвимость ошибка была устранена в ядре Linux в начале декабря и вошла в состав релиза ядра 4.4, но детальная информация об уязвимости обнародована только сейчас. Проблема проявляется начиная с ядра 3.18, поэтому не касается штатных ядер дистрибутивов RHEL/CentOS и Debian, нозатрагивает выпуски Ubuntu 15.10 и Fedora 23 и уже устранена в опубликованных несколько дней назад обновлениях пакетов с ядром.

Следует отметить, что так как многие старые подсистемы ядра написаны без оглядки на возможности User Namespace, не исключается наличие ещё не выявленных похожих уязвимостей. Например, кроме OverlayFS подобные проблемы найдены в ptrace (CVE-2015-8709). В качестве обходного пути защиты рекомендуется отключить поддержку User Namespace в ядре (CONFIG_USER_NS=n). Проверить включена ли поддержка User Namespace можно командой "ls /proc/self/ns|grep user". 

Linux вдохнул новую жизнь в видеокарты AMD 2011–2013 годов

Старые видеокарты AMD получили неожиданно хорошие новости из мира Linux. В ближайшей версии ядра Linux 6.19, выход которой ожидается в феврале 2026 года, появится полноценная поддержка графических процессоров на архитектурах GCN 1.0 и 1.1 — тех самых, что дебютировали ещё в 2011–2013 годах.

Речь идёт о поколениях Southern Islands и Sea Islands, знакомых по таким моделям, как Radeon HD 7970, HD 7950, а также Radeon R9 290 и 290X.

До сих пор владельцы этих видеокарт были вынуждены мириться с ограничениями: современный драйверный стек AMDGPU официально поддерживал только GCN 1.2 и более новые архитектуры. Старые GPU оставались за бортом всех свежих оптимизаций.

Ситуацию удалось изменить благодаря работе Тимура Кристофа и команды Valve, которая активно участвует в развитии графического стека для Linux. В результате для GCN 1.0 и 1.1 подготовили новые открытые драйверы, которые теперь планируется включить в основную ветку ядра.

И это не просто «поддержка для галочки». По тестам Phoronix, перевод Radeon HD 7950 на новый драйверный стек даёт прирост производительности до 30%. Особенно заметен эффект в старых OpenGL-играх, где оптимизации оказываются наиболее эффективными.

Одна из ключевых причин такого прироста — полноценная поддержка Vulkan-драйвера RADV из Mesa. Ранее владельцы старых карт были фактически лишены преимуществ современного графического стека, а теперь получают более быстрый и стабильный рендеринг.

Разумеется, ждать чудес не стоит: видеокарты 12–14-летней давности не станут внезапно пригодными для современных AAA-проектов. Но для повседневной работы, старых игр и просто более плавного интерфейса улучшения будут вполне ощутимыми.

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