Bug 2507054 (CVE-2026-64323) - CVE-2026-64323 kernel: udf: validate VAT header length against the VAT inode size
Summary: CVE-2026-64323 kernel: udf: validate VAT header length against the VAT inode ...
Keywords:
Status: NEW
Alias: CVE-2026-64323
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-07-25 10:02 UTC by OSIDB Bzimport
Modified: 2026-07-29 18:27 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-07-25 10:02:36 UTC
In the Linux kernel, the following vulnerability has been resolved:

udf: validate VAT header length against the VAT inode size

udf_load_vat() takes the virtual partition's start offset straight from
the on-disk VAT 2.0 header without checking it against the VAT inode
size:

	map->s_type_specific.s_virtual.s_start_offset =
		le16_to_cpu(vat20->lengthHeader);
	map->s_type_specific.s_virtual.s_num_entries =
		(sbi->s_vat_inode->i_size -
			map->s_type_specific.s_virtual.s_start_offset) >> 2;

lengthHeader is a fully attacker-controlled 16-bit value.  If it exceeds
the VAT inode size, the s_num_entries subtraction underflows to a huge
count, which defeats the "block > s_num_entries" bound in
udf_get_pblock_virt15(); and on the ICB-inline path that function reads

	((__le32 *)(iinfo->i_data + s_start_offset))[block]

so a large s_start_offset indexes past the inode's in-ICB data.  Mounting
a crafted UDF image with a virtual (VAT) partition then triggers an
out-of-bounds read.

Reject a VAT whose header length does not leave room for at least one
entry within the VAT inode.

Comment 1 Mauro Matteo Cascella 2026-07-29 18:26:19 UTC
Upstream advisory:
https://lore.kernel.org/linux-cve-announce/2026072512-CVE-2026-64323-0fd2@gregkh/T


Note You need to log in before you can comment on or make changes to this bug.