Опасная уязвимость в sudo позволяет получить root-доступ
Специалисты по компьютерной безопасности бьют тревогу. Версии sudo с 1.8.0 по 1.8.3p1 включительно содержат опасную уязвимость, которая может быть использована злоумышленниками для повышения своих полномочий в системе до полномочий суперпользователя.
Ошибка класса format string содержится в функции sudo_debug(). Это означает, что перед вызовом стандартной функции fprintf() не проверяются значения ее аргументов. Злоумышленник может передать специальный символ «%s» и вызвать некорректную работу fprintf(). Вот как это выглядит на практике:
$ ln -s /usr/bin/sudo ./%s
$ ./%s -D9
Segmentation fault
Очевидно, что злоумышленники будут стараться вызвать не Segmentation fault, а подготовить аргументы функции таким образом, чтобы передать управление вредоносному коду. Учитывая, что sudo работает от имени root, последствия могут быть очень серьезными.
Проблема решается путем установки с официального сайта sudo специальной заплатки с последующей перекомпиляцией исходного кода программы. sudo версии 1.8.3p2 уже не содержит ошибку. Пользователям, предпочитающим ничего самостоятельно не компилировать остается дожидаться официальных обновлений для своего дистрибутива.
Комментарии
w-495
31 января, 2012 - 16:21
>./%s -V
Sudo version 1.7.2p1
Все отработало как надо.
Интересно, это они в новой наговнокодили?
pomodor
31 января, 2012 - 16:43
С версии 1.8.0.
Комментировать