🇰🇷 한글 설명
pam_usb 0.9.1 이전 버전의 src/log.c에서 프로세스 전역 정적 포인터가 PAM 호출마다 스택 로컬 변수의 주소로 덮어써지면서 PAM 재진입성 요구사항을 위반합니다. 이로 인해 여러 스레드에서 동시에 PAM 스택을 호출할 때 데이터 경쟁 상태가 발생하여 인증 실패 또는 메모리 손상이 발생할 수 있습니다.
💡 쉬운 설명
pam_usb는 USB 키를 이용해 Linux에 로그인하는 보안 도구입니다. 여러 사람이 동시에 로그인할 때 내부 메모리 관리 오류로 인해 시스템이 불안정해지거나 충돌할 수 있습니다.
🇺🇸 원문 (English)
pam_usb provides hardware authentication for Linux using ordinary removable media. Prior to 0.9.1, src/log.c contains a process-wide static pointer that is written on every PAM invocation with the address of a stack-local variable. This violates the PAM re-entrancy requirement and creates a data race when the PAM stack is invoked concurrently from multiple threads. This vulnerability is fixed in 0.9.1.
📍 영향받는 시스템
pam_usb 0.9.0 및 이전 버전 (Linux PAM 기반 인증 시스템)
⚔️ 공격 벡터
동일 시스템에서 여러 스레드/프로세스가 동시에 PAM 인증을 호출하여 데이터 경쟁 조건 유발
🛡️ 대응 방법
pam_usb를 0.9.1 이상으로 업그레이드
🔧 검증 코드
출력된 버전이 0.9.1 이상이면 안전하고, 0.9.0 이하이거나 패키지가 설치되지 않으면 업그레이드 필요
dpkg -l libpam-usb 2>/dev/null | grep libpam-usb | awk '{print $3}'
📊 CVSS Vector String
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
💻 영향받는 소프트웨어
NVIDIA Cloud Gaming Guest Driver for Linux