CVE-2026-89778
mass1· 1 readOut-of-bounds page-array read in Linux kernel zisofs (compressed ISO9660) handling
The Linux kernel's isofs zisofs decompressor mishandles empty compression blocks: a crafted "ZF" Rock Ridge record inside an ISO9660 image can set the compression block size below the kernel page size, and an ordinary read() of such a compressed file then drives zisofs_read_folio() one entry past the end of the allocated page-pointer array (KASAN reports a slab-out-of-bounds 8-byte read immediately past an 8-byte kmalloc-8 allocation, i.e. a single-entry array). An attacker triggers this by supplying a specially crafted ISO image that a user or automated service mounts and then reads; the page-aligned case (poffset == 0) is unaffected. An attacker gains kernel out-of-bounds memory access, potentially yielding information disclosure or a kernel crash, and the assigned CVSS 3.1 score is 9.8 critical, though the practical trigger requires mounting an attacker-controlled image rather than a purely remote path. Any Linux system that mounts untrusted ISO9660 images with ISO9660/zisofs support enabled is affected, including desktops handling removable media, CI/build and VM services that mount ISOs, and file managers with auto-mount. No public proof-of-concept or confirmed in-the-wild exploitation is known; the flaw is fixed by the upstream commit "isofs: fix out-of-bounds page array access on empty zisofs block," and no affected/fixed version ranges are specified in the available data.
What to do: Update the kernel to a release that includes the upstream fix "isofs: fix out-of-bounds page array access on empty zisofs block" once it reaches your distribution's stable channel; no fixed version numbers are available in the current data, so track your vendor's advisory. Until patched, avoid mounting ISO images from untrusted sources and restrict or disable automatic mounting of removable media and ISO files by unprivileged users. Verify whether your kernel is built with CONFIG_ISO9660_FS/CONFIG_ZISOFS; images using page-aligned blocks (poffset == 0) are unaffected.
| Linux kernel, fs/isofs/compress.c (zisofs compressed ISO9660 support) | — |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
In the Linux kernel, the following vulnerability has been resolved: isofs: fix out-of-bounds page array access on empty zisofs block zisofs_uncompress_block()'s empty-block fast path returns pcount 17, so a crafted "ZF" Rock Ridge record can set it below PAGE_SHIFT; the bug is reached by an ordinary read() of a compressed file on such a mounted ISO9660 image. Return the byte count relative to poffset and zero only [poffset, PAGE_SIZE) of the first page, matching the decompression path. The page-aligned case (poffset == 0) is unaffected. BUG: KASAN: slab-out-of-bounds in zisofs_read_folio (fs/isofs/compress.c:290) Read of size 8 at addr ffff88800f5eac48 by task exploit/142 zisofs_read_folio (fs/isofs/compress.c:290) read_pages (mm/readahead.c:184) ... filemap_read (mm/filemap.c:2814) vfs_read (fs/read_write.c:574) __x64_sys_pread64 (fs/read_write.c:769) do_syscall_64 (arch/x86/entry/syscall_64.c:94) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121) The buggy address is located 0 bytes to the right of the allocated 8-byte region in the kmalloc-8 cache
- Vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
In the news0 stories
No ingested article mentions this CVE yet.