Однако этим летом в sudo были найдены уязвимости CVE-2025-32462 и CVE-2025-32463, которые позволяют атакующему производить локальное повышение привилегий.
В новых версиях sudo обе уязвимости исправлены. Но sudo инсталлируется по умолчанию на большинстве популярных дистрибутивов Linux – и не исключено, что вы ещё используете неисправленную версию. Поэтому рекомендуем изучить наши инструкции по детектированию и защите.
Что такое CVE-2025-32462?
Данной уязвимости подвержены версии sudo с 1.8.8 до 1.9.17. Опция -h / --host используется при запуске sudo в сочетании с ключом -l (просмотр привилегий) для проверки привилегий на удаленном хосте. Однако в уязвимых версиях эту опцию можно использовать с любой командой.
Поэтому, если в конфигурациях sudoers параметр "host" выставлен в значение, отличное от ALL или имени текущего хоста, атакующий может при вызове sudo указать любой хост и обойти ограничение правил sudoers, связанных с именем хоста.
Как защититься:
– Установить версию, в которой исправлена данная уязвимость – sudo 1.9.17p1;
– Проверить правила в
/etc/sudoers*, использующие привязку к узлу, и по возможности переписать их на другие виды, не использующие host-параметр, например, на групповые правила (%group).Как детектировать эксплуатацию:
Отслеживайте попытки выполнить sudo с ключом -h / --host без применения ключа -l в командной строке запуска процессов sudo. Например, так будет выглядеть попытка эксплуатации, ведущая к запуску whoami:
sudo -h random-hostname whoami
Что такое CVE-2025-32463?
Эта уязвимость затрагивает версии sudo с 1.9.14 по 1.9.17. Уязвимость связана с опцией -R / --chroot. При выполнении команды в chroot-окружении файл конфигурации /etc/nsswitch.conf загружается не в контексте системного каталога, а в контексте корневого каталога, которым может послужить любой пользовательский каталог с размещенным там файлом
/etc/nsswitch.conf.Файл
/etc/nsswitch.conf (Name Service Switch configuration) в Linux и UNIX-подобных системах определяет порядок и источники, из которых система будет получать информацию о пользователях, группах, хостах, именах доменов, паролях, сетевых сервисах и других ресурсах. Атакующий может создать вредоносную библиотеку
libnss_*.so в любом каталоге, к которому текущий пользователь имеет доступ (например /tmp), и там же разместить поддельный файл /etc/nsswitch.conf с настройками для запуска этой библиотеки. Если после этого запустить команду sudo с ключом -R / --chroot и указанием расположения каталога с подменённой конфигурацией и вредоносной библиотекой, произойдёт выполнение вредоноса с правами root. Как защититься:
– Установить версию, в которой исправлена данная уязвимость – sudo 1.9.17p1;
– По возможности ограничить доступ для непривилегированных пользователей к общедоступным каталогам в части опций mount, nosuid, nodev, noexec;
– Опционально добавить параметр
Defaults !use_chroot в файл /etc/sudoers, отвечающий за отключение возможности использования chroot для sudo, и пересмотреть правила runchroot=*, отвечающие за разрешение использования chroot.Как детектировать попытки атак:
– Обращайте внимание на запуск sudo с ключами --chroot / -R;
– Отслеживайте активности, связанные с компиляцией библиотек с паттерном
libnss_*.so в имени. Например, атакующий может использовать набор компиляторов gcc для компиляции вредоносной библиотеки непосредственно на атакованном узле. Пример такой команды: gcc -shared -fPIC -Wl,-init,test -o libnss_/test.so.2 test.c;
– Мониторьте попытки создания конфигурационного файла
nsswitch.conf и библиотек libnss_*.so в директориях, отличных от расположения легитимных файлов системы;– Отслеживайте активности, связанные с переименованием файлов, где целевое имя файла содержит паттерн
libnss_*.so.
