🇰🇷 한글 설명
Linux 커널의 RDMA/rtrs-srv 구성 요소에서 정수 언더플로우 취약점이 발견되었습니다. 공격자가 조작된 네트워크 메시지를 보내 usr_len 값을 off 값보다 크게 설정하면, 데이터 길이를 계산하는 과정에서 매우 큰 값이 생성되어 메모리 경계를 벗어난 접근(Out-of-bounds access)이 발생할 수 있습니다.
💡 쉬운 설명
네트워크를 통해 들어오는 데이터의 길이를 계산할 때 숫자가 마이너스로 돌아가는 오류가 발생하는 문제입니다. 이를 이용해 해커가 컴퓨터의 허용되지 않은 메모리 영역에 접근하여 시스템을 망가뜨릴 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
RDMA/rtrs-srv: Fix integer underflow in process_read and process_write
usr_len is read from a network-supplied message field (le16_to_cpu)
and used to compute data_len = off - usr_len without validating that
usr_len <= off. A malicious RDMA client can send usr_len > off causing
an integer underflow, resulting in data_len wrapping to a huge size_t
value which is then passed to the rdma_ev callback as a memory length,
leading to out-of-bounds memory access.
Fix by reading and validating usr_len <= off before rtrs_srv_get_ops_ids()
in both process_read() and process_write(), ensuring the early return
path acquires no reference and has no resource leak.
📍 영향받는 시스템
RDMA/rtrs-srv 모듈을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
조작된 usr_len 값을 포함한 악의적인 RDMA 네트워크 메시지 전송
🛡️ 대응 방법
커널 업데이트를 통해 process_read 및 process_write 함수 내 usr_len 검증 로직 적용
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 보안 패치가 적용된 최신 버전인지 확인합니다.