🇰🇷 한글 설명
Linux 커널의 SMB 클라이언트 구성 요소에서 symlink_data() 함수 내 경계 외 읽기(out-of-bounds read) 취약점이 발견되었습니다. smb2_check_message()가 심볼릭 링크 오류 응답에 대해 길이 검증 없이 성공을 반환함에 따라, 실제 데이터 길이가 구조체 크기보다 작을 경우 잘못된 메모리 영역을 참조할 수 있습니다.
💡 쉬운 설명
컴퓨터가 네트워크를 통해 파일을 주고받을 때, 잘못된 정보가 담긴 응답을 받으면 허용되지 않은 메모리 영역을 읽어버리는 문제입니다. 이로 인해 시스템 정보가 유출되거나 프로그램이 갑자기 종료될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
smb/client: fix out-of-bounds read in symlink_data()
Since smb2_check_message() returns success without length validation for
the symlink error response, in symlink_data() it is possible for
iov->iov_len to be smaller than sizeof(struct smb2_err_rsp). If the buffer
only contains the base SMB2 header (64 bytes), accessing
err->ErrorContextCount (at offset 66) or err->ByteCount later in
symlink_data() will cause an out-of-bounds read.
📍 영향받는 시스템
Linux Kernel (SMB client module 포함 버전)
⚔️ 공격 벡터
악의적으로 조작된 SMB2 심볼릭 링크 오류 응답을 서버로부터 수신
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인