🇰🇷 한글 설명
Linux 커널의 MIPS 아키텍처에서 maar_res_walk() 함수가 배열의 크기를 확인하기 전에 인덱스를 사용하여 데이터를 기록하는 취약점이 발견되었습니다. 시스템 메모리 범위가 16개를 초과할 경우, 고정된 크기의 배열 범위를 벗어난 영역에 데이터를 쓰는 Out-of-bounds write 오류가 발생할 수 있습니다.
💡 쉬운 설명
컴퓨터 메모리를 관리하는 과정에서 정해진 칸보다 더 많은 정보를 저장하려고 시도하여 발생하는 오류입니다. 이로 인해 시스템이 불안정해지거나 예상치 못한 동작을 할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
MIPS: mm: Fix out-of-bounds write in maar_res_walk()
maar_res_walk() uses wi->num_cfg as the index into the fixed-size
wi->cfg array, but checks whether the array is full only after it has
filled the selected entry. If walk_system_ram_range() reports more than
16 memory ranges, the overflow call writes one struct maar_config past
the end of the array before WARN_ON() prevents num_cfg from advancing.
Move the full-array check before taking the array slot and return non-zero
when the scratch array is full, so walk_system_ram_range() terminates the
walk instead of invoking the callback for further ranges.
📍 영향받는 시스템
MIPS 아키텍처를 사용하는 Linux 커널 시스템
⚔️ 공격 벡터
시스템 메모리 범위를 16개 이상으로 구성하여 커널의 메모리 관리 함수를 호출하는 방식
🛡️ 대응 방법
해당 취약점이 수정된 최신 버전의 Linux 커널로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 취약점이 패치된 최신 버전인지 확인하십시오.