Skip to content
Fencer Vulns
high 8.8

CVE-2024-35186 json

gix traversal outside working tree enables arbitrary code execution

published 2024-05-22 2 y ago modified 2026-11-09 2 h ago also EUVD-2024-1506 , GHSA-7w47-3wg8-547c , RUSTSEC-2024-0348 , RUSTSEC-2024-0349 , RUSTSEC-2024-0350

cvss
8.8
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.8%
EPSS 0.8% chance of exploitation in 30 days, percentile 57%
public exploits
0
none known

Summary

gitoxide is a pure Rust implementation of Git. During checkout, `gix-worktree-state` does not verify that paths point to locations in the working tree. A specially crafted repository can, when cloned, place new files anywhere writable by the application. This vulnerability leads to a major loss of confidentiality, integrity, and availability, but creating files outside a working tree without attempting to execute code can directly impact integrity as well. This vulnerability has been patched in version(s) 0.36.0.

Patch / fix

  • crates.io gix-worktree-state 0.11.0
  • crates.io gitoxide 0.36.0
  • crates.io gix-fs 0.11.0
  • crates.io gix-worktree 0.34.0
  • crates.io gix 0.63.0
  • crates.io gitoxide-core 0.38.0
  • crates.io gix-index 0.33.0
  • Byron gitoxide 0.36.0
  • rust-gix-fs Debian 14, Debian 13 0.11.3-1
  • rust-gix-index Debian 14, Debian 13 0.33.1-1
  • rust-gix-worktree Debian 14, Debian 13 0.34.1-1

debian advisories DEBIAN-CVE-2024-35186

  • gitoxide openSUSE Tumbleweed 0.36.0-1.1

opensuse advisories openSUSE-SU-2024:13987-1

CISA SSVC

Exploitation
Proof of concept is public
Automatable
no
Technical impact
total
Assessed
2 y ago

Exploit prediction

0.82% chance of exploitation in the next 30 days, higher than 57% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CNA 3.1 8.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
GitHub 3.1 8.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
OSV 3.1 8.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

Affected packages

ecosystem package affected fixed in
crates.io gix-worktree-state
<0.11.0
0.11.0
crates.io gitoxide
<0.36.0
0.36.0
crates.io gix-fs
<0.11.0
>=0.0.0-0, <0.11.0
0.11.0
crates.io gix-worktree
<0.34.0
>=0.0.0-0, <0.34.0
0.34.0
crates.io gix
<0.63.0
0.63.0
crates.io gitoxide-core
<0.38.0
0.38.0
crates.io gix-index
<0.33.0
>=0.0.0-0, <0.33.0
0.33.0

Affected products

  • Byron gitoxide

Classification

Weakness
  • CWE-23 Relative Path Traversal
  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.