🇰🇷 한글 설명
Linux 커널의 hp-bioscfg 드라이버에서 ACPI 패키지를 파싱할 때 배열의 범위를 벗어난 접근이 발생하는 취약점입니다. 특정 필드를 처리하는 과정에서 인덱스 검증 시 오프셋을 고려하지 않아 메모리 경계를 초과하여 읽을 수 있습니다.
💡 쉬운 설명
컴퓨터 설정 정보를 읽어오는 과정에서 정해진 데이터 범위를 넘어서는 잘못된 위치의 정보를 읽으려고 시도하는 오류입니다. 이로 인해 시스템이 불안정해지거나 보안 문제가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
platform/x86: hp-bioscfg: Fix out-of-bounds array access in ACPI package parsing
The hp_populate_*_elements_from_package() functions in the hp-bioscfg
driver contain out-of-bounds array access vulnerabilities.
These functions parse ACPI packages into internal data structures using
a for loop with index variable 'elem' that iterates through
enum_obj/integer_obj/order_obj/password_obj/string_obj arrays.
When processing multi-element fields like PREREQUISITES and
ENUM_POSSIBLE_VALUES, these functions read multiple consecutive array
elements using expressions like 'enum_obj[elem + reqs]' and
'enum_obj[elem + pos_values]' within nested loops.
The bug is that the bounds check only validated elem, but did not consider
the additional offset when accessing elem + reqs or elem + pos_values.
The fix changes the bounds check to validate the actual accessed index.
📍 영향받는 시스템
hp-bioscfg 드라이버를 사용하는 x86 기반 Linux 커널 시스템
⚔️ 공격 벡터
조작된 ACPI 패키지를 통해 드라이버의 배열 인덱스 범위를 초과하도록 유도
🛡️ 대응 방법
해당 취약점이 수정된 최신 버전의 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 패치된 최신 보안 업데이트 버전인지 확인