🇰🇷 한글 설명
Linux 커널의 SMB 클라이언트에서 cifsd 스레드 생성 시 발생하는 레이스 컨디션 취약점입니다. 부모 스레드가 tcp_ses를 완전히 채우기 전에 demultiplex 스레드가 접근하거나, 스레드 포인터가 할당되기 전에 스레드가 실행되어 종료 시 SIGKILL 신호를 기다리며 잠드는 문제가 있습니다.
💡 쉬운 설명
컴퓨터 내부에서 작업을 나누어 처리하는 과정에서 순서가 꼬여 데이터가 엉키거나 시스템이 멈출 수 있는 문제입니다. 작업이 채 끝나기도 전에 다음 단계가 시작되어 발생하는 오류입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
smb: client: fix races in cifsd thread creation
The cifsd demultiplex thread can run and access tcp_ses before the parent
thread has finished populating tcp_ses, which the worker thread accesses
locklessly.
Also, the kthread_run macro may start the thread before returning the
thread pointer. Because the pointer is part of the structure that the
thread can access, if the kernel is preempted after the thread is spawned,
but before the thread pointer is populated and the thread attempts to exit,
it will sleep, waiting for a SIGKILL signal.
Fix this by moving creation of the thread to after all of tcp_ses'es
fields are populated, and spawning the thread last, using a split
kthread_create/wake_up_process logic.
📍 영향받는 시스템
Linux kernel (SMB client module 포함 버전)
⚔️ 공격 벡터
로컬 시스템 내에서의 커널 스레드 생성 타이밍 조작을 통한 레이스 컨디션 유발
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.
💻 영향받는 소프트웨어
NVIDIA Cloud Gaming Guest Driver for Linux