🇰🇷 한글 설명
Linux 커널의 nommu 환경에서 maple tree로부터 VMA 항목을 삭제할 때 vma_iter_prealloc() 함수에 잘못된 인자가 전달되는 취약점입니다. 이로 인해 do_munmap() 이후 acct_collect()와 같이 VMA 반복자에 접근하는 과정에서 nommu 커널의 크래시가 발생할 수 있습니다.
💡 쉬운 설명
리눅스 운영체제의 특정 메모리 관리 방식에서 잘못된 명령이 전달되어 시스템이 갑자기 멈추거나 꺼질 수 있는 오류입니다. 메모리를 정리하는 과정에서 계산 오류가 발생하여 시스템이 충돌하는 현상입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
nommu: pass NULL argument to vma_iter_prealloc()
When deleting a vma entry from a maple tree, it has to pass NULL to
vma_iter_prealloc() in order to calculate internal state of the tree, but
it passed a wrong argument. As a result, nommu kernels crashed upon
accessing a vma iterator, such as acct_collect() reading the size of vma
entries after do_munmap().
This commit fixes this issue by passing a right argument to the
preallocation call.
📍 영향받는 시스템
nommu 설정을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
로컬 시스템에서 메모리 해제(munmap)를 유도하여 커널 패닉을 일으키는 방식
🛡️ 대응 방법
해당 취약점이 수정된 최신 Linux 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 해결된 패치 버전 이후인지 확인