🇰🇷 한글 설명
Linux 커널의 md(Multiple Device) 레이드 구성 중 raid1, raid10, raid456에서 REQ_NOWAIT 지원이 불완전하여 데이터 불일치가 발생할 수 있는 취약점이 발견되었습니다. 쓰기 요청 시 일부 미러 장치에서 오류가 발생할 경우 이를 장치 결함인지 단순 대기 상태인지 구분하지 못해 데이터 무결성이 깨질 수 있습니다. 이를 해결하기 위해 해당 레이드 유형에서 REQ_NOWAIT 지원을 제거하였습니다.
💡 쉬운 설명
여러 개의 하드디스크를 하나처럼 사용하는 기능에서 데이터 저장 방식에 오류가 있어, 저장된 데이터가 서로 달라질 수 있는 문제입니다. 이로 인해 파일이 깨지거나 데이터가 손실될 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
md: remove REQ_NOWAIT support from raid1/10/456
REQ_NOWAIT support in md personalities that can block internally is
fundamentally incomplete. While reads can avoid some blocking paths,
write requests can still encounter cases where one mirror succeeds while
another returns -EAGAIN. At that point md cannot distinguish queue
pressure from a real device failure, so it can neither record a bad
block nor safely retry the write without REQ_NOWAIT, leaving mirrors
with divergent data.
Rather than continue advertising REQ_NOWAIT support for personalities
that cannot implement it correctly, remove it from raid1, raid10 and
raid456. Keep REQ_NOWAIT for linear and raid0, which only remap bios to
their underlying devices; stacked limits will still clear the feature if
any component device lacks REQ_NOWAIT support.
📍 영향받는 시스템
REQ_NOWAIT를 사용하는 raid1, raid10, raid456 구성의 Linux 커널 시스템
⚔️ 공격 벡터
직접적인 공격보다는 시스템 부하 상황에서 데이터 불일치(Data Divergence)를 유발하는 논리적 결함
🛡️ 대응 방법
해당 취약점이 수정된 최신 버전의 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 보안 업데이트 버전인지 확인