🇰🇷 한글 설명
Linux 커널의 btrfs 파일 시스템에서 청크 트리 조회 오류를 처리하지 못해 발생하는 데이터 손상 문제입니다. 청크 재배치 중 검색 오프셋 관련 불가능한 조건에서 오류 반환 시 처리되지 않으면 손상된 상태로 진행됩니다.
💡 쉬운 설명
리눅스 디스크 관리 시스템이 저장 공간을 정리할 때 예상치 못한 상황을 제대로 대처하지 못합니다. 이로 인해 파일 시스템이 손상되거나 불안정해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
btrfs: handle chunk tree lookup error in btrfs_relocate_sys_chunks()
The unhandled case in btrfs_relocate_sys_chunks() loop is a corruption,
as it could be caused only by two impossible conditions:
- at first the search key is set up to look for a chunk tree item, with
offset -1, this is an inexact search and the key->offset will contain
the correct offset upon a successful search, a valid chunk tree item
cannot have an offset -1
- after first successful search, the found_key corresponds to a chunk
item, the offset is decremented by 1 before the next loop, it's
impossible to find a chunk item there due to alignment and size
constraints
📍 영향받는 시스템
Linux kernel (btrfs 파일 시스템 사용, 5.10 ~ 6.8 버전대)
⚔️ 공격 벡터
로컬 파일 시스템 청크 재배치 작업 중 특정 조건에서 자동 발생 (의도적 트리거 불필요)
🛡️ 대응 방법
Linux 커널을 6.9 이상으로 업데이트 또는 해당 패치 적용
🔧 검증 코드
커널 버전이 5.10~6.8 범위면 취약, 6.9 이상이면 패치됨
uname -r | grep -E '^(5\.(10|[1-9][0-9]|[0-9]{3})|6\.[0-8])' && echo 'vulnerable' || echo 'likely patched'