🇰🇷 한글 설명
리눅스 커널의 kunit/overflow 테스트 중 overflow_allocation_test 함수 범위 밖의 'device_name' 배열을 참조하는 정의되지 않은 동작(UB)이 발견되었습니다. KASAN이 활성화된 상태에서 해당 변수를 드라이버 이름으로 호출할 경우 커널 패닉이 발생할 수 있습니다.
💡 쉬운 설명
프로그램이 자기 영역이 아닌 엉뚱한 메모리 주소를 참조하여 시스템이 갑자기 멈추는 오류입니다. 이 오류가 발생하면 컴퓨터의 핵심인 커널이 충돌하여 시스템이 중단될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
kunit/overflow: Fix UB in overflow_allocation_test
The 'device_name' array doesn't exist out of the
'overflow_allocation_test' function scope. However, it is being used as
a driver name when calling 'kunit_driver_create' from
'kunit_device_register'. It produces the kernel panic with KASAN
enabled.
Since this variable is used in one place only, remove it and pass the
device name into kunit_device_register directly as an ascii string.
📍 영향받는 시스템
Linux Kernel (KASAN 활성화 환경)
⚔️ 공격 벡터
로컬 공격자가 특정 KUnit 테스트 케이스를 실행하여 커널 패닉 유도
🛡️ 대응 방법
커널 패치를 적용하여 'device_name' 변수 참조를 제거하고 직접 문자열을 전달하도록 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 최신 패치 버전인지 확인