CVE-2026-89633
요약
\~에 의해 VulDB • 2026. 09. 11.
리눅스 커널에서 다음 취약점이 해결되었습니다:
smb: 클라이언트: coalesce_t2()의 검증되지 않은 DataOffset로 인한 OOB 읽기/쓰기 수정
coalesce_t2()는 서버가 제공한 DataOffset 필드로부터 데이터 포인터를 직접 계산하며, 버퍼 경계에 대한 유효성 검사를 수행하지 않습니다.
data_area_of_tgt = (char *)&pSMBt->hdr.Protocol + get_unaligned_le16(&pSMBt->t2_rsp.DataOffset); data_area_of_src = (char *)&pSMBs->hdr.Protocol + get_unaligned_le16(&pSMBs->t2_rsp.DataOffset); data_area_of_tgt += total_in_tgt; ... memcpy(data_area_of_tgt, data_area_of_src, total_in_src);
작은 DataOffset 값은 포인터를 실제 바이트 영역 아래로 밀어내어 헤더 필드를 덮어쓸 수 있으며, 큰 DataOffset 값은 버퍼 끝을 넘어가서 OOB 힙 읽기(소스) 또는 쓰기(타겟)를 유발할 수 있습니다. BCC 오버플로우 가드도 이를 방지하지 못합니다: BCC는 데이터의 양을 반영하는 반면, DataOffset은 해당 데이터가 버퍼 내에서 시작되는 위치를 제어하기 때문입니다.
함수가 2005년에 처음 작성될 때부터 존재해 온 "validate target area" 주석은 구현되지 않은 자리 표시자였습니다.
memcpy 실행 전 및 타겟 헤더 필드가 수정되기 전에 두 데이터 포인터 모두에 대해 하한선 및 상한선 검사를 추가합니다.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.