🇰🇷 한글 설명
리눅스 커널의 메모리 압축(compaction) 과정 중 free_pages_prepare() 함수가 실패할 경우, compaction_free()가 이를 적절히 처리하지 못하는 취약점입니다. 실패한 페이지가 다시 사용 가능한 페이지 목록에 추가될 경우, 손상된 페이지(PageHWPoison 등)를 참조하게 되어 데이터 오염이 발생할 수 있습니다.
💡 쉬운 설명
컴퓨터의 메모리를 정리하는 과정에서 고장 난 메모리 조각을 제대로 걸러내지 못하는 문제입니다. 이로 인해 고장 난 메모리 영역에 데이터를 저장하려다 데이터가 깨지거나 시스템 오류가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mm/compaction: handle free_pages_prepare() properly in compaction_free()
free_pages_prepare() can fail but compaction_free() does not handle the
failure case. Failed pages should not be added back to cc->freepages for
future use, since they can be either PageHWPoison or free_page_is_bad()
and might cause data corruption.
📍 영향받는 시스템
Linux Kernel (mm/compaction 관련 모듈을 사용하는 버전)
⚔️ 공격 벡터
로컬 공격자가 메모리 압축 프로세스를 유도하여 손상된 페이지를 재사용하게 함으로써 데이터 오염 유발
🛡️ 대응 방법
해당 취약점이 수정된 최신 리눅스 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 해결된 패치 버전 이상인지 확인