CVE-2026-64324
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
udf: validate free block extents against the partition length
udf_free_blocks() checks the logical block number and count against the partition length, but drops the extent offset from that final bound. A crafted extent can pass the guard while logicalBlockNum + offset + count points past the partition, which later indexes past the space bitmap array.
A single ftruncate(2) on a file backed by such an extent reliably panics the kernel. This is a local availability issue. On desktop systems where UDisks/polkit allows the active user to mount removable UDF media without CAP_SYS_ADMIN, an unprivileged local user can supply the crafted filesystem and trigger the panic by truncating a writable file on it. Systems that require root or CAP_SYS_ADMIN to mount the image have a higher prerequisite.
No confidentiality or integrity impact is claimed: the reproduced primitive is an out-of-bounds read of a bitmap pointer slot followed by a kernel panic.
Use the already computed logicalBlockNum + offset + count value for the partition length check. Also make load_block_bitmap() reject an out-of-range block group before indexing s_block_bitmap[], so corrupted callers cannot walk past the flexible array.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 934f815345c09c290a9b9a9cfdddc203ec2117e8 < fdd6229d2ae9914c1f25d1041db0f4f312a4fa76 | affected |
| Linux | Linux | 22cc7323f090646c8cfb5939e6f15bdc2ed3fd27 < b54aee5652fcd7c23a0904a4623ec462c3edc70c | affected |
| Linux | Linux | 7c4fa9ebfce69619d132fe703dc2e2cf62a13723 < 12af328d2ee8d68e81ba612246d0b54b22d23e1f | affected |
| Linux | Linux | 5cc9745e2ea11aef7d5c9a42bc36f6cd3e1b4cc3 < fb49099206c5c57af28a157249fa7bcb5518f99e | affected |
| Linux | Linux | 56e69e59751d20993f243fb7dd6991c4e522424c < 9442d75429b0c556292a7454fe888d54259f5240 | affected |
| Linux | Linux | 56e69e59751d20993f243fb7dd6991c4e522424c < 335202ab25b01fdd45889ff25eab70864686dea3 | affected |
| Linux | Linux | 56e69e59751d20993f243fb7dd6991c4e522424c < be87de7789a82a030a4896bc7683415ec9fa6f2b | affected |
| Linux | Linux | 56e69e59751d20993f243fb7dd6991c4e522424c < 5f0419457f89dce1a3f1c8e62a3adf2f39ab8168 | affected |
| Linux | Linux | 097420e48e30f51e8f4f650b5c946f5af63ec1a3 | affected |
| Linux | Linux | 5def895b42ef16a2da6402818cba8d7ec8ede1ef | affected |
| Linux | Linux | 05fb2bf477d3fe5421bd4cb699574737f52bd88b | affected |
| Linux | Linux | 5.10.224 < 5.10.261 | affected |
| Linux | Linux | 5.15.165 < 5.15.212 | affected |
| Linux | Linux | 6.1.105 < 6.1.178 | affected |
| Linux | Linux | 6.6.46 < 6.6.145 | affected |
| Linux | Linux | 4.19.320 < 4.20 | affected |
| Linux | Linux | 5.4.282 < 5.5 | affected |
| Linux | Linux | 6.10.5 < 6.11 | affected |
| Linux | Linux | 6.11 | affected |
| Linux | Linux | 0 < 6.11 | unaffected |
| Linux | Linux | 5.10.261 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.212 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.178 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.145 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.96 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.39 <= 6.18.* | unaffected |
| Linux | Linux | 7.1.4 <= 7.1.* | unaffected |
| Linux | Linux | 7.2-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/fdd6229d2ae9914c1f25d1041db0f4f312a4fa76
- https://git.kernel.org/stable/c/b54aee5652fcd7c23a0904a4623ec462c3edc70c
- https://git.kernel.org/stable/c/12af328d2ee8d68e81ba612246d0b54b22d23e1f
- https://git.kernel.org/stable/c/fb49099206c5c57af28a157249fa7bcb5518f99e
- https://git.kernel.org/stable/c/9442d75429b0c556292a7454fe888d54259f5240
- https://git.kernel.org/stable/c/335202ab25b01fdd45889ff25eab70864686dea3
- https://git.kernel.org/stable/c/be87de7789a82a030a4896bc7683415ec9fa6f2b
- https://git.kernel.org/stable/c/5f0419457f89dce1a3f1c8e62a3adf2f39ab8168
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.