Закрыта опасная локальная уязвимость в 2.6.х версиях Linux-ядра

18/08/2010 20:19

Раскрыта информация об обнаруженной месяц назад ошибке, присутствующей практически во всех Linux-ядрах серии 2.6.x, которая позволяет непривилегированному пользовательскому процессу, который имеет доступ к X-серверу (т.е. любому графическому приложению), безоговорочно получить привилегии суперпользователя, при этом, стоит отметить, что проведение атаки не затрагивает никакие ошибки X-сервера. Другими словами, любое, имеющие уязвимости, непривилегированное графическое приложение в результате атаки может обойти все механизмы защиты безопасности Linux-ядра и скомпрометировать систему целиком. Атака может быть произведена даже из изолированного окружения системы безопасности SELinux, которая не спасает от данной уязвимости. Например, злоумышленник может воспользоваться уязвимостью в PDF-просмотрщике, запущенном в chroot или под контролем SELinux, и добившись от пользователя открытия специально оформленного документа, получить доступ к машине с правами суперпользователя. Ошибка, судя по всему, существует уже несколько лет практически во всех ядрах серии 2.6.x.
Суть атаки состоит в том, что графическое приложение искусственно практически полностью потребляет адресное пространство X-сервера с помощью расширения MIT-SHM, затем создаёт разделяемый сегмент памяти "S", то есть заставляя X-сервер использовать этот сегмент. Сегмент "S", однако, будет находиться близко над исполняемым стеком. Затем атакующий инструктирует X-сервер с тем, чтобы последний стал исполнять рекурсивную функцию, что приводит к расширению стека, а указатель стека смещается в сторону сегмента "S" на непродолжительный промежуток времени. После чего, атакующий осуществляет запись в область памяти "S", что приводит к замене смещения в стеке и позволяет выполнить произвольный код.
Данная проблема решена в выпущенных на днях обновлениях Linux-ядра 2.6.32.19, 2.6.34.4, 2.6.35.2, а также устранена в ядре RedHat Enterprise Linux. Примечательно, что данная уязвимость была исправлена молча, без акцентирования о критичности проблемы и без отметки об отношении исправления к безопасности в списке изменений.
Источник