Skip to main content

gitoxide CVE-2026-82249

| EUVDEUVD-2026-67701 LOW
Improper Encoding or Escaping of Output (CWE-116)
2026-08-28 VulnCheck GHSA-m78c-xpg9-p5ww
2.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Attacker crafts URL with embedded carriage return
  2. Delivery
    Developer initiates gitoxide clone or fetch
  3. Exploit
    gitoxide passes unsanitized URL to credential helper
  4. Execution
    Injected field overrides legitimate host in protocol stream
  5. Persist
    Credential helper returns credentials for attacker-specified host
  6. Impact
    Attacker collects harvested credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding for downstream
Exploitation Conditions

Exploitation requires all of the following to be true simultaneously: the target environment must use gitoxide (not standard git) as the Git client; a credential helper must be actively configured in the gitoxide or system Git configuration - environments with no credential helper are unexploitable; the attacker must be able to supply or influence a URL that gitoxide processes and forwards to the helper (e.g., via a malicious remote URL, submodule reference, or redirected fetch); and the user must initiate a gitoxide operation (clone, fetch, push) that triggers the credential lookup against the malicious URL (CVSS UI:P). Exploitation is further constrained by CVSS AC:H and AT:P, meaning opportunistic or automated attacks are not feasible without the specific environment alignment described above. The following limit exploitation in practice: most production CI/CD pipelines use standard git rather than gitoxide; credential helpers are an opt-in configuration; and the attack produces only low-confidence credential exposure, not arbitrary command execution.

Impact

The CVSS 4.0 score of 2.3 (AV:N/AC:H/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N) accurately characterises the constrained risk profile. While the attack originates over the network and requires no privileges on the attacker side (PR:N), it demands high attack complexity (AC:H), specific attack prerequisites (AT:P - credential helper must be configured), and user interaction (UI:P - the developer must initiate a git operation against the malicious URL). The confidentiality impact is limited to low (VC:L) because only the credentials for one mistargeted host are exposed; integrity and availability are unaffected. No EPSS data was included in the provided intelligence, and the vulnerability is absent from CISA KEV, confirming no verified active exploitation at time of analysis. No proof-of-concept was identified. The primary realistic threat is targeted credential theft against developers who clone or fetch from attacker-influenced sources while using gitoxide with a credential helper - opportunistic mass exploitation is unlikely given the complexity constraints.

Exploit ScenarioDerived

An attacker publishes a malicious Git repository - or compromises a submodule reference in a legitimate project - containing a remote URL with embedded carriage return characters in a position that gitoxide processes and relays to a credential helper. When a developer using an affected gitoxide version runs a clone or fetch operation, gitoxide constructs a credential helper request using the unsanitized URL, injecting the attacker-controlled host field into the protocol stream. The credential helper, interpreting the injected field as legitimate input, returns the developer's stored credentials for the attacker-specified host rather than the intended repository host, enabling the attacker to harvest those credentials passively. No public proof-of-concept was identified in the provided data, though the underlying carriage-return injection technique is well-documented in prior Git credential protocol research.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 28, 2026

Credential hijacking in gitoxide before 0.38.2 allows remote attackers to redirect credential helper lookups to attacker-specified hosts by embedding bare carriage return characters in URLs supplied to gitoxide operations. Because gitoxide fails to sanitize these control characters before constructing credential helper protocol messages, injected fields override the legitimate host value, causing helpers to return stored credentials for a host the attacker controls rather than the intended repository host. No public exploit has been identified and the vulnerability is not listed in CISA KEV; the CVSS 4.0 score of 2.3 reflects the high complexity, attack prerequisites, and user interaction requirements that substantially constrain real-world exploitability.

RemediationAI

Upgrade to gitoxide version 0.38.2 or later, which introduces validation that rejects bare carriage return characters in URL values before they are passed to credential helpers; this is the primary fix confirmed by the vendor advisory at https://github.com/GitoxideLabs/gitoxide/security/advisories/GHSA-6wr8-3w4h-j9wj. If an immediate upgrade is not feasible, the most effective compensating control is to remove or disable any configured credential helpers when using affected gitoxide versions with untrusted repositories - this eliminates the injection surface entirely but requires manual credential management for affected operations. A secondary control is to restrict gitoxide usage to repositories from trusted, access-controlled sources only, which prevents an attacker from supplying a malicious URL in the first place; however, this does not protect against compromised dependency sources or submodule references within otherwise-trusted repositories.

Affected VersionsENISA

gitoxide 0 <0.38.2

Affected Packages

euvd gitoxide fix: 0.38.2

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

gitoxide is a Rust-native reimplementation of the Git version control system (CPE: cpe:2.3:a:gitoxidelabs:gitoxide:*:*:*:*:*:*:*:*). Git credential helpers communicate via a line-oriented key-value protocol, where each field is terminated by a newline; a bare carriage return (\r) before that newline can, depending on the helper's parser, function as a field separator or inject a new field name. When gitoxide embeds a URL into this protocol stream without stripping or escaping \r characters, an attacker who controls the URL - through a malicious remote, submodule reference, or crafted redirect - can inject a forged 'host=' line that overrides the real one. CWE-116 (Improper Encoding or Escaping of Output) is the precise root cause: user-controlled data is embedded in a structured protocol message without applying the required escaping.

Know when Gitoxide 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

Vendor (VulnCheck) PRIMARY 2.3 LOW
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 3.1 LOW

Network-reachable via malicious URL but requires credential helper configuration and user-initiated git operation (UI:R, AC:H); only credentials exposed so C:L, no integrity or availability impact.

3.1 AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Aug 28, 2026 - 13:17 EUVD

DescriptionCVE.org

gitoxide before 0.38.2 fails to validate carriage return characters in URL values passed to credential helpers. Attackers can supply URLs containing bare carriage returns to inject additional helper protocol fields and cause credential helpers to return credentials for attacker-specified hosts instead of the requested URL.

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Low
niche Rust Git library, limited enterprise production adoption
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

12
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +12
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

CVE-2026-40034 HIGH POC
8.5 May 26

Command injection in the gitoxide Rust library (gix-submodule crate before 0.82.0, gix before 0.83.0) allows attackers c

CVE-2026-82253 HIGH
8.7 Aug 28

Path traversal and trust inheritance flaws in gitoxide's Rust crates gix (≤ 0.72.0) and gix-validate (≤ 0.10.0) allow an

CVE-2026-82252 HIGH
8.7 Aug 28

Symlink following in gitoxide before 0.52.1 and the gix crate before 0.83.0 allows an attacker who supplies a malicious

CVE-2026-82251 HIGH
8.7 Aug 28

Path traversal in gitoxide before 0.52.1 and gix before 0.83.0 allows an attacker who supplies a malicious git repositor

CVE-2026-82254 HIGH
8.7 Aug 28

Denial-of-service in gitoxide's gix-pack crate before 0.69.0 exposes Rust Git clients to remote process crashes during c

CVE-2026-82247 HIGH
8.7 Aug 28

Credential exfiltration in gitoxide's gix-transport crate allows a server controlling an HTTP redirect response to steal

CVE-2026-82255 HIGH
7.6 Aug 28

Credential theft in gitoxide's curl-based HTTP transport backend allows attackers to capture authentication tokens (pass

CVE-2026-82250 HIGH
7.1 Aug 28

Index-out-of-bounds panic in gitoxide's gix-packetline library (versions before 0.21.5) allows a malicious Git server to

CVE-2026-82248 MEDIUM
6.0 Aug 28

Arbitrary file write outside the worktree boundary in gix-worktree-state (part of gitoxide) before 0.33.0 on Windows ena

CVE-2026-91986 MEDIUM
5.3 Sep 15

Control-character injection in gitoxide's gix-transport crate before version 0.59.2 lets crafted git-daemon URLs smuggle

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy