🇰🇷 한글 설명
sudo 1.3.5~1.7.10p5, 1.8.0~1.8.6p6 버전에서 /proc 또는 tty_tickets 옵션이 없는 시스템에서 터미널 장치 검증 부재로 인해 발생하는 취약점입니다. sudo 권한을 가진 로컬 사용자가 다른 터미널의 표준 입출력 파일 디스크립터를 조작하여 권한을 탈취할 수 있습니다.
💡 쉬운 설명
sudo 프로그램이 어느 터미널에서 명령을 실행하는지 제대로 확인하지 않는 버그입니다. 컴퓨터 접근 권한이 있는 사용자가 다른 사람의 sudo 명령을 가로채서 자신의 권한으로 실행시킬 수 있습니다.
🇺🇸 원문 (English)
sudo 1.3.5 through 1.7.10p5 and 1.8.0 through 1.8.6p6, when running on systems without /proc or the sysctl function with the tty_tickets option enabled, does not properly validate the controlling terminal device, which allows local users with sudo permissions to hijack the authorization of another terminal via vectors related to connecting to the standard input, output, and error file descriptors of another terminal. NOTE: this is one of three closely-related vulnerabilities that were originally assigned CVE-2013-1776, but they have been SPLIT because of different affected versions.
📍 영향받는 시스템
sudo 1.3.5~1.7.10p5, 1.8.0~1.8.6p6 버전 (/proc 없거나 tty_tickets 미활성화 시스템)
⚔️ 공격 벡터
로컬 사용자가 sudo 권한 세션의 stdin/stdout/stderr 파일 디스크립터를 다른 터미널로 리다이렉트하여 권한 탈취
🛡️ 대응 방법
sudo를 1.7.10p6 이상 또는 1.8.6p7 이상으로 업그레이드, /proc 마운트 확인 및 kernel.pty.reserve 설정 검토
🔧 검증 코드
sudo 버전이 영향받는 범위(1.3.5~1.7.10p5 또는 1.8.0~1.8.6p6)에 해당하면 취약점 있음, 상위 버전이면 패치됨
sudo -V 2>/dev/null | grep 'Sudo version' | grep -oE '(1\.[3-7]\.[0-9]+|1\.8\.[0-6])'