Обнаружена критическая уязвимость в утилите Sudo, которая оставалась незамеченной более 12 лет. Проблема, получившая идентификатор CVE-2025-32462, позволяет злоумышленникам повышать свои привилегии до уровня root без сложных атак, что ставит под угрозу миллионы Linux и Unix-подобных систем. Уязвимость была обнаружена исследовательским подразделением Stratascale Cyber Research Unit (CRU) и затрагивает как стабильные (v1.9.0-1.9.17), так и устаревшие (v1.8.8-1.8.32) версии Sudo - инструмента, который присутствует практически во всех дистрибутивах Linux.
Sudo играет ключевую роль в управлении правами пользователей, позволяя выполнять команды с повышенными привилегиями без необходимости раскрывать пароль суперпользователя. Это достигается за счет конфигурационного файла sudoers, который предоставляет детальный контроль над доступом, следуя принципу минимальных привилегий и обеспечивая журналирование действий. Однако новый баг обходит эти механизмы защиты, создавая серьезную угрозу для инфраструктур, особенно в корпоративных средах.
Суть уязвимости заключается в неправильной обработке опции "-h" (или "--host"), добавленной ещё в 2013 году в версии Sudo 1.8.8. Изначально эта функция предназначалась для использования исключительно с флагом "-l" ("--list"), позволяя пользователям просматривать свои разрешения Sudo на других хостах. Однако из-за ошибки в логике проверки правил, опцию можно было применить и при выполнении команд, минуя ограничения, заданные в sudoers.
Эксплуатация уязвимости особенно опасна в крупных организациях, где администраторы часто настраивают правила Sudo с учетом разграничения доступа между разными серверами. Например, если пользователь имеет права root на тестовом сервере, но не на рабочем, он может обойти эту защиту, указав в команде "-h" с именем тестового хоста. В результате Sudo будет оценивать правила так, будто команда выполняется на разрешенной машине, что откроет злоумышленнику доступ к root-привилегиям там, где это запрещено.
Важно отметить, что для использования уязвимости не требуется сложных эксплойтов - достаточно любой записи в sudoers, даже если она не предусматривает прав на текущем хосте. Подтверждено, что проблема затрагивает популярные дистрибутивы, включая Ubuntu 24.04.1 и macOS Sequoia, причем даже самые свежие версии Sudo (до 1.9.16p2) остаются уязвимыми.
Единственным надежным решением является немедленное обновление Sudo до версии 1.9.17p1, где разработчики исправили логику обработки опции "-h", ограничив её использование только для просмотра списка разрешений. Администраторам также рекомендуется провести аудит файлов sudoers, уделяя особое внимание директивам Host и Host_Alias, чтобы выявить потенциальные векторы атаки.
Эта ситуация служит важным напоминанием о необходимости регулярного обновления ПО, даже для таких проверенных и фундаментальных инструментов, как Sudo. Даже небольшие ошибки в коде, оставшиеся незамеченными годами, могут стать серьезной угрозой в руках злоумышленников. Кибербезопасность - это непрерывный процесс, и подобные инциденты подчеркивают важность постоянного мониторинга и оперативного реагирования на новые угрозы.