CVE-2026-74723 in Linux정보

요약

\~에 의해 VulDB • 2026. 08. 23.

리눅스 커널에서 다음 취약점이 해결되었습니다:

btrfs: lzo: 유효한 헤더가 없는 인라인 익스텐트 거부

[버그]
조작된 btrfs 이미지인 경우, 인라인 LZO 압축 파일 익스텐트를 읽을 때 다음과 같은 KASAN이 트리거될 수 있습니다:

BUG: KASAN: slab-out-of-bounds in lzo_decompress+0x57d/0x700 Read of size 4 at addr ffff888006f2e644 by task btrfs_lzo_inlin/77

Call Trace: <TASK> dump_stack_lvl+0x5b/0x70 print_report+0xd1/0x610 kasan_report+0xe0/0x110 __asan_report_load_n_noabort+0x13/0x20 lzo_decompress+0x57d/0x700 btrfs_decompress+0x140/0x1c0 uncompress_inline+0x147/0x1b0 btrfs_get_extent+0xb23/0x10a0 btrfs_do_readpage.constprop.0+0x538/0x1ac0 btrfs_readahead+0x32f/0x5f0 read_pages+0x16f/0x850 page_cache_ra_unbounded+0x296/0x490 do_page_cache_ra+0xd9/0x130 page_cache_sync_ra+0x3ee/0x6f0 filemap_get_pages+0x306/0x15c0 filemap_read+0x329/0xd00 btrfs_file_read_iter+0x1f8/0x2b0 vfs_read+0x4ef/0x720 ksys_read+0xf8/0x1d0 __x64_sys_read+0x71/0xb0 x64_sys_call+0x1ab0/0x1b70 do_syscall_64+0x61/0x470 entry_SYSCALL_64_after_hwframe+0x4b/0x53 </TASK>

[원인]
인라인 LZO 압축 파일 익스텐트의 경우, 항상 압축 데이터의 총 길이를 기록하는 하나의 LZO 헤더와 이어지는 압축된 LZO 페이로드를 기록하는 하나의 세그먼트 헤더가 존재해야 합니다.

그러나 조작된 인라인 LZO 압축 파일 익스텐트에 LZO 헤더만 있고 세그먼트 헤더 또는 페이로드가 없는 경우, lzo_decompress()는 여전히 세그먼트 헤더를 읽으려고 시도하여 항목 경계를 넘어가는 읽기(read beyond the item boundary)를 유발합니다.

또한 인라인 LZO 압축 파일 익스텐트가 리프(leaf)의 첫 번째 아이템인 경우, 그것은 익스텐트 버퍼(extent buffer) 경계에 위치하게 됩니다. 위의 경계 초과 읽기는 익스텐트 버퍼 경계를 넘어가며, 위에서 언급된 KASAN 보고서를 트리거합니다.

[해결책]
인라인 LZO 압축 파일 익스텐트의 총 길이를 검증하여 최소 하나의 LZO 헤더와 하나의 세그먼트 헤더, 그리고 0이 아닌 페이로드가 있는지 확인합니다.

[커밋 메시지를 재작성하여 slop 제거]

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

책임이 있는

Linux

예약하다

2026. 08. 15.

모더레이션

수락

항목

VDB-394476

EPSS

0.00000

활동

낮음

출처

Might our Artificial Intelligence support you?

Check our Alexa App!