В ядре Linux обнаружена уязвимость, позволяющая получить привилегии пользователя root

В ядре Linux обнаружена критическая уязвимость (CVE-2014-0196), позволяющая локальному пользователю получить привилегии пользователя root. Проблему усугубляет публикация прототипа эксплоита в открытом доступе.

Уязвимость присутствует во всех выпусках ядра, начиная с 2.6.31-rc3, включая 3.14.3 и 3.15-rc5. Исправление пока доступно в виде патча. Обновления пакетов с устранением уязвимости уже сформированы для Ubuntu и Fedora. Для Debian, Gentoo, Red Hat Entreprise Linux, CentOS, openSUSE и SUSE обновление ядра пока недоступно и находится на стадии подготовки.

Проблема вызвана ошибкой в функции n_tty_write (drivers/tty/n_tty.c), в которой некорректно обрабатывалась ситуация доступа к виртуальному терминалу при использовании флагов "LECHO & !OPOST", что позволяло локальному пользователю инициировать повреждение областей памяти ядра. Уязвимость позволяет используя состояние гонки (race condition) добиться выполнения привилегированных команд во время выполнения из нескольких потоков одновременных операций чтения и записи длинных строк через псевдотерминал. Успешность эксплуатации является делом случая, при применении эксплоита в 3 из 4 запусков наблюдается крах ядра. Кроме того, представленный прототип эксплоита работает только с ядрами 3.14.

OpenNET

Связь с редакцией