{"api_version":"1","generated_at":"2026-06-01T02:29:48+00:00","cve":"CVE-2026-45991","urls":{"html":"https://cve.report/CVE-2026-45991","api":"https://cve.report/api/cve/CVE-2026-45991.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-45991","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-45991"},"summary":{"title":"udf: fix partition descriptor append bookkeeping","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nudf: fix partition descriptor append bookkeeping\n\nMounting a crafted UDF image with repeated partition descriptors can\ntrigger a heap out-of-bounds write in part_descs_loc[].\n\nhandle_partition_descriptor() deduplicates entries by partition number,\nbut appended slots never record partnum. As a result duplicate\nPartition Descriptors are appended repeatedly and num_part_descs keeps\ngrowing.\n\nOnce the table is full, the growth path still sizes the allocation from\npartnum even though inserts are indexed by num_part_descs. If partnum is\nalready aligned to PART_DESC_ALLOC_STEP, ALIGN(partnum, step) can keep\nthe old capacity and the next append writes past the end of the table.\n\nStore partnum in the appended slot and size growth from the next append\ncount so deduplication and capacity tracking follow the same model.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-05-27 14:17:16","updated_at":"2026-05-30 11:17:17"},"problem_types":[],"metrics":[{"version":"3.1","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"references":[{"url":"https://git.kernel.org/stable/c/058b451b1039f056d1362c4fec2229e522366ab0","name":"https://git.kernel.org/stable/c/058b451b1039f056d1362c4fec2229e522366ab0","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/b5597bb83fc37b5b5da74a4453fa920b932cf39a","name":"https://git.kernel.org/stable/c/b5597bb83fc37b5b5da74a4453fa920b932cf39a","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/08fa5d818e5bf53c7ca234d88ba334f32004e9b6","name":"https://git.kernel.org/stable/c/08fa5d818e5bf53c7ca234d88ba334f32004e9b6","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/08841b06fa64d8edbd1a21ca6e613420c90cc4b8","name":"https://git.kernel.org/stable/c/08841b06fa64d8edbd1a21ca6e613420c90cc4b8","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-45991","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-45991","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected ee4af50ca94f58afc3532662779b9cf80bbe27c8 058b451b1039f056d1362c4fec2229e522366ab0 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected ee4af50ca94f58afc3532662779b9cf80bbe27c8 b5597bb83fc37b5b5da74a4453fa920b932cf39a git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected ee4af50ca94f58afc3532662779b9cf80bbe27c8 08fa5d818e5bf53c7ca234d88ba334f32004e9b6 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected ee4af50ca94f58afc3532662779b9cf80bbe27c8 08841b06fa64d8edbd1a21ca6e613420c90cc4b8 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 7f401f160a9c7a1ff84ba3cb9b2f636d1f5cfb6b git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 4.18.7 4.19 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 4.19","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.19 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.140 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.88 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0.4 7.0.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1-rc1 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"45991","cve":"CVE-2026-45991","epss":"0.000120000","percentile":"0.018210000","score_date":"2026-05-31","updated_at":"2026-06-01 00:08:18"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["fs/udf/super.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"058b451b1039f056d1362c4fec2229e522366ab0","status":"affected","version":"ee4af50ca94f58afc3532662779b9cf80bbe27c8","versionType":"git"},{"lessThan":"b5597bb83fc37b5b5da74a4453fa920b932cf39a","status":"affected","version":"ee4af50ca94f58afc3532662779b9cf80bbe27c8","versionType":"git"},{"lessThan":"08fa5d818e5bf53c7ca234d88ba334f32004e9b6","status":"affected","version":"ee4af50ca94f58afc3532662779b9cf80bbe27c8","versionType":"git"},{"lessThan":"08841b06fa64d8edbd1a21ca6e613420c90cc4b8","status":"affected","version":"ee4af50ca94f58afc3532662779b9cf80bbe27c8","versionType":"git"},{"status":"affected","version":"7f401f160a9c7a1ff84ba3cb9b2f636d1f5cfb6b","versionType":"git"},{"lessThan":"4.19","status":"affected","version":"4.18.7","versionType":"semver"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["fs/udf/super.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"4.19"},{"lessThan":"4.19","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.140","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.88","versionType":"semver"},{"lessThanOrEqual":"7.0.*","status":"unaffected","version":"7.0.4","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.1-rc1","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.140","versionStartIncluding":"4.19","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.88","versionStartIncluding":"4.19","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0.4","versionStartIncluding":"4.19","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.1-rc1","versionStartIncluding":"4.19","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.18.7","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nudf: fix partition descriptor append bookkeeping\n\nMounting a crafted UDF image with repeated partition descriptors can\ntrigger a heap out-of-bounds write in part_descs_loc[].\n\nhandle_partition_descriptor() deduplicates entries by partition number,\nbut appended slots never record partnum. As a result duplicate\nPartition Descriptors are appended repeatedly and num_part_descs keeps\ngrowing.\n\nOnce the table is full, the growth path still sizes the allocation from\npartnum even though inserts are indexed by num_part_descs. If partnum is\nalready aligned to PART_DESC_ALLOC_STEP, ALIGN(partnum, step) can keep\nthe old capacity and the next append writes past the end of the table.\n\nStore partnum in the appended slot and size growth from the next append\ncount so deduplication and capacity tracking follow the same model."}],"metrics":[{"cvssV3_1":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"providerMetadata":{"dateUpdated":"2026-05-30T10:46:29.809Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/058b451b1039f056d1362c4fec2229e522366ab0"},{"url":"https://git.kernel.org/stable/c/b5597bb83fc37b5b5da74a4453fa920b932cf39a"},{"url":"https://git.kernel.org/stable/c/08fa5d818e5bf53c7ca234d88ba334f32004e9b6"},{"url":"https://git.kernel.org/stable/c/08841b06fa64d8edbd1a21ca6e613420c90cc4b8"}],"title":"udf: fix partition descriptor append bookkeeping","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-45991","datePublished":"2026-05-27T12:55:43.449Z","dateReserved":"2026-05-13T15:03:33.091Z","dateUpdated":"2026-05-30T10:46:29.809Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-05-27 14:17:16","lastModifiedDate":"2026-05-30 11:17:17","problem_types":[],"metrics":{"cvssMetricV31":[{"source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":1.8,"impactScore":5.9}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"45991","Ordinal":"1","Title":"udf: fix partition descriptor append bookkeeping","CVE":"CVE-2026-45991","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"45991","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nudf: fix partition descriptor append bookkeeping\n\nMounting a crafted UDF image with repeated partition descriptors can\ntrigger a heap out-of-bounds write in part_descs_loc[].\n\nhandle_partition_descriptor() deduplicates entries by partition number,\nbut appended slots never record partnum. As a result duplicate\nPartition Descriptors are appended repeatedly and num_part_descs keeps\ngrowing.\n\nOnce the table is full, the growth path still sizes the allocation from\npartnum even though inserts are indexed by num_part_descs. If partnum is\nalready aligned to PART_DESC_ALLOC_STEP, ALIGN(partnum, step) can keep\nthe old capacity and the next append writes past the end of the table.\n\nStore partnum in the appended slot and size growth from the next append\ncount so deduplication and capacity tracking follow the same model.","Type":"Description","Title":"udf: fix partition descriptor append bookkeeping"}]}}}