🇰🇷 한글 설명
리눅스 커널의 블록 계층에서 디스크의 conventional zones 비트맵을 처리할 때 RCU 보호가 누락되어 발생하는 취약점입니다. 디스크 재검증 과정에서 비트맵이 변경될 때 disk_zone_is_conv() 헬퍼 함수가 잘못된 메모리 참조를 유발할 수 있습니다.
💡 쉬운 설명
디스크의 저장 공간 정보를 관리하는 데이터가 업데이트되는 도중에 시스템이 해당 정보를 읽으려고 하면 오류가 발생할 수 있습니다. 이로 인해 시스템이 갑자기 멈추거나 예상치 못한 동작을 할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
block: RCU protect disk->conv_zones_bitmap
Ensure that a disk revalidation changing the conventional zones bitmap
of a disk does not cause invalid memory references when using the
disk_zone_is_conv() helper by RCU protecting the disk->conv_zones_bitmap
pointer.
disk_zone_is_conv() is modified to operate under the RCU read lock and
the function disk_set_conv_zones_bitmap() is added to update a disk
conv_zones_bitmap pointer using rcu_replace_pointer() with the disk
zone_wplugs_lock spinlock held.
disk_free_zone_resources() is modified to call
disk_update_zone_resources() with a NULL bitmap pointer to free the disk
conv_zones_bitmap. disk_set_conv_zones_bitmap() is also used in
disk_update_zone_resources() to set the new (revalidated) bitmap and
free the old one.
📍 영향받는 시스템
Linux Kernel (block layer 관련 버전)
⚔️ 공격 벡터
로컬 공격자가 디스크 재검증을 유도하여 잘못된 메모리 참조를 발생시킴 (Race Condition)
🛡️ 대응 방법
RCU 보호가 적용된 최신 리눅스 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 릴리스 버전인지 확인