🇰🇷 한글 설명
Linux 커널의 RDMA/srpt 구성 요소에서 정수 오버플로 취약점이 발견되었습니다. 네트워크를 통해 전달된 사용자 제어 길이 값이 오버플로를 일으켜 경계 검사를 우회하고, 결과적으로 sg_init_one() 함수에 매우 큰 메모리 길이를 전달할 수 있습니다.
💡 쉬운 설명
네트워크를 통해 들어오는 데이터의 크기를 계산하는 과정에서 숫자가 너무 커져 오류가 발생하는 문제입니다. 공격자가 이 오류를 이용해 시스템의 메모리 보호 기능을 무력화하고 비정상적인 동작을 유도할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
RDMA/srpt: fix integer overflow in immediate data length check
imm_buf->len is a user-controlled uint32_t received from the network.
Adding it to imm_data_offset without overflow checking allows a
malicious initiator to send len=0xFFFFFFFF, causing req_size to wrap
around to a small value, bypassing the bounds check, and subsequently
passing a ~4GB length to sg_init_one().
Use check_add_overflow() to detect wrapping before the comparison.
📍 영향받는 시스템
RDMA/srpt 모듈을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
네트워크를 통해 조작된 매우 큰 데이터 길이(0xFFFFFFFF)를 전송하여 정수 오버플로 유발
🛡️ 대응 방법
check_add_overflow() 함수가 적용된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 패치된 최신 보안 업데이트 버전인지 확인합니다.