udf: validate sparing table length as an entry count, not a byte count
Summary
| CVE | CVE-2026-64322 |
|---|---|
| State | PUBLISHED |
| Assigner | Linux |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-07-25 10:17:13 UTC |
| Updated | 2026-07-27 05:16:42 UTC |
| Description | In the Linux kernel, the following vulnerability has been resolved: udf: validate sparing table length as an entry count, not a byte count udf_load_sparable_map() accepts a sparing table when sizeof(*st) + le16_to_cpu(st->reallocationTableLen) > sb->s_blocksize is false, i.e. it treats reallocationTableLen as a number of BYTES that must fit in the block. But the table is walked as an array of 8-byte sparingEntry elements: for (i = 0; i < le16_to_cpu(st->reallocationTableLen); i++) { struct sparingEntry *entry = &st->mapEntry[i]; ... entry->origLocation ... } in udf_get_pblock_spar15() and udf_relocate_blocks(). A reallocationTableLen of N therefore passes the check whenever sizeof(*st) + N <= blocksize, yet the consumers index sizeof(*st) + N * sizeof(struct sparingEntry) bytes -- up to ~8x the block. On a crafted UDF image this is an out-of-bounds read in udf_get_pblock_spar15(); udf_relocate_blocks() additionally feeds the same length to udf_update_tag(), whose crc_itu_t() reads far past the block, and its memmove() through st->mapEntry[] is an out-of-bounds write. Validate reallocationTableLen as the entry count it is, with struct_size(). |
Risk And Classification
Primary CVSS: v3.1 7.8 HIGH from 416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS: 0.001640000 probability, percentile 0.060280000 (date 2026-07-29)
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Secondary | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 3.1 | CNA | DECLARED | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
CVSS v3.1 Breakdown
Attack Vector
LocalAttack Complexity
LowPrivileges Required
LowUser Interaction
NoneScope
UnchangedConfidentiality
HighIntegrity
HighAvailability
HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 eeb0f3e193f8e523d03e4c9e084f6b4875f50e8e git | Not specified |
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 0a9b79a951cfd70a9d31ca01ae2d08a20bb730e9 git | Not specified |
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 2d726135099313958f8975532a2e15322ff150ce git | Not specified |
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 7285276aa50d2839afb5957ffd491ad282dc8f72 git | Not specified |
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 2a219acb2ce674d99bbd1b7b35ed8c384dac7200 git | Not specified |
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 04f4599a9efb90992d072a814960edf0cd62805d git | Not specified |
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 7f7774b9da0ef17b87bfa238cf966ad0b3376150 git | Not specified |
| CNA | Linux | Linux | affected 1df2ae31c724e57be9d7ac00d78db8a5dabdd050 3ec997bd5508e9b25210b5bbec89031629cdb093 git | Not specified |
| CNA | Linux | Linux | affected e240873cb4a9fd18de60a817100a96fe670d4359 git | Not specified |
| CNA | Linux | Linux | affected 9ae30e324a96d0328a575329d7a95a09b3318601 git | Not specified |
| CNA | Linux | Linux | affected b1c5701ad6b3e5d21d16f65475651cfaaa41e7aa git | Not specified |
| CNA | Linux | Linux | affected a9f1af04f086656246f30354fb4564ce3b08c4a0 git | Not specified |
| CNA | Linux | Linux | affected 4836ee563d65bb492f907cbe267a5761b9693e4d git | Not specified |
| CNA | Linux | Linux | affected 2.6.32.60 2.6.33 semver | Not specified |
| CNA | Linux | Linux | affected 2.6.34.14 2.6.35 semver | Not specified |
| CNA | Linux | Linux | affected 3.0.37 3.1 semver | Not specified |
| CNA | Linux | Linux | affected 3.2.23 3.3 semver | Not specified |
| CNA | Linux | Linux | affected 3.4.5 3.5 semver | Not specified |
| CNA | Linux | Linux | affected 3.5 | Not specified |
| CNA | Linux | Linux | unaffected 3.5 semver | Not specified |
| CNA | Linux | Linux | unaffected 5.10.261 5.10.* semver | Not specified |
| CNA | Linux | Linux | unaffected 5.15.212 5.15.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.1.178 6.1.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.6.145 6.6.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.12.96 6.12.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.18.39 6.18.* semver | Not specified |
| CNA | Linux | Linux | unaffected 7.1.4 7.1.* semver | Not specified |
| CNA | Linux | Linux | unaffected 7.2-rc1 * original_commit_for_fix | Not specified |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| git.kernel.org/stable/c/2d726135099313958f8975532a2e15322ff150ce | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/7285276aa50d2839afb5957ffd491ad282dc8f72 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/2a219acb2ce674d99bbd1b7b35ed8c384dac7200 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/7f7774b9da0ef17b87bfa238cf966ad0b3376150 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/eeb0f3e193f8e523d03e4c9e084f6b4875f50e8e | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/04f4599a9efb90992d072a814960edf0cd62805d | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/0a9b79a951cfd70a9d31ca01ae2d08a20bb730e9 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/3ec997bd5508e9b25210b5bbec89031629cdb093 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.