CVE-2025-8291: ZIP64 End of Central Directory (EOCD) Locator record offset not checked
The 'zipfile' module would not check the validity of the ZIP64 End of
Central Directory (EOCD) Locator record offset value would not be used to
locate the ZIP64 EOCD record, instead the ZIP64 EOCD record would be
assumed to be the previous record in the ZIP archive. This could be abused
to create ZIP archives that are handled differently by the 'zipfile' module
compared to other ZIP implementations.
Remediation maintains this behavior, but checks that the offset specified
in the ZIP64 EOCD Locator record matches the expected value.
Security readout for executives and security teams
Plain-English summary
Python’s ZIP handling could accept a specially crafted ZIP64 archive whose internal location metadata is inconsistent. Another ZIP tool may interpret the same archive differently, potentially allowing content to pass one validation stage but behave differently later. The documented impact is limited to integrity, not confidentiality or availability.
Executive priority
Prioritize remediation on internet-facing upload, scanning, package-processing, and document-ingestion workflows. For systems processing only trusted archives, handle through normal patching. Escalate where one component validates archives before another parser performs a security-sensitive action.
Technical view
CPython’s zipfile module assumed the ZIP64 End of Central Directory record immediately preceded its locator and did not validate the locator’s recorded offset. Crafted archives could therefore create parser differentials between zipfile and other ZIP implementations. The remediation preserves record-location behavior while requiring the recorded offset to match the expected value.
Likely exposure
Exposure is most likely where applications process attacker-supplied ZIP64 archives, especially pipelines using different ZIP parsers for validation and consumption. The bundle identifies CPython version entries but does not provide clear affected ranges or fixed release numbers, so deployments require comparison with Python’s advisory and patch history.
Exploitation context
The CVSS vector permits network delivery but requires user interaction. The bundle includes public Google security research tagged as exploit material, but provides no evidence of active exploitation, and the CVE is not identified as KEV. Practical risk depends on whether inconsistent archive interpretation crosses a security or trust boundary.
Researcher notes
CWE-1285 and CVSS 4.3 characterize an input-validation weakness with low integrity impact. The central issue is parser differential behavior, not a documented standalone code-execution primitive. Exact affected and fixed release boundaries remain unclear in the supplied data; verify them against the vendor advisory and referenced branch commits.
Mitigation direction
Apply a vendor-supported CPython release or backport containing the referenced offset-validation fix.
Consult Python’s security advisory for branch-specific remediation because fixed release numbers are absent from the bundle.
Temporarily restrict or quarantine untrusted ZIP64 archives in security-sensitive processing pipelines.
Avoid relying on one ZIP parser’s acceptance as approval for another component to consume the archive.
Validation and detection
Inventory services, tools, and automation using Python zipfile with externally supplied archives.
Record deployed Python versions and confirm the vendor fix or an equivalent backport is present.
Test that archives with inconsistent ZIP64 locator offsets are rejected safely after remediation.
Review multi-parser workflows for validation and extraction differences at trust boundaries.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-1285: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-1285 · source CWE mapping
Improper Validation of Specified Index, Position, or Offset in Input
Improper Validation of Specified Index, Position, or Offset in Input represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.