🇰🇷 한글 설명
리눅스 커널의 liveupdate 기능 중 luo_file_unpreserve_files() 및 luo_file_finish() 함수에서 Use-After-Free(UAF) 취약점이 발견되었습니다. 모듈 참조 카운트 관리 순서 오류로 인해 파일 핸들러 모듈이 작업 중에 해제될 수 있는 문제가 있어, module_put()과 xa_erase()의 호출 순서를 조정하여 해결되었습니다.
💡 쉬운 설명
컴퓨터의 핵심 운영체제인 리눅스에서 특정 작업 중에 필요한 데이터가 미리 삭제되어 시스템이 충돌하거나 보안 문제가 생길 수 있는 오류가 있었습니다. 이 오류를 수정하여 데이터가 사용되는 동안 안전하게 보호되도록 조치했습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
liveupdate: fix u-a-f in luo_file_unpreserve_files() and luo_file_finish()
In luo_file_unpreserve_files() and luo_file_finish(), reorder
module_put() and xa_erase() to ensure the file handler module remains
pinned while its operations are being accessed.
Specifically, luo_get_id() dereferences fh->ops->get_id, so the module
reference must be held until after xa_erase() (which calls luo_get_id)
completes.
For luo_file_finish(), this requires moving the module_put() call out of
the luo_file_finish_one() helper and into the main loop of
luo_file_finish() itself.
📍 영향받는 시스템
Linux kernel (liveupdate 기능이 포함된 버전)
⚔️ 공격 벡터
로컬 공격자가 특정 커널 함수를 호출하여 메모리 해제 후 재사용(UAF)을 유도함으로써 권한 상승 또는 시스템 중단을 일으킬 수 있음
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인하십시오.