🇰🇷 한글 설명
Linux 커널의 OMFS 파일 시스템에서 s_sys_blocksize 값이 OMFS_DIR_START보다 작을 경우 발생하는 정수 언더플로우 취약점입니다. 이로 인해 memset() 함수에서 매우 큰 값이 생성되어 커널 메모리를 약 4GiB만큼 덮어쓰는 메모리 오염이 발생할 수 있습니다.
💡 쉬운 설명
조작된 파일 시스템을 연결할 때 시스템이 계산 오류를 일으켜 컴퓨터의 중요한 메모리 영역을 망가뜨릴 수 있는 문제입니다. 이로 인해 시스템이 멈추거나 해커가 제어권을 얻을 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
fs/omfs: reject s_sys_blocksize smaller than OMFS_DIR_START
omfs_fill_super() rejects oversized s_sys_blocksize values (> PAGE_SIZE),
but it does not reject values smaller than OMFS_DIR_START (0x1b8 = 440).
Later, omfs_make_empty() uses
sbi->s_sys_blocksize - OMFS_DIR_START
as the length argument to memset(). Since s_sys_blocksize is u32,
a crafted filesystem image with s_sys_blocksize < OMFS_DIR_START causes
an unsigned underflow there, wrapping to a value near 2^32. That drives
a ~4 GiB memset() from bh->b_data + OMFS_DIR_START and overwrites kernel
memory far beyond the backing block buffer.
Add the corresponding lower-bound check alongside the existing upper-bound
check in omfs_fill_super(), so that malformed images are rejected during
superblock validation before any filesystem data is processed.
📍 영향받는 시스템
OMFS 파일 시스템을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
취약한 s_sys_blocksize 값을 가진 조작된 OMFS 파일 시스템 이미지 마운트
🛡️ 대응 방법
커널 업데이트를 통해 omfs_fill_super() 함수 내 하한선 검증 로직이 포함된 최신 패치를 적용하십시오.
🔧 검증 코드
출력된 커널 버전을 확인하여 해당 취약점이 패치된 최신 버전인지 보안 공지(CVE-2026-53130)와 대조하십시오.