CVE-2026-72159 in Linuxinfo

Summary

by MITRE • 08/15/2026

In the Linux kernel, the following vulnerability has been resolved:

ocfs2: reject non-inline dinodes with i_size and zero i_clusters

On a volume mounted without OCFS2_FEATURE_INCOMPAT_SPARSE_ALLOC, a non-inline regular file with non-zero i_size and zero i_clusters is structurally malformed: the extent map declares no allocated clusters yet the size header claims content exists. Keep rejecting that shape, but express it through a shared predicate so the same invariant is available to normal inode reads and online filecheck.

The same zero-cluster shape is also malformed for non-inline directories. ocfs2 directory growth allocates backing storage before advancing i_size, and ocfs2_dir_foreach_blk_el() later walks until ctx->pos reaches i_size_read(inode). A forged directory dinode with a huge i_size and no clusters would repeatedly fail on holes while advancing through the claimed size.

Sparse regular files remain exempt: on sparse-alloc volumes, truncate can legitimately grow i_size without allocating clusters. System inodes and inline-data dinodes also retain their separate storage rules.

Mirror the check in ocfs2_filecheck_validate_inode_block() as well. filecheck reports through its own error namespace, so malformed size/cluster state is logged as a filecheck invalid-inode result rather than via ocfs2_error(), but it must not proceed into ocfs2_populate_inode().

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Analysis

by VulDB Data Team • 08/15/2026

This vulnerability affects the OCFS2 (Oracle Cluster File System 2) implementation within the Linux kernel, specifically addressing structural inconsistencies in inode management that could lead to system instability or data corruption. The issue occurs when dealing with non-inline regular files and directories that exhibit malformed metadata characteristics, where the file size indicates content exists while the cluster allocation map shows no actual storage allocated. According to the CWE-119 weakness classification related to memory safety issues, this represents a critical data structure inconsistency that violates fundamental filesystem integrity principles.

The technical flaw manifests when OCFS2 encounters inodes with non-zero i_size values but zero i_clusters counters on volumes lacking the OCFS2_FEATURE_INCOMPAT_SPARSE_ALLOC feature. This creates an impossible state where the filesystem claims to contain data without having allocated any storage space for it, effectively creating a logical contradiction in the file allocation model. The implementation addresses this by introducing a shared validation predicate that enforces consistent inode structure checking across different code paths, ensuring that both normal inode reading operations and online file validation processes maintain the same structural integrity requirements.

The operational impact of this vulnerability extends beyond simple data corruption risks to potentially enable denial-of-service conditions or system crashes during filesystem operations. When processing malformed directory inodes with large i_size values but no allocated clusters, the ocfs2_dir_foreach_blk_el() function would repeatedly encounter allocation holes while traversing the claimed file size, leading to infinite loops or excessive resource consumption. This behavior directly aligns with ATT&CK technique T1490 for resource exhaustion attacks and could be exploited by malicious actors to disrupt filesystem services.

The fix implements a comprehensive validation approach that mirrors checks across different subsystems within OCFS2, ensuring consistent enforcement of inode structural rules. By incorporating the validation into ocfs2_filecheck_validate_inode_block(), the system maintains proper error reporting through filecheck's dedicated error namespace rather than generic ocfs2_error() mechanisms. This approach preserves the distinction between filesystem-level errors and validation errors while maintaining consistent behavioral patterns. The solution specifically exempts sparse regular files that operate under different allocation semantics, preserving legitimate use cases where truncate operations can legitimately increase i_size without corresponding cluster allocations.

The mitigation strategy reinforces proper inode validation throughout the OCFS2 codebase by establishing a single source of truth for structural integrity checks. This prevents the propagation of malformed inodes into core filesystem operations and ensures that all file access paths validate inode consistency before proceeding with data operations. The implementation follows established best practices for filesystem integrity checking and maintains backward compatibility while preventing the exploitation of logical inconsistencies in the OCFS2 metadata model.

Responsible

Linux

Reservation

08/09/2026

Disclosure

08/15/2026

Moderation

accepted

CPE

ready

EPSS

0.00220

KEV

no

Activities

very low

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!