🇰🇷 한글 설명
Linux 커널의 Btrfs 파일 시스템에서 ROOT_REF 및 ROOT_BACKREF 항목의 이름을 검증하지 않아 발생하는 취약점입니다. 손상된 항목을 통해 메모리 범위를 벗어난 주소에 접근하거나, BTRFS_IOC_GET_SUBVOL_INFO 호출 시 고정된 크기의 버퍼를 초과하여 데이터를 복사하는 버퍼 오버플로우가 발생할 수 있습니다.
💡 쉬운 설명
파일 시스템의 이름 정보가 조작되었을 때, 컴퓨터가 잘못된 길이를 읽어 들여 메모리의 다른 영역을 침범하거나 정보를 유출할 수 있는 문제입니다. 이는 시스템의 안정성을 해치거나 보안 위협이 될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
btrfs: tree-checker: validate names in ROOT_REF and ROOT_BACKREF
ROOT_REF and ROOT_BACKREF items contain a struct btrfs_root_ref followed
by the subvolume name. Several readers assume that this layout is already
valid and then use the on-disk name length directly. A corrupted item can
therefore make those readers address bytes outside the item, and
BTRFS_IOC_GET_SUBVOL_INFO can copy too many bytes into its fixed-size UAPI
name buffer.
Validate ROOT_REF and ROOT_BACKREF items in tree-checker before any reader
uses them. Reject records that do not contain a non-empty name, whose
name_len does not exactly describe the remaining item payload, or whose
name exceeds BTRFS_NAME_LEN.
For BTRFS_IOC_GET_SUBVOL_INFO, copy only the validated on-disk name_len
instead of deriving the copy length from the item size. The ioctl result is
zeroed when allocated. That leaves the existing trailing zero byte
untouched.
📍 영향받는 시스템
Btrfs 파일 시스템을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
손상된 Btrfs 메타데이터 아이템을 통한 메모리 오버리드 및 버퍼 오버플로우 유도
🛡️ 대응 방법
Btrfs tree-checker 검증 로직이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인합니다.
📊 CVSS Vector String
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
💻 영향받는 소프트웨어
NVIDIA Cloud Gaming Guest Driver for Linux