CVE-2026-64268 in Linux정보

요약

\~에 의해 VulDB • 2026. 07. 25.

리눅스 커널에서 다음 취약점이 해결되었습니다:

RDMA/siw: Read Response의 배치 위치를 RREAD 길이에 제한함

drivers/infiniband/sw/siw/siw_qp_rx.c 파일에서, siw_proc_rresp() 함수는 각 수신된 Read Response DDP 세그먼트를 sge->laddr + wqe->processed 위치에 배치한 후 wqe->processed 값을 누적합니다. 그러나 계속되는(segment) 세그먼트에 대해 누계된 총량이 싱크 버퍼 길이를 초과하는지 확인하지 않습니다. siw_check_sge() 함수는 첫 번째 프래그먼트(if (!*mem) 분기)에서만 sink 메모리를 해결하고 검증하며, siw_rresp_check_ntoh() 함수는 마지막 세그먼트(!frx->more_ddp_segs 가드 조건)에서만 누계된 길이를 wqe->bytes와 비교합니다.

연결된 siw 피어가 미처리 상태인 RREAD에 대해 DDP Last 플래그를 계속 클리어로 유지하고, 요청된 RREAD보다 더 많은 총 페이로드를 포함하는 Read Response 세그먼트로 응답할 경우, wqe->processed 값은 검증된 싱크 버퍼 범위를 벗어납니다. 이후 siw_rx_data() 호출 시 sge->laddr + wqe->processed 위치에서 경계 밖(out-of-bounds) 쓰기 작업이 발생합니다. siw는 일반 라우팅 가능한 TCP 위에서 iWARP를 실행하므로, 피어는 확립된 RDMA 연결의 원격 엔드이며 로컬 권한 상승(privilege escalation)이 필요하지 않습니다.

siw_proc_send()와 siw_proc_write()가 태그(tagged) 및 비태그(untagged) 경로에서 수행하는 것처럼 배치 전에 모든 세그먼트를 제한하고, Read Response로 인해 싱크 버퍼 오버런(overtun)이 발생할 경우 DDP 오류(base-or-bounds error)를 발생시켜 연결을 종료합니다.

이는 해당 파일에 대한 두 번째 수신 경로의 길이 검증 수정입니다. 별도의 변경 사항에서는 헤더 디코딩 시 프래그먼트별 잔여량(remainder)에서 오버플로우(underflow)가 발생하는 MPA FPDU 길이를 거부하지만, 이 가드는 본 사례를 커버하지 않습니다. 여기서는 각 개별 세그먼트의 길이가 자체적으로 일관성이 있으며, 버퍼 오버런을 유발하는 것은 누적된 배치 오프셋뿐이기 때문입니다.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

책임이 있는

Linux

예약하다

2026. 07. 19.

모더레이션

수락

항목

VDB-383057

EPSS

0.00695

출처

Want to know what is going to be exploited?

We predict KEV entries!