В sudo найдена уязвимость, потенциально позволяющая получить root-доступ

31 января 2012 года

В корректирующем релизе утилиты sudo 1.8.3p2, используемой для организации выполнения команд от имени других пользователей, исправлена очень опасная уязвимость. Проблема вызвана ошибкой форматирования строки, которую может эксплуатировать любой пользователь, даже не упомянутый в настройках sudoers. Несмотря на то, что в публичном доступе пока не найдено готовых эксплоитов, потенциально уязвимость может привести к выполнению произвольных команд с правами пользователя root.

Проблема связана с появлением в sudo 1.8.0 нового отладочного режима, предназначенного для использования при разработке правил доступа или для создания плагинов для журналирования ввода/вывода. В функции sudo_debug() была допущена ошибка, связанная с использованием имени программы как части блока форматирования строки в fprintf(). Создав специально оформленную символическую ссылку на sudo и запустив утилиту по этой ссылке (или иными способами добившись подмены argv[0]), появляется возможность эксплуатации уязвимости.

Например:


$ ln -s /usr/bin/sudo ./%s
$ ./%s -D9
Segmentation fault

Рекомендуется срочно обновить sudo 1.8.x до версии 1.8.3p2. Старые версии, младше релиза 1.8.0, выпущенного в феврале 2011 года, проблеме не подвержены (например, в Ubuntu 10.04 LTS используется 1.7.2p1, в Ubuntu 11.10 - 1.7.4p6, в Slackware - 1.7.4p6). В качестве временной меры защиты можно снять suid-флаг с исполняемого файла sudo. Для систем с поддержкой FORTIFY_SOURCE, например, NetBSD и большинство дистрибутивов Linux, можно пересобрать sudo, активировав в src/Makfile опцию "-D_FORTIFY_SOURCE=2". На момент написания новости обновления были доступны только для FreeBSD и Gentoo. Пакет с sudo из состава Fedora 16 (возможно это касается и RHEL 6) изначально собран с опцией D_FORTIFY_SOURCE=2, т.е. не подвержен эксплуатации. Статус выпуска обновлений для различных дистрибутивов можно проследить на данных страницах: Ubuntu, Gentoo, Slackware, Mandriva, openSUSE, CentOS, Scientific Linux (Архивная копия от 10 декабря 2017 на Wayback Machine), Fedora (Архивная копия от 18 января 2012 на Wayback Machine), RHEL и Debian.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «В sudo найдена уязвимость, потенциально позволяющая получить root-доступ», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.