🇰🇷 한글 설명
Linux 커널의 CIFS 모듈에서 UTF16 문자 변환 시 NULL 포인터 검사가 누락되어 커널 크래시를 유발할 수 있는 취약점입니다. cifs_strndup_to_utf16 함수가 NULL 값을 확인하지 않고 역참조하면서 발생하며, 패치로 NULL 체크를 추가하여 해결됩니다.
💡 쉬운 설명
Linux 시스템이 네트워크 폴더 접근 시 파일명 변환에서 빈 값을 처리하지 못해 시스템이 중단될 수 있습니다. 네트워크 공유(CIFS/SMB) 사용 중 특정 파일명으로 작업할 때 이 문제가 발생합니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
cifs: prevent NULL pointer dereference in UTF16 conversion
There can be a NULL pointer dereference bug here. NULL is passed to
__cifs_sfu_make_node without checks, which passes it unchecked to
cifs_strndup_to_utf16, which in turn passes it to
cifs_local_to_utf16_bytes where '*from' is dereferenced, causing a crash.
This patch adds a check for NULL 'src' in cifs_strndup_to_utf16 and
returns NULL early to prevent dereferencing NULL pointer.
Found by Linux Verification Center (linuxtesting.org) with SVACE
📍 영향받는 시스템
Linux 커널 5.x, 6.x 버전의 CIFS 모듈
⚔️ 공격 벡터
인증된 사용자가 NULL 포인터를 유발하는 특별한 파일명으로 CIFS 작업 수행 시
🛡️ 대응 방법
CVE-2025-39838 패치가 포함된 최신 커널 버전으로 업그레이드
🔧 검증 코드
커널 버전과 CIFS 모듈 로드 상태를 확인한 후, 커널 릴리스 노트에서 해당 버전이 CVE-2025-39838 패치를 포함하는지 확인합니다.
uname -r && grep -i cifs /proc/modules | awk '{print $1}'