
Заметки о CVE-2021-3156: Переполнение буфера в куче в Sudo
Всем привет,
Несколько дней назад в sudo была обнаружена серьёзная переполнение кучи на основе буфера, которую может использовать любой локальный пользователь. Обнаруживший её дал ей имя Baron Samedit. Уязвимость можно использовать для повышения привилегий до root, даже если пользователь не указан в файле sudoers. Для эксплуатации уязвимости не требуется аутентификация пользователя. Она обычно упоминается как CVE-2021-3156.
Вы можете увидеть её в действии здесь, записанную несколькими исследователями безопасности.
Затронуты версии sudo с 1.8.2 по 1.8.31p2 и с 1.9.0 по 1.9.5p1.
Имейте в виду: Если патчи не были бэкпортированы, как в случае с Ubuntu 18.04, тогда возможно, не требуется версия 1.9.5p2
От TroyWolf
Для пользователей Ubuntu исправленная версия sudo, похоже, зависит от версии вашей ОС. Сайт Ubuntu показывает следующую информацию, специфичную для выпуска, об этой уязвимости:
ИСПОЛЬЗУЙТЕ С ОСТОРОЖНОСТЬЮ: Откройте терминал и выполните sudo sudo -V чтобы проверить номер версии. Смотрите заметки выше о том, какие версии затронуты, и прочитайте примечание.
Выполните sudoedit -s / чтобы определить, уязвимы ли вы.
Также можно попробовать:
sudoedit -s '\' `perl -e 'print "A" x 65536'`
bonyt с hackernews указал, что в macOS нет sudoedit, но вы можете создать символическую ссылку на него, так как sudo по сути является многозадачным бинарным файлом:
ln -s `which sudo` sudoedit
а затем вызвать его:
./sudoedit
По ответу можно понять, уязвим ли хост или нет:
Уязвим, если ответ содержит ошибку, начинающуюся с sudoedit: sudoedit: /: not a regular file или segfault
Не уязвим (исправлен), если ответ содержит ошибку, начинающуюся с usage:
Falco — это проект CNCF с открытым исходным кодом для обнаружения угроз в реальном времени для контейнеров и Kubernetes.
Вы можете использовать правило для обнаружения и предотвращения попыток пользователя.
pawan328 с hackernews указал, что вы можете просмотреть этот пост в блоге для получения дополнительных сведений.
sudo apt-get update
sudo apt-get --only-upgrade install sudo
В котором рассматривается:
00:00 - Введение
01:29 - Что такое CVE?
02:22 - В чём ошибка?
05:30 - Эксплойт в действии
13:07 - Затронутые версии sudo
13:48 - WSL (Подсистема Windows для Linux)
15:11 - Определение уязвимости через sudo (WSL)
19:21 - Определение уязвимости через sudo (Ubuntu)
20:53 - Определение уязвимости с помощью команд
24:58 - Что делать, если вы используете K8s или контейнеры
27:54 - Проверка версий sudo
28:30 - Установка патча на WSL
30:17 - Установка патча на Ubuntu
32:09 - Где взять exploit.c?
33:59 - Установка патча на Ubuntu (часть 2)
38:10 - Установка патча на WSL (часть 2)
46:35 - Результаты поиска на GitHub
47:28 - Установка патча на WSL (часть 3)
Я стримлю на Twitch по средам в 12:00 PST и по субботам/воскресеньям в 10:00 PST, или вы можете посмотреть сокращённую версию, подписавшись на мой YouTube.
Оставайтесь на связи со мной в социальных платформах для новостей о безопасности и разработке ПО.