🇰🇷 한글 설명
리눅스 커널의 mm/smaps 구성 요소에서 smaps_hugetlb_range 함수와 페이지 마이그레이션 작업 간의 경쟁 상태(Race Condition)가 발견되었습니다. 이로 인해 pfn_swap_entry_to_page() 함수에서 BUG_ON이 발생하여 시스템이 중단될 수 있습니다. 이를 해결하기 위해 smaps_hugetlb_range 실행 시 ptl 잠금(lock)을 유지하도록 수정되었습니다.
💡 쉬운 설명
컴퓨터의 메모리를 관리하는 과정에서 두 가지 작업이 동시에 일어나 충돌이 발생하는 문제입니다. 이 충돌이 발생하면 시스템이 예상치 못한 오류를 일으키며 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mm/smaps: fix race between smaps_hugetlb_range and migration
smaps_hugetlb_range() handles the pte without holdling ptl, and may be
concurrenct with migration, leaing to BUG_ON in pfn_swap_entry_to_page().
The race is as follows.
smaps_hugetlb_range migrate_pages
huge_ptep_get
remove_migration_ptes
folio_unlock
pfn_swap_entry_folio
BUG_ON
To fix it, hold ptl lock in smaps_hugetlb_range().
📍 영향받는 시스템
Linux Kernel (smaps_hugetlb_range 관련 취약점이 포함된 버전)
⚔️ 공격 벡터
로컬 공격자가 특정 메모리 관리 작업을 유도하여 시스템 충돌(DoS)을 일으킬 수 있음
🛡️ 대응 방법
커널 패치를 적용하여 smaps_hugetlb_range 함수에 ptl 잠금 메커니즘을 적용한 최신 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 최신 보안 패치 버전인지 확인