🇰🇷 한글 설명
Linux 커널의 md(Multiple Device) 레이어에서 비트맵을 파괴하기 전에 비트맵이 mddev로부터 분리되기 전에 대기하는 과정이 누락되었습니다. 이로 인해 llbitmap 사용 시 RAID1의 비트맵 쓰기 완료 작업이 비트맵 저장소가 해제된 이후에 실행되어 시스템 불안정이나 데이터 손상을 초래할 수 있습니다.
💡 쉬운 설명
데이터를 안전하게 저장하는 과정이 끝나기도 전에 저장 공간을 먼저 없애버리는 문제가 있었습니다. 이로 인해 컴퓨터 시스템이 갑자기 멈추거나 데이터가 깨질 위험이 있었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
md: wait for behind writes before destroying bitmap
__md_stop() destroyed the bitmap before calling mddev_detach(). That made
mddev_detach() skip bitmap_ops->wait_behind_writes(), because the bitmap
was already disconnected from mddev.
This was still safe for the legacy bitmap because bitmap_destroy() waits
for behind writes itself. llbitmap keeps that wait in its
->wait_behind_writes() operation instead, while ->destroy() tears down the
llbitmap storage. With the old ordering, RAID1 behind-write completions
could still run after llbitmap storage had been freed.
Call mddev_detach() before md_bitmap_destroy() so the common detach path
can wait for behind writes while the bitmap is still alive. Only destroy
the bitmap after those users are gone.
📍 영향받는 시스템
Linux kernel (md/llbitmap 관련 모듈을 사용하는 시스템)
⚔️ 공격 벡터
로컬 시스템에서 RAID 장치의 분리(detach)를 유도하여 메모리 오류 또는 데이터 손상을 유발할 수 있음
🛡️ 대응 방법
비트맵 파괴 전 mddev_detach()를 먼저 호출하도록 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인