CVE-2026-43076

In the Linux kernel, the following vulnerability has been resolved: ocfs2: validate inline data i_size during inode read When reading an inode from disk, ocfs2_validate_inode_block() performs various sanity checks but does not validate the size of inline data. If the filesystem is corrupted, an inode's i_size can exceed the actual inline data capacity (id_count). This causes ocfs2_dir_foreach_blk_id() to iterate beyond the inline data buffer, triggering a use-after-free when accessing directory entries from freed memory. In the syzbot report: - i_size was 1099511627576 bytes (~1TB) - Actual inline data capacity (id_count) is typically <256 bytes - A garbage rec_len (54648) caused ctx->pos to jump out of bounds - This triggered a UAF in ocfs2_check_dir_entry() Fix by adding a validation check in ocfs2_validate_inode_block() to ensure inodes with inline data have i_size <= id_count. This catches the corruption early during inode read and prevents all downstream code from operating on invalid data.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:2.6.24:-:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:*

History

11 Nov 2026, 21:10

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: ocfs2: validar el i_size de los datos en línea durante la lectura de inodos Al leer un inodo del disco, ocfs2_validate_inode_block() realiza varias comprobaciones de coherencia, pero no valida el tamaño de los datos en línea. Si el sistema de archivos está corrupto, el i_size de un inodo puede exceder la capacidad real de los datos en línea (id_count). Esto provoca que ocfs2_dir_foreach_blk_id() itere más allá del búfer de datos en línea, lo que desencadena un uso después de liberación al acceder a entradas de directorio desde memoria liberada. En el informe de syzbot: - el i_size era de 1099511627576 bytes (~1TB) - La capacidad real de los datos en línea (id_count) es típicamente menor que 256 bytes - Un rec_len (54648) erróneo hizo que ctx -> pos saltara fuera de los límites - Esto desencadenó un UAF en ocfs2_check_dir_entry() Solución: añadiendo una comprobación de validación en ocfs2_validate_inode_block() para asegurar que los inodos con datos en línea tengan i_size <= id_count. Esto detecta la corrupción tempranamente durante la lectura del inodo y evita que todo el código posterior opere con datos inválidos.

Information

Published : 2026-05-06 10:16

Updated : 2026-11-11 21:10


NVD link : CVE-2026-43076

Mitre link : CVE-2026-43076

CVE.ORG link : CVE-2026-43076


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-416

Use After Free