🇰🇷 한글 설명
Linux 커널의 i915 드라이버 내 xehp_oa_b_counters 배열 처리 과정에서 경계 검사 미흡으로 인한 전역 범위 초과 읽기(Global Out-of-bounds) 취약점이 발견되었습니다. 이 문제는 reg_in_range_table 배열 끝에 빈 레코드가 누락되어 발생하며, KASAN을 통해 탐지되었습니다.
💡 쉬운 설명
컴퓨터의 그래픽 기능을 담당하는 소프트웨어에서 정해진 데이터 범위를 벗어나 잘못된 메모리 영역을 읽는 오류가 발생했습니다. 이로 인해 시스템이 불안정해지거나 예상치 못한 동작이 일어날 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/i915/perf: add sentinel to xehp_oa_b_counters
Arrays passed to reg_in_range_table should end with empty record.
The patch solves KASAN detected bug with signature:
BUG: KASAN: global-out-of-bounds in xehp_is_valid_b_counter_addr+0x2c7/0x350 [i915]
Read of size 4 at addr ffffffffa1555d90 by task perf/1518
CPU: 4 PID: 1518 Comm: perf Tainted: G U 6.4.0-kasan_438-g3303d06107f3+ #1
Hardware name: Intel Corporation Meteor Lake Client Platform/MTL-P DDR5 SODIMM SBS RVP, BIOS MTLPFWI1.R00.3223.D80.2305311348 05/31/2023
Call Trace:
<TASK>
...
xehp_is_valid_b_counter_addr+0x2c7/0x350 [i915]
(cherry picked from commit 2f42c5afb34b5696cf5fe79e744f99be9b218798)
📍 영향받는 시스템
Intel Meteor Lake 플랫폼을 사용하는 Linux 커널 (i915 드라이버 포함 버전)
⚔️ 공격 벡터
로컬 권한을 가진 사용자가 perf 도구 등을 사용하여 특정 시스템 호출을 수행할 때 발생
🛡️ 대응 방법
i915 드라이버의 xehp_oa_b_counters 배열에 센티넬(sentinel)을 추가한 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 최신 보안 업데이트 버전인지 확인