В ядре Linux найдена локальная root-уязвимость
0
В ядре Linux найдена локальная root-уязвимость

В ядре Linux найдена опасная уязвимость, позволяющая локальному злоумышленнику выполнить код с правами пользователя root (при наличии доступной пользователю SUID root программы, такой как, например, /bin/su). Проблема наблюдается, начиная с ядра 2.6.39. Уязвимость также проявляется для ядра, используемого в RHEL 6 (начиная с 2.6.32-220.el6). На данный момент уже опубликовано три рабочих эксплоита. Уязвимости присвоен номер CVE-2012-0056.

Источником уязвимости является ошибка в реализации proc-интерфейса для прямого доступа к памяти процесса (/proc/pid/mem). До версии ядра 2.6.39 этот интерфейс предоставлял доступ только на чтение, т.к. было известно, что для записи он небезопасен. Незадолго до выхода версии 2.6.39 ограничения доступа к /proc/pid/mem были переделаны, после чего доступ на запись был разрешён. Как оказалось, проверка привилегий была выполнена некорректно, что позволяет локальному пользователю получить права суперпользователя во всех ядрах 2.6.39 и выше (исключая GIT snapshot, в котором данная уязвимость была на днях закрыта), а также в ядрах из состава RHEL 6.

Уязвимость обнаружил Juri Aedla, который в приватном порядке уведомил разработчиков ядра Linux. К сожалению, изменения в Git-репозитории ядра были внесены спешно, что позволило создать эксплоиты на основе анализа изменений ещё до появления обновлений с исправлением проблемы в дистрибутивах. На момент публикации этой новости уязвимость была исправлена в дистрибутивах ALT Linux. По неофициальной информации, обновления для Red Hat и Ubuntu планировалось выпустить завтра, но в ситуации появления эксплоита в публичном доступе, процесс выпуска обновлений будет форсирован и, возможно, они выйдут уже сегодня.

Временно нейтрализовать проблему можно запретив доступ пользователей ко всем SUID/SGID программам или с помощью SystemTap. В число уязвимых попадают продукты на базе RHEL 6 и относительно недавно выпущенные дистрибутивы, поставляемые с ядрами 2.6.39, 3.0, 3.1 и 3.2 - Fedora 16, Ubuntu 11.10, OpenSUSE 12.1, Arch Linux, Gentoo и т.п. Статус выпуска обновлений для различных дистрибутивов можно проследить на данных страницах: Ubuntu, Gentoo, openSUSE, Fedora, Debian, Red Hat Enterprise Linux 6, Scientific Linux 6 и Cent OS 6.

Дополнение 1: Выявленная проблема по своему проявляется и для более старых ядер Linux до версии 2.6.39, для которых потенциально возможно проведение менее опасных атак, связанных с чтением областей памяти процессов (например, возможно чтение остающихся в памяти определённого процесса криптографических ключей, хэшей паролей и других приватных данных).

Дополнение 2: Упомянутый выше Git-коммит привносит другую, сравнительно небольшую, проблему (возможный обход ограничения расхода памяти пользователем).

Дополнение 3: Вышло обновление с устранением уязвимости для Ubuntu 11.10.

Внимание! У Вас нет прав для просмотра скрытого текста.



Внимание! Данная статья была написана более полугода назад, актуальность материала и состояние жизни ссылок не гарантируется! Воспользуйтесь дополнительными параметрами для поиска необходимого вам контента! Приносим свои извинения...

Внимание! У статьи пока нет комментариев, оставьте первым свой комментарий?
Оставить комментарий / Добавление ссылок в комментариях разрешено