В Sudo исправлена опасная уязвимость

В Sudo исправлена опасная уязвимость

Проблема позволяет повысить права до уровня суперпользователя и перезаписать любой файл на системах с поддержкой SELinux.

В утилите Sudo, предназначенной для делегирования привилегий пользователям с отслеживанием их работы, обнаружена опасная уязвимость, позволяющая повысить привилегии до уровня суперпользователя и перезаписать любой файл на системах с поддержкой SELinux.

Проблема, получившая идентификатор CVE-2017-1000367, связана с функцией get_process_ttyname() в Sudo для Linux. Уязвимость заключается в том, как Sudo разбирает данные tty из файла состояния процесса в файловой системе proc. Проблема затрагивает версии Sudo 1.8.6p7 - 1.8.20.

Как пояснили эксперты Qualys, обнаружившие уязвимость, функция get_process_ttyname() открывает /proc/[pid]/stat (man proc) и считывает номер устройства tty из поля 7 (tty_nr). Данные поля разделены пробелами и поле 2 (comm, имя файла команды) может содержать пробелы.

Эксплуатация проблемы осуществляется путем создания символической ссылки на исполняемый файл Sudo с заданием имени, содержащем пробел, после которого следует число. При разборе файла /proc/[pid]/stat после запуска по такой ссылке Sudo пытается определить номер устройства tty, но поскольку в качестве разделителей /proc/[pid]/stat используются пробелы, запуск через ссылку с пробелом в имени позволяет подставить фиктивный номер устройства, не связанный с каким-либо существующим устройством в каталоге /dev. Если Sudo не находит терминал в каталоге /dev/pts, она осуществляет поиск в /dev. Таким образом атакующий может создать фиктивный терминал и, воспользовавшись моментом, когда проверка /dev/pts уже завершена, а проверка /dev еще не начата, установить на него символическую ссылку. После этого данный файл будет восприниматься Sudo как текущий терминал. Заменив ссылку с подложного устройства на реальный файл, злоумышленник может перезаписать его содержимое. К примеру, переписав доверенный файл (/etc/shadow или /etc/sudoers), можно повысить права на системе до уровня суперпользователя.

Разработчики устранили уязвимость в выпуске Sudo 1.8.20p1. 30 мая были представлены патчи для дистрибутивов RHEL6/7 , Red Hat Enterprise Linux Server, Debian , SUSE , Ubuntu и Fedora .

Теория струн? У нас целый оркестр научных фактов!

От классики до авангарда — наука во всех жанрах

Настройтесь на нашу волну — подпишитесь