🇰🇷 한글 설명
OpenSSH 7.2p2 이하에서 UseLogin 기능이 활성화되고 PAM이 사용자 홈 디렉토리의 .pam_environment 파일을 읽도록 설정된 경우 발생하는 취약점입니다. 로컬 사용자가 LD_PRELOAD 환경 변수를 통해 /bin/login 프로그램에 악의적인 환경을 주입하여 권한 상승을 할 수 있습니다.
💡 쉬운 설명
SSH 서버가 로그인 시 환경 변수를 잘못 처리하는 문제입니다. 같은 컴퓨터에 접근 가능한 일반 사용자가 이를 악용하여 관리자 권한을 탈취할 수 있습니다.
🇺🇸 원문 (English)
The do_setup_env function in session.c in sshd in OpenSSH through 7.2p2, when the UseLogin feature is enabled and PAM is configured to read .pam_environment files in user home directories, allows local users to gain privileges by triggering a crafted environment for the /bin/login program, as demonstrated by an LD_PRELOAD environment variable.
📍 영향받는 시스템
OpenSSH 7.2p2 이하 (UseLogin 기능 활성화 + PAM 구성된 경우)
⚔️ 공격 벡터
로컬 사용자가 ~/.pam_environment 파일에 LD_PRELOAD를 설정하여 로그인 시 악성 라이브러리 로드
🛡️ 대응 방법
OpenSSH를 7.3 이상으로 업그레이드하거나 UseLogin 기능 비활성화
🔧 검증 코드
VULNERABLE이 출력되면 취약한 버전이고 SAFE가 출력되면 안전한 버전입니다.
ssh -V 2>&1 | grep -oE '[0-7]\.[0-2]p[0-9]+' && echo 'VULNERABLE' || echo 'SAFE'