🇰🇷 한글 설명
리눅스 커널의 메모리 관리(mm) 구성 요소에서 GFP 플래그가 스핀락(spin)을 허용하지 않는 상황임에도 add_stack_record 함수가 스핀락을 시도하는 취약점이 발견되었습니다. 이로 인해 특정 메모리 할당 컨텍스트에서 시스템 데드락이나 불안정성이 발생할 수 있습니다.
💡 쉬운 설명
컴퓨터의 메모리를 관리하는 과정에서, 잠시 멈춰서 기다려야 하는 상황이 아닌데도 시스템이 무작정 기다리게 되어 컴퓨터가 멈출 수 있는 문제입니다. 메모리 할당 규칙을 어기고 잘못된 방식으로 대기 상태에 들어가는 결함입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mm: don't spin in add_stack_record when gfp flags don't allow
syzbot was able to find the following path:
add_stack_record_to_list mm/page_owner.c:182 [inline]
inc_stack_record_count mm/page_owner.c:214 [inline]
__set_page_owner+0x2c3/0x4a0 mm/page_owner.c:333
set_page_owner include/linux/page_owner.h:32 [inline]
post_alloc_hook+0x240/0x2a0 mm/page_alloc.c:1851
prep_new_page mm/page_alloc.c:1859 [inline]
get_page_from_freelist+0x21e4/0x22c0 mm/page_alloc.c:3858
alloc_pages_nolock_noprof+0x94/0x120 mm/page_alloc.c:7554
Don't spin in add_stack_record_to_list() when it is called
from *_nolock() context.
📍 영향받는 시스템
Linux Kernel (mm/page_owner.c 관련 모듈을 사용하는 모든 버전)
⚔️ 공격 벡터
로컬 공격자가 특정 메모리 할당 패턴을 유도하여 커널 데드락을 유발할 수 있음
🛡️ 대응 방법
해당 취약점이 수정된 최신 리눅스 커널 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 취약점이 패치된 최신 릴리스 버전인지 확인하십시오.