🇰🇷 한글 설명
Linux 커널의 Btrfs 파일 시스템에서 range_is_hole_in_parent() 함수가 인라인 익스텐트(inline extent) 여부를 적절히 확인하지 않아 발생하는 취약점입니다. 인라인 익스텐트의 경우 데이터가 disk_bytenr 필드 위치에서 시작되므로, 이를 확인하지 않고 접근할 경우 잘못된 메모리 접근이나 다른 메타데이터를 손상시킬 수 있습니다.
💡 쉬운 설명
파일 시스템의 특정 데이터를 읽을 때 데이터의 위치를 잘못 계산하여 컴퓨터 메모리의 엉뚱한 곳을 건드리는 문제입니다. 이로 인해 시스템이 멈추거나 데이터가 깨질 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
btrfs: send: check for inline extents in range_is_hole_in_parent()
Before accessing the disk_bytenr field of a file extent item we need
to check if we are dealing with an inline extent.
This is because for inline extents their data starts at the offset of
the disk_bytenr field. So accessing the disk_bytenr
means we are accessing inline data or in case the inline data is less
than 8 bytes we can actually cause an invalid
memory access if this inline extent item is the first item in the leaf
or access metadata from other items.
📍 영향받는 시스템
Btrfs 파일 시스템을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
조작된 Btrfs 파일 시스템 구조를 통해 잘못된 메모리 접근 유도
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인