Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessHost crafted .zck metadata file
-
ExploitVictim tool fetches/parses header
-
ExecutionHeader ends inside compint, read_preface() over-reads heap buffer
-
ImpactApplication crashes (denial of service)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The target application must parse an attacker-supplied, crafted .zck file whose header is truncated so that it ends inside a compressed integer; this triggers read_preface() to pass the total header length instead of the remaining byte count to compint_to_size/compint_to_int, over-reading the heap header buffer. No authentication is required (PR:N), and no special non-default configuration is named - any build before 1.5.5 that processes untrusted .zck input is affected. Limiting factors: the victim application must actually ingest the malicious file (UI:P, passive - e.g. automatic metadata fetch), and the only confirmed outcome is a crash (VA:L) with no code execution, data disclosure, or integrity impact, so realistic risk is denial of service against the parsing process. |
| Impact | Signals are consistent and point to a moderate, availability-only issue rather than a top-priority emergency. The CVSS 4.0 base score is 5.3 (medium) with vector AV:N/AC:L/AT:N/PR:N/UI:P and impact confined to VA:L - a crash - while VC:N and VI:N confirm no confidentiality or integrity impact despite the CWE-125 out-of-bounds read; the sources state the over-read only crashes the application and do not describe any leak of data back to the attacker. The vuln.today decision label is 'this_month', not act_now or emergency, matching a DoS-class defect with an available patch. This is NOT in CISA KEV, so there is no confirmed active exploitation, and no EPSS score was supplied, so widespread-exploitation probability cannot be quantified from the input - this gap should be noted rather than assumed low or high. No confirmed working public exploit is provided; the fix commit ships a regression test that only detects the over-read under a memory sanitizer (valgrind/ASan). Net assessment: a real but bounded issue - remote, unauthenticated triggering is plausible because .zck files are typically fetched automatically as repository metadata, but the worst realistic outcome is a process crash, so treat it as routine patching within the normal cycle, not an urgent drop-everything fix. |
| Exploit ScenarioDerived | An attacker crafts a malicious .zck file whose header is truncated so it ends in the middle of a compressed integer and supplies it to a victim (for example as poisoned repository metadata fetched by a zchunk-based tool). When the victim's application calls read_preface() in src/lib/header.c, the total header length rather than the remaining byte count is passed to the compint parser, so parsing reads past the end of the heap header buffer and the process crashes. No confirmed working public exploit is provided; the patch includes a sanitizer-only regression test demonstrating the over-read, consistent with the AV:N/AC:L/UI:P vector. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
Heap out-of-bounds read in zchunk before 1.5.5 allows unauthenticated remote attackers to crash an application that parses a crafted .zck file, with user interaction required because the victim must ingest the malicious archive. The flaw is in read_preface() in src/lib/header.c, which passes the total header length instead of the remaining byte count to compressed-integer parsing, so a header truncated inside a compressed integer causes reads past the heap header buffer. Moderate severity (CVSS 5.3), availability-only impact; no public exploit identified at time of analysis, and vendor-released patch 1.5.5 is available.
RemediationAI
Vendor-released patch: 1.5.5. Upgrade to zchunk 1.5.5; the patch commit is https://github.com/zchunk/zchunk/commit/02b371a64bf98245df97315d07c684a0ca5ea1df and the release is https://github.com/zchunk/zchunk/releases/tag/1.5.5. The fix corrects read_preface() to pass remaining length (max_length - length) to compint parsing and adds a zero-length guard in compint.c. No separate vendor-documented workaround is provided in the available sources; until upgrading, restrict parsing of untrusted .zck files with vulnerable builds, with the trade-off that untrusted zchunk content cannot be processed. See also GitHub issue https://github.com/zchunk/zchunk/issues/119 and VulnCheck advisory https://www.vulncheck.com/advisories/zchunk-before-1.5.5-heap-out-of-bounds-read-via-read-preface.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
zchunk is a compressed file format and library used for deltas and repository metadata; its header contains a preface of compressed integers parsed by compint_to_size() and compint_to_int() in src/lib/compint.c. In read_preface() (src/lib/header.c, around line 167 in 1.5.4), the code passed max_length (the total header length) as the bound for each compint parse instead of max_length - length (remaining bytes after the current offset). When a crafted .zck header ends inside a compressed integer, the parser can continue reading past the heap-allocated header buffer, a CWE-125 out-of-bounds read. The upstream fix subtracts the consumed length at each call and adds a max_length == 0 guard in compint.c that sets a fatal 'Read past end of header' error; the commit also adds a regression test that runs under ASan or valgrind. CPE cpe:2.3:a:zchunk:zchunk:*:*:*:*:*:*:*:* covers versions before 1.5.5; EUVD lists affected range 0 <1.5.5. The assessed impact is a crash (availability only), not code execution or data disclosure.
Know when Zchunk gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Remotely supplied crafted file parsed without privileges (AV:N/AC:L/PR:N), requires the victim app to process the file (UI:R); impact is a crash only, so A:L with C:N/I:N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
zchunk before 1.5.5 contains a heap out-of-bounds read vulnerability in read_preface() in src/lib/header.c that passes the total header length instead of remaining bytes to compint parsing functions. Attackers can supply a crafted .zck file whose header ends inside a compressed integer, causing reads past the heap header buffer and crashing the application.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
EUVD-2026-110834
GHSA-xcf7-q4j8-4wvv
NVD
CVE.org
EPSS
Exploit-DB