В 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.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.