UBUNTU-CVE-2026-90205: Use After Free
In the Linux kernel, the following vulnerability has been resolved: ocfs2: validate orphan slot during inode read Patch series "ocfs2: validate active orphan slots during inode read". OCFS2 trusts active ordinary and append-DIO orphan slots read from dinodes. A corrupted slot can therefore index osborphanwipes or the slot-local system-inode cache outside their allocations before the corruption is reported. Patch 1 validates the ordinary orphan slot used by inode wipe processing. Patch 2 validates the append-DIO orphan slot used by DIO completion and orphan recovery. Both checks reject corrupt metadata at the existing inode validation boundary. This patch (of 2): [BUG] A corrupted dinode with OCFS2ORPHANEDFL can carry an iorphanedslot outside the mounted filesystem slot range. ocfs2wipeinode() uses it to index osborphanwipes before looking up the orphan directory, causing an out-of-bounds memory access. BUG: KASAN: slab-use-after-free in ocfs2getsystemfileinode+0x780/0x820 fs/ocfs2/sysfile.c:102 Read of size 8 at addr ffff88800b767c00 by task kworker/u8:3/85 Call Trace: ... ocfs2getsystemfileinode+0x780/0x820 fs/ocfs2/sysfile.c:102 ocfs2wipeinode+0x292/0xf70 fs/ocfs2/inode.c:840 ocfs2deleteinode fs/ocfs2/inode.c:1155 [inline] ocfs2evictinode+0x6c9/0x1170 fs/ocfs2/inode.c:1295 evict+0x38e/0x8f0 fs/inode.c:810 iputfinal fs/inode.c:1914 [inline] iput fs/inode.c:1966 [inline] iput+0x55b/0x8b0 fs/inode.c:1926 ocfs2recoverorphans+0x610/0xe40 fs/ocfs2/journal.c:2374 ocfs2completerecovery+0x5af/0xd00 fs/ocfs2/journal.c:1373 ... [CAUSE] ocfs2validateinodeblock() validates isuballocslot but leaves the active ordinary orphan slot unchecked. Downstream consumers assume that the value is smaller than osb->maxslots. [FIX] Reject an active iorphanedslot outside the slot range during dinode validation, before the inode reaches orphan wipe processing.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-hwe-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42~24.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1~24.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 7.0.0-42.42 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 7.0.0-1016.17 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 7.0.0-1016.18 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oem-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 7.0.0-1015.16 - Upgrade
Upgrade
ubuntu/linux-riscvto a version that resolves this vulnerability.Fixed in 7.0.0-42.42.1 - Compensating control
In OCFS2 dinode validation, reject an active i_orphaned_slot that is outside the mounted filesystem slot range before the inode reaches orphan wipe processing.
Event History
Frequently Asked Questions
Which deployments are exposed to this issue?
The affected software list includes Ubuntu linux, linux-fips, and AWS, Azure, and GCP kernel variants, including their FIPS variants. The vulnerable path concerns OCFS2 filesystems, specifically inode processing of orphaned metadata.
What conditions are needed to trigger the vulnerable path?
A corrupted OCFS2 dinode must contain an orphan slot value outside the mounted filesystem's valid slot range. The ordinary orphan slot can be used during inode wipe processing, and the append-DIO orphan slot can be used during DIO completion or orphan recovery.
What evidence could indicate the issue has been triggered?
The reported failure is a KASAN slab-use-after-free involving ocfs2_get_system_file_inode, reached from ocfs2_wipe_inode. This occurs because an invalid orphan slot is used to index slot-related structures before the metadata corruption is rejected.