🇰🇷 한글 설명
Linux 커널의 RDMA/bnxt_re 드라이버에서 bnxt_re_copy_err_stats() 함수 호출 시 경계 검사 미흡으로 인한 Out-of-Bounds(OOB) Write 취약점이 발견되었습니다. 특정 하드웨어 카운터가 잘못된 위치에 배치되어 할당된 메모리 범위를 벗어나 데이터를 쓰는 문제가 발생했습니다.
💡 쉬운 설명
컴퓨터의 데이터 저장 공간을 계산할 때 실수로 정해진 범위를 넘어서 데이터를 기록하는 오류가 있었습니다. 이로 인해 시스템의 중요한 정보가 덮어씌워지거나 시스템이 불안정해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
RDMA/bnxt_re: Fix OOB write in bnxt_re_copy_err_stats()
Commit ef56081d1864 ("RDMA/bnxt_re: RoCE related hardware counters
update") added three new counters and placed them after
BNXT_RE_OUT_OF_SEQ_ERR.
BNXT_RE_OUT_OF_SEQ_ERR acts as a boundary marker for allocating hardware
statistics with different num_counters values on chip_gen_p5_p7 devices.
As a result, BNXT_RE_NUM_STD_COUNTERS are used when allocating
hw_stats, which leads to an out-of-bounds write in
bnxt_re_copy_err_stats().
The counters BNXT_RE_REQ_CQE_ERROR, BNXT_RE_RESP_CQE_ERROR, and
BNXT_RE_RESP_REMOTE_ACCESS_ERRS are applicable to generic hardware, not
only p5/p7 devices.
Fix this by moving these counters before BNXT_RE_OUT_OF_SEQ_ERR so they
are included in the generic counter set.
📍 영향받는 시스템
Linux kernel (RDMA/bnxt_re 드라이버를 사용하는 시스템)
⚔️ 공격 벡터
로컬 권한을 가진 공격자가 특정 RDMA 하드웨어 통계 데이터를 조작하여 메모리 오염 유도
🛡️ 대응 방법
커널 패치(Commit ef56081d1864 관련 수정 사항 포함)를 적용하여 하드웨어 카운터 배치 순서 수정
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 수정된 최신 패치 버전인지 확인합니다.