Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessVictim initiates clone/fetch from malicious remote
-
ExploitServer returns 12-byte pack header declaring version 3
-
ExecutionDecoder hits release assert_eq! expecting version 2
-
ImpactClient panics, clone/fetch aborted (DoS)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V16 - Security Logging and Error Handling Reachable assertion handling
|
| Exploitation Conditions | Exploitation requires the victim to initiate a git clone or fetch (the smart/pack transfer path) against an attacker-controlled or compromised remote using a gix-pack version before 0.75.0; the attacker simply responds with a crafted 12-byte pack header whose version field is 3. No authentication and no special target-side configuration are needed (PR:N). The principal limiting factor is the required user-initiated action (UI:P/UI:R): the attacker cannot reach a passive victim and must induce the client to pull from a malicious remote, which narrows realistic exposure to environments that fetch from untrusted sources (e.g., automated CI, dependency resolution, or mirrors). |
| Impact | This is a denial-of-service vulnerability (CWE-617, reachable assertion) with a provided CVSS 4.0 score of 7.1 (AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H). The network attack vector, low complexity, and no-privileges requirement make it easy to trigger, but impact is limited strictly to availability (VA:H; VC/VI:N) - there is no code execution, data disclosure, or integrity loss, only a client-side panic that aborts a clone or fetch. The signals are notably consistent rather than conflicting: no EPSS score, KEV status, or POC flag was supplied, so by the precision rules this is 'no public exploit identified at time of analysis.' A key mitigating factor is that exploitation is not server-side or self-propagating - it requires the victim to initiate a git operation against an attacker-controlled remote (reflected in UI:P/UI:R). This is therefore a genuine but bounded risk: a crash/abort of client tooling, not a high-urgency RCE. Priority should be moderate - patch in the normal cycle, elevated only where gix-pack-based clients fetch from untrusted or user-supplied remotes (e.g., CI pulling arbitrary dependencies). |
| Exploit ScenarioDerived | An attacker stands up or compromises a git remote and waits for (or lures) a victim to clone or fetch from it. When the gix-pack-based client requests pack data, the malicious server returns a 12-byte pack header declaring version 3; the decoder accepts the version but a release-enabled assert_eq! expecting version 2 fires, panicking the client and aborting the operation. No public exploit code was identified at time of analysis, though the trigger is a trivially crafted 12-byte header. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
Denial of service in gitoxide gix-pack before 0.75.0 allows a malicious remote to panic and abort a client's git clone or fetch by responding with a crafted 12-byte pack header declaring version 3, which trips a release-enabled assert_eq! in BytesToEntriesIter::new_from_header that expects version 2. The attack requires the victim to initiate the fetch from an attacker-controlled or compromised remote (UI:R), but no authentication is needed (PR:N); automated CI, dependency resolution, or mirror synchronization that pulls from untrusted sources is the primary exposure. No public exploit code or CISA KEV entry was identified at time of analysis, and the CVSS 4.0 score is 7.1 (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H per independent assessment).
RemediationAI
Vendor-released patch: upgrade gix-pack to version 0.75.0 or later. For Rust projects, update the gix-pack dependency in Cargo.toml and run cargo update; for applications embedding gitoxide, rebuild against the patched crate. If an immediate upgrade is not possible, restrict git clone/fetch operations to trusted remotes until the fix is deployed-this reduces exposure to attacker-controlled pack headers but relies on trust decisions and does not protect against compromised legitimate remotes. Avoid using gix-pack to fetch from untrusted or user-supplied repositories in automated CI pipelines, as those are the most likely attack vector. See the vendor advisory at https://github.com/GitoxideLabs/gitoxide/security/advisories/GHSA-633h-mqjc-8rwg and the VulnCheck advisory at https://www.vulncheck.com/advisories/gix-pack-before-0.75.0-reachable-assertion-dos-via-pack-version-3-header for details. No other workaround is provided by the vendor; the assertion is release-enabled, so debug-only flags are not a mitigation.
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
gix-pack is a Rust crate within the gitoxide project that implements reading and writing of Git packfiles, the compressed object format used during clone/fetch. A packfile begins with a 12-byte header: the four-byte signature "PACK", a four-byte version number, and a four-byte object count. The decoder in BytesToEntriesIter::new_from_header accepts version 3 during parsing but then hits a release-enabled assert_eq! that requires version 2. CWE-617 (Reachable Assertion) means the assertion is reachable from untrusted input, so an attacker who controls the remote repository can cause a panic and process abort. The CPE cpe:2.3:a:gitoxidelabs:gix-pack:*:*:*:*:*:*:*:* confirms all versions before 0.75.0 are affected. This is not a memory-safety issue but a robustness flaw that terminates the client process.
Know when Gix Pack 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:H/SC:N/SI:N/SA:N
Remote attacker needs no privileges but requires the victim to initiate a clone/fetch (UI:R); impact is a client panic affecting availability only (A:H), with no confidentiality or integrity effect.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
gitoxide gix-pack before 0.75.0 contains a reachable assertion in BytesToEntriesIter::new_from_header: the pack header decoder accepts version 3, but a release-enabled assert_eq! requires version 2. A malicious remote can send a 12-byte pack header declaring version 3 to panic the client and abort the clone or fetch.
Technical POC Analysis
Evidence basis: GitHub advisory GHSA-633h-mqjc-8rwg for gix-pack.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Gitoxide's gix-pack library for versions before 0.75.0 has a high-severity availability flaw that can crash automated Git clone or fetch operations when they interact with a malicious or compromised remote. Organizations relying on gix-pack in CI/CD, dependency resolution, or mirror synchronization are most exposed, as a single malformed response can abort jobs and require reruns or manual intervention. Because no vendor patch is currently available, leadership should treat this as an operational resilience risk and prioritize interim controls for any workflows that pull from untrusted sources.
No vendor patch is available; restrict all clone/fetch operations to trusted, allow-listed remotes; avoid automated pulls from untrusted or compromised sources; use an alternative Git client or library for external fetches where feasible; sandbox and run gix-pack processes with least privilege; monitor and alert on process crashes or unusual pack-header handling; pin and review dependency versions; upgrade to gix-pack 0.75.0 or later once a vendor-released patch is available.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Denial of service in the Gitoxide gix-pack crate before 0.75.0 allows a remote attacker operating a malicious Git remote
A denial-of-service condition in the Rust gitoxide `gix-pack` crate (all versions before 0.75.0) lets a malicious or com
EUVD-2026-97651
GHSA-wmw6-cp8f-c6q8
NVD
CVE.org
EPSS
Exploit-DB