🔍 CVE-2026-72367

8.8
CVSS Score
HIGH
2026-08-15
2026-10-21 13:19
✅ 완료

🇰🇷 한글 설명

리눅스 커널의 iomap 구성 요소에서 파일 크기 조절(truncate)과 쓰기 작업이 동시에 발생할 때 정수 언더플로우가 발생하는 취약점입니다. 파일 끝(EOF) 위치가 쓰기 범위보다 작아질 경우 io_size가 매우 큰 값으로 변환되어 파일 시스템의 데이터 무결성을 손상시킬 수 있습니다.

💡 쉬운 설명

파일을 저장하는 도중에 갑자기 파일 크기를 줄이면, 컴퓨터가 계산 오류를 일으켜 파일의 크기를 엄청나게 크게 착각하게 됩니다. 이로 인해 파일 데이터가 깨지거나 시스템에 오류가 생길 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: iomap: guard io_size EOF trim against concurrent truncate underflow iomap: fix zero padding data issue in concurrent append writes changed ioend accounting so that io_size tracks only valid data within EOF. This trims io_size when a writeback range extends past end_pos: ioend->io_size += map_len; if (ioend->io_offset + ioend->io_size > end_pos) ioend->io_size = end_pos - ioend->io_offset; However, if end_pos ends up below ioend->io_offset, the subtraction becomes negative and is stored in size_t io_size, causing an unsigned wrap to a huge value. This can happen when writeback continues past byte-level EOF up to a block-aligned range, or when a concurrent truncate shrinks the file after end_pos was sampled in iomap_writeback_handle_eof(). A wrapped io_size can mislead append detection and corrupt completion-time size handling, since filesystem end_io paths consume io_size for decisions such as on-disk EOF updates and unwritten/COW completion ranges. Fix this by clamping io_size to zero when EOF has moved to or before the ioend start offset. This preserves the original intent of trimming io_size to valid in-EOF data while avoiding the underflow.

📍 영향받는 시스템

Linux Kernel (iomap 구성 요소를 사용하는 시스템)

⚔️ 공격 벡터

파일 쓰기 작업과 동시에 파일 크기를 줄이는 truncate 작업을 수행하여 정수 언더플로우 유도

🛡️ 대응 방법

리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트

🔧 검증 코드

현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 패치 버전인지 확인

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel