CVE-2026-109351
Received Received - Intake

Memory Exhaustion in Gitoxide gix-pack

Vulnerability report for CVE-2026-109351, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-12

Last updated on: 2026-10-12

Assigner: VulnCheck

Description

Gitoxide gix-pack before 0.75.0 contains an uncontrolled memory allocation vulnerability that allows remote attackers to abort the process by supplying a huge pack-header object count. Malicious remotes can serve a 12-byte pack header claiming 0xFFFFFFFF objects, forcing Tree::with_capacity to reserve hundreds of gigabytes and crash clone or fetch operations.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-12
Last Modified
2026-10-12
Generated
2026-10-12
AI Q&A
2026-10-12
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
GitoxideLabs gix-pack 0

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-770 The product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability is a Denial of Service (DoS) flaw in Gitoxide's gix-pack library before version 0.75.0. It allows remote attackers to crash the process by sending a malicious pack header with an excessively large object count (0xFFFFFFFF). This forces the system to attempt reserving hundreds of gigabytes of memory during clone or fetch operations, leading to resource exhaustion and termination.

Detection Guidance

Monitor for failed clone or fetch operations with error messages indicating memory allocation failures or OOM conditions. Check logs for processes aborting during pack header parsing. Use network traffic analysis to detect unusually large pack headers (12-byte headers with 0xFFFFFFFF object counts).

  • Inspect system logs for crashes during git operations: grep -i 'out of memory\|alloc error\|oom' /var/log/syslog
  • Monitor network traffic for malformed pack headers: tcpdump -i any -A -s 0 'tcp port 9418 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
Impact Analysis

If you use Gitoxide's gix-pack library in versions before 0.75.0, an attacker could disrupt your Git operations by sending a specially crafted pack header. This could cause clone or fetch operations to fail, leading to service interruptions or downtime for your version control system.

Mitigation Strategies

Upgrade gix-pack to version 0.75.0 or later immediately. If upgrading is not possible, restrict network access to git repositories or implement deep packet inspection to block malicious pack headers. Monitor for ongoing attacks and terminate suspicious connections.

  • Update gix-pack: cargo update -p gix-pack --precise 0.75.0
  • Apply network-level mitigations: Use firewalls to block unexpected git traffic or implement rate limiting on git operations.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-109351. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart