CVE-2026-45991
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: fix partition descriptor append bookkeeping
Mounting a crafted UDF image with repeated partition descriptors can trigger a heap out-of-bounds write in part_descs_loc[].
handle_partition_descriptor() deduplicates entries by partition number, but appended slots never record partnum. As a result duplicate Partition Descriptors are appended repeatedly and num_part_descs keeps growing.
Once the table is full, the growth path still sizes the allocation from partnum even though inserts are indexed by num_part_descs. If partnum is already aligned to PART_DESC_ALLOC_STEP, ALIGN(partnum, step) can keep the old capacity and the next append writes past the end of the table.
Store partnum in the appended slot and size growth from the next append count so deduplication and capacity tracking follow the same model.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | ee4af50ca94f58afc3532662779b9cf80bbe27c8 < ad3c0c4400686f6f37b382aaa48fac2b9aefccbe | affected |
| Linux | Linux | ee4af50ca94f58afc3532662779b9cf80bbe27c8 < 68013a9bd4c01acd42073715f00e1a1992f089ee | affected |
| Linux | Linux | ee4af50ca94f58afc3532662779b9cf80bbe27c8 < e8474cfbac9ada2cdaa4eaedec22aadfa0f58559 | affected |
| Linux | Linux | ee4af50ca94f58afc3532662779b9cf80bbe27c8 < 058b451b1039f056d1362c4fec2229e522366ab0 | affected |
| Linux | Linux | ee4af50ca94f58afc3532662779b9cf80bbe27c8 < b5597bb83fc37b5b5da74a4453fa920b932cf39a | affected |
| Linux | Linux | ee4af50ca94f58afc3532662779b9cf80bbe27c8 < 08fa5d818e5bf53c7ca234d88ba334f32004e9b6 | affected |
| Linux | Linux | ee4af50ca94f58afc3532662779b9cf80bbe27c8 < 08841b06fa64d8edbd1a21ca6e613420c90cc4b8 | affected |
| Linux | Linux | 7f401f160a9c7a1ff84ba3cb9b2f636d1f5cfb6b | affected |
| Linux | Linux | 4.18.7 < 4.19 | affected |
| Linux | Linux | 4.19 | affected |
| Linux | Linux | 0 < 4.19 | unaffected |
| Linux | Linux | 5.10.259 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.210 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.176 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.140 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.88 <= 6.12.* | unaffected |
| Linux | Linux | 7.0.4 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/ad3c0c4400686f6f37b382aaa48fac2b9aefccbe
- https://git.kernel.org/stable/c/68013a9bd4c01acd42073715f00e1a1992f089ee
- https://git.kernel.org/stable/c/e8474cfbac9ada2cdaa4eaedec22aadfa0f58559
- https://git.kernel.org/stable/c/058b451b1039f056d1362c4fec2229e522366ab0
- https://git.kernel.org/stable/c/b5597bb83fc37b5b5da74a4453fa920b932cf39a
- https://git.kernel.org/stable/c/08fa5d818e5bf53c7ca234d88ba334f32004e9b6
- https://git.kernel.org/stable/c/08841b06fa64d8edbd1a21ca6e613420c90cc4b8
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.