{"api_version":"1","generated_at":"2026-10-24T10:55:50+00:00","cve":"CVE-2025-8291","urls":{"html":"https://cve.report/CVE-2025-8291","api":"https://cve.report/api/cve/CVE-2025-8291.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2025-8291","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2025-8291"},"summary":{"title":"ZIP64 End of Central Directory (EOCD) Locator record offset not checked","description":"The 'zipfile' module would not check the validity of the ZIP64 End of\nCentral Directory (EOCD) Locator record offset value would not be used to\nlocate the ZIP64 EOCD record, instead the ZIP64 EOCD record would be\nassumed to be the previous record in the ZIP archive. This could be abused\nto create ZIP archives that are handled differently by the 'zipfile' module\ncompared to other ZIP implementations.\n\n\nRemediation maintains this behavior, but checks that the offset specified\nin the ZIP64 EOCD Locator record matches the expected value.","state":"PUBLISHED","assigner":"PSF","published_at":"2025-10-07 18:16:00","updated_at":"2026-10-08 22:10:00"},"problem_types":["CWE-1285","CWE-1285 CWE-1285 Improper Validation of Specified Index, Position, or Offset in Input"],"metrics":[{"version":"3.1","source":"cna@python.org","type":"Secondary","score":"4.3","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N","baseScore":4.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"LOW","availabilityImpact":"NONE"}},{"version":"3.1","source":"CNA","type":"CVSS","score":"4.3","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N","data":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":4.3,"baseSeverity":"MEDIUM","confidentialityImpact":"NONE","integrityImpact":"LOW","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N","version":"3.1"}}],"references":[{"url":"https://github.com/python/cpython/commit/d11e69d6203080e3ec450446bfed0516727b85c3","name":"https://github.com/python/cpython/commit/d11e69d6203080e3ec450446bfed0516727b85c3","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/commit/76437ac248ad8ca44e9bf697b02b1e2241df2196","name":"https://github.com/python/cpython/commit/76437ac248ad8ca44e9bf697b02b1e2241df2196","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/pull/139702","name":"https://github.com/python/cpython/pull/139702","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/google/security-research/security/advisories/GHSA-hhv7-p4pg-wm6p","name":"https://github.com/google/security-research/security/advisories/GHSA-hhv7-p4pg-wm6p","refsource":"134c704f-9b21-4f2e-91b3-4a467353bcc0","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/psf/advisory-database/blob/main/advisories/python/PSF-2025-12.json","name":"https://github.com/psf/advisory-database/blob/main/advisories/python/PSF-2025-12.json","refsource":"134c704f-9b21-4f2e-91b3-4a467353bcc0","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/commit/bca11ae7d575d87ed93f5dd6a313be6246e3e388","name":"https://github.com/python/cpython/commit/bca11ae7d575d87ed93f5dd6a313be6246e3e388","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/commit/1d29afb0d6218aa8fb5e1e4a6133a4778d89bb46","name":"https://github.com/python/cpython/commit/1d29afb0d6218aa8fb5e1e4a6133a4778d89bb46","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/issues/139700","name":"https://github.com/python/cpython/issues/139700","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/commit/162997bb70e067668c039700141770687bc8f267","name":"https://github.com/python/cpython/commit/162997bb70e067668c039700141770687bc8f267","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/commit/333d4a6f4967d3ace91492a39ededbcf3faa76a6","name":"https://github.com/python/cpython/commit/333d4a6f4967d3ace91492a39ededbcf3faa76a6","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://mail.python.org/archives/list/security-announce@python.org/thread/QECOPWMTH4VPPJAXAH2BGTA4XADOP62G/","name":"https://mail.python.org/archives/list/security-announce@python.org/thread/QECOPWMTH4VPPJAXAH2BGTA4XADOP62G/","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/python/cpython/commit/8392b2f0d35678407d9ce7d95655a5b77de161b4","name":"https://github.com/python/cpython/commit/8392b2f0d35678407d9ce7d95655a5b77de161b4","refsource":"cna@python.org","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2025-8291","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-8291","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Python Software Foundation","product":"CPython","version":"affected 3.9.24 python","platforms":[]},{"source":"CNA","vendor":"Python Software Foundation","product":"CPython","version":"affected 3.10.0 3.10.19 python","platforms":[]},{"source":"CNA","vendor":"Python Software Foundation","product":"CPython","version":"affected 3.11.0 3.11.14 python","platforms":[]},{"source":"CNA","vendor":"Python Software Foundation","product":"CPython","version":"affected 3.12.0 3.12.12 python","platforms":[]},{"source":"CNA","vendor":"Python Software Foundation","product":"CPython","version":"affected 3.13.0 3.13.10 python","platforms":[]},{"source":"CNA","vendor":"Python Software Foundation","product":"CPython","version":"affected 3.14.0 3.14.1 python","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[{"source":"CNA","value":"Caleb Brown (Google)","lang":"en"},{"source":"CNA","value":"Serhiy Storchaka","lang":"en"},{"source":"CNA","value":"Seth Larson","lang":"en"}],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2025","cve_id":"8291","cve":"CVE-2025-8291","epss":"0.004660000","percentile":"0.384640000","score_date":"2026-10-10","updated_at":"2026-10-11 00:07:44"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"metrics":[{"other":{"content":{"id":"CVE-2025-8291","options":[{"Exploitation":"poc"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","timestamp":"2025-10-29T15:15:06.403842Z","version":"2.0.3"},"type":"ssvc"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-1285","description":"CWE-1285 Improper Validation of Specified Index, Position, or Offset in Input","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2025-10-29T15:15:27.172Z","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP"},"references":[{"tags":["vendor-advisory"],"url":"https://github.com/psf/advisory-database/blob/main/advisories/python/PSF-2025-12.json"},{"tags":["technical-description","exploit"],"url":"https://github.com/google/security-research/security/advisories/GHSA-hhv7-p4pg-wm6p"}],"title":"CISA ADP Vulnrichment"}],"cna":{"affected":[{"defaultStatus":"unaffected","product":"CPython","repo":"https://github.com/python/cpython","vendor":"Python Software Foundation","versions":[{"lessThan":"3.9.24","status":"affected","version":"0","versionType":"python"},{"lessThan":"3.10.19","status":"affected","version":"3.10.0","versionType":"python"},{"lessThan":"3.11.14","status":"affected","version":"3.11.0","versionType":"python"},{"lessThan":"3.12.12","status":"affected","version":"3.12.0","versionType":"python"},{"lessThan":"3.13.10","status":"affected","version":"3.13.0","versionType":"python"},{"lessThan":"3.14.1","status":"affected","version":"3.14.0","versionType":"python"}]}],"credits":[{"lang":"en","type":"reporter","value":"Caleb Brown (Google)"},{"lang":"en","type":"remediation developer","value":"Serhiy Storchaka"},{"lang":"en","type":"coordinator","value":"Seth Larson"}],"descriptions":[{"lang":"en","supportingMedia":[{"base64":false,"type":"text/html","value":"<p>The 'zipfile' module would not check the validity of the ZIP64 End of\nCentral Directory (EOCD) Locator record offset value would not be used to\nlocate the ZIP64 EOCD record, instead the ZIP64 EOCD record would be\nassumed to be the previous record in the ZIP archive. This could be abused\nto create ZIP archives that are handled differently by the 'zipfile' module\ncompared to other ZIP implementations.</p>\n<p>Remediation maintains this behavior, but checks that the offset specified\nin the ZIP64 EOCD Locator record matches the expected value.</p>"}],"value":"The 'zipfile' module would not check the validity of the ZIP64 End of\nCentral Directory (EOCD) Locator record offset value would not be used to\nlocate the ZIP64 EOCD record, instead the ZIP64 EOCD record would be\nassumed to be the previous record in the ZIP archive. This could be abused\nto create ZIP archives that are handled differently by the 'zipfile' module\ncompared to other ZIP implementations.\n\n\nRemediation maintains this behavior, but checks that the offset specified\nin the ZIP64 EOCD Locator record matches the expected value."}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":4.3,"baseSeverity":"MEDIUM","confidentialityImpact":"NONE","integrityImpact":"LOW","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N","version":"3.1"},"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}]}],"providerMetadata":{"dateUpdated":"2026-07-31T14:01:02.211Z","orgId":"28c92f92-d60d-412d-b760-e73465c3df22","shortName":"PSF"},"references":[{"tags":["patch"],"url":"https://github.com/python/cpython/pull/139702"},{"tags":["vendor-advisory"],"url":"https://mail.python.org/archives/list/security-announce@python.org/thread/QECOPWMTH4VPPJAXAH2BGTA4XADOP62G/"},{"tags":["issue-tracking"],"url":"https://github.com/python/cpython/issues/139700"},{"tags":["patch"],"url":"https://github.com/python/cpython/commit/162997bb70e067668c039700141770687bc8f267"},{"tags":["patch"],"url":"https://github.com/python/cpython/commit/333d4a6f4967d3ace91492a39ededbcf3faa76a6"},{"tags":["patch"],"url":"https://github.com/python/cpython/commit/1d29afb0d6218aa8fb5e1e4a6133a4778d89bb46"},{"tags":["patch"],"url":"https://github.com/python/cpython/commit/76437ac248ad8ca44e9bf697b02b1e2241df2196"},{"tags":["patch"],"url":"https://github.com/python/cpython/commit/8392b2f0d35678407d9ce7d95655a5b77de161b4"},{"tags":["patch"],"url":"https://github.com/python/cpython/commit/bca11ae7d575d87ed93f5dd6a313be6246e3e388"},{"tags":["patch"],"url":"https://github.com/python/cpython/commit/d11e69d6203080e3ec450446bfed0516727b85c3"}],"source":{"discovery":"UNKNOWN"},"title":"ZIP64 End of Central Directory (EOCD) Locator record offset not checked","x_generator":{"engine":"Vulnogram 0.2.0"}}},"cveMetadata":{"assignerOrgId":"28c92f92-d60d-412d-b760-e73465c3df22","assignerShortName":"PSF","cveId":"CVE-2025-8291","datePublished":"2025-10-07T18:10:05.908Z","dateReserved":"2025-07-28T21:05:06.237Z","dateUpdated":"2026-07-31T14:01:02.211Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2025-10-07 18:16:00","lastModifiedDate":"2026-10-08 22:10:00","problem_types":["CWE-1285","CWE-1285 CWE-1285 Improper Validation of Specified Index, Position, or Offset in Input"],"metrics":{"cvssMetricV31":[{"source":"cna@python.org","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N","baseScore":4.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"LOW","availabilityImpact":"NONE"},"exploitabilityScore":2.8,"impactScore":1.4}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2025-10-29T15:15:06.403842Z","id":"CVE-2025-8291","options":[{"exploitation":"poc"},{"automatable":"no"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2025","CveId":"8291","Ordinal":"1","Title":"ZIP64 End of Central Directory (EOCD) Locator record offset not ","CVE":"CVE-2025-8291","Year":"2025"},"notes":[{"CveYear":"2025","CveId":"8291","Ordinal":"1","NoteData":"The 'zipfile' module would not check the validity of the ZIP64 End of\nCentral Directory (EOCD) Locator record offset value would not be used to\nlocate the ZIP64 EOCD record, instead the ZIP64 EOCD record would be\nassumed to be the previous record in the ZIP archive. This could be abused\nto create ZIP archives that are handled differently by the 'zipfile' module\ncompared to other ZIP implementations.\n\n\nRemediation maintains this behavior, but checks that the offset specified\nin the ZIP64 EOCD Locator record matches the expected value.","Type":"Description","Title":"ZIP64 End of Central Directory (EOCD) Locator record offset not "}]}}}