
Exploit for Local Privilege Escalation in Sudo via Malicious nsswitch.conf with sudo -R. (CVE-2025-32463)
CVE-2025-32463 Локальное повышение привилегий в Sudo через вредоносный nsswitch.conf с sudo -R. Затронутые версии 1.9.14 – 1.9.17
Sudo — это широко используемая утилита командной строки в Unix-подобных системах, которая позволяет разрешённым пользователям выполнять команды с повышенными привилегиями. Она играет критическую роль в соблюдении принципа наименьших привилегий и ведении безопасного журнала аудита административных действий.
Подразделение кибербезопасности Stratascale Cyber Research Unit (CRU) обнаружило две уязвимости локального повышения привилегий в Sudo, одна из которых — CVE-2025-32463. Эта уязвимость затрагивает версии Sudo с 1.9.14 по 1.9.17 и позволяет не привилегированным локальным пользователям получить root-доступ, злоупотребляя опцией --chroot (-R), даже если для пользователя не определены никакие правила sudo.
Этот репозиторий предоставляет реализацию доказательства концепции (PoC) на Python, повторяющую оригинальный эксплойт на Bash, разработанный командой CRU. Он демонстрирует, как добиться выполнения произвольного кода с правами root через специально созданный файл nsswitch.conf в контролируемой пользователем среде chroot.
CVE ID: CVE-2025-32463
Затронутое ПО: Sudo (версии 1.9.14 – 1.9.17)
Уязвимая функция: опция --chroot (-R)
Воздействие: локальное повышение привилегий (непривилегированный → root)
Предварительные условия для эксплуатации:
Отсутствие необходимости в разрешениях sudo для пользователя
Возможность запуска sudo -R на уязвимых версиях
Исправлено в: Sudo 1.9.17p1
Уязвимость возникает из-за того, как Sudo обрабатывает файл nsswitch.conf внутри среды chroot. При вызове с опцией --chroot Sudo выполняет несколько вызовов chroot(), которые запускают pivot_root(), и этот вызов загружает nsswitch.conf из пути, контролируемого атакующим.
Разместив вредоносный файл nsswitch.conf с пользовательским источником NSS (например, passwd: /woot1337) внутри каталога chroot и предоставив соответствующий вредоносный общий объект (libnss_/woot1337.so.2), злоумышленник может обмануть Sudo, заставив его загрузить и выполнить произвольный код с привилегиями root.
git clone https://github.com/pevinkumar10/CVE-2025-32463
cd CVE-2025-32463
pip3 install -r requirements.txt
python3 exploit.py
Эта версия на Python повторяет логику оригинального PoC на Bash от команды Stratascale CRU. Она создаёт фальшивое корневое окружение, компилирует вредоносный модуль NSS, настраивает условия эксплуатации и вызывает sudo -R для запуска уязвимости.
Перереализация на Python:
Автоматизирует всю цепочку эксплуатации
Улучшает переносимость и читаемость
Сохраняет исходное поведение и воздействие эксплойта
Любой локальный пользователь в системе, работающей под управлением уязвимой версии Sudo (1.9.14 – 1.9.17), может получить root-доступ без необходимости каких-либо правил sudoers. Это затрагивает стандартные конфигурации Sudo.
Обновитесь до Sudo 1.9.17p1 или новее
Избегайте использования устаревшей опции --chroot
Проверьте /etc/sudoers и /etc/sudoers.d на наличие директив CHROOT= или runchroot=
Аудируйте файлы журналов на наличие команд Sudo с использованием CHROOT= через syslog или записи journal
Подробнее: https://www.sudo.ws/security/advisories/chroot_bug/
Оригинальный PoC на Bash: Stratascale Cyber Research Unit (CRU)
Уязвимость обнаружена: Rich Mirch (CRU)
Признание сопровождающего: Todd C. Miller (Sudo Project)
Уведомление: https://www.sudo.ws/security/advisories/chroot_bug/
Этот PoC на Python выпущен под лицензией MIT. Оригинальная концепция эксплойта и заслуга за раскрытие принадлежат подразделению Stratascale Cyber Research Unit.