🇰🇷 한글 설명
pam_usb 0.9.1 이전 버전에서 deny_remote=false 설정 시 원격 XDMCP 연결에 대한 PAM_RHOST 검증이 스킵되어 USB 인증 단계에 도달할 수 있게 됩니다. 원격 공격자가 로컬 세션 전용의 하드웨어 인증을 우회할 수 있는 인증 우회 취약점입니다.
💡 쉬운 설명
pam_usb는 USB 키로 리눅스 로그인을 보호하는 도구인데, 특정 설정에서 원격 공격자도 이 보호를 우회할 수 있게 됩니다. USB 키가 없어도 원격에서 로그인할 수 있는 보안 문제입니다.
🇺🇸 원문 (English)
pam_usb provides hardware authentication for Linux using ordinary removable media. Prior to 0.9.1, when a PAM service is configured with deny_remote=false in pam_usb (commonly done for display managers such as gdm-password or lightdm to bypass process/TTY heuristics for local sessions), the PAM_RHOST check in pusb_do_auth() is also skipped. PAM_RHOST is set by remote daemons (sshd, XDMCP servers) to identify the remote client address. Because the check is gated inside if (opts.deny_remote), a genuine remote XDMCP connection reaches the USB device authentication step instead of being rejected. This vulnerability is fixed in 0.9.1.
📍 영향받는 시스템
pam_usb < 0.9.1 (deny_remote=false 설정된 경우)
⚔️ 공격 벡터
원격 XDMCP 세션을 통해 PAM_RHOST 검증을 우회하고 USB 인증 없이 접근
🛡️ 대응 방법
pam_usb를 0.9.1 이상으로 업그레이드하거나 deny_remote=true로 설정
🔧 검증 코드
출력된 버전이 0.9.1 이상이면 안전, 0.9.1 미만이거나 패키지 미설치이면 검증 필요
dpkg -l pam-usb 2>/dev/null | grep pam-usb | awk '{print $3}'
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
💻 영향받는 소프트웨어
NVIDIA Cloud Gaming Guest Driver for Linux