CVE-2024-35197 json
gix refs and paths with reserved Windows device names access the devices
published 2024-05-22 2 y ago modified 2026-11-09 3 h ago also EUVD-2024-1408 , GHSA-49jc-r788-3fc9 , RUSTSEC-2024-0351 , RUSTSEC-2024-0352 , RUSTSEC-2024-0353
- cvss
- 5.4
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 39%
- public exploits
- 0
- none known
Summary
gitoxide is a pure Rust implementation of Git. On Windows, fetching refs that clash with legacy device names reads from the devices, and checking out paths that clash with such names writes arbitrary data to the devices. This allows a repository, when cloned, to cause indefinite blocking or the production of arbitrary message that appear to have come from the application, and potentially other harmful effects under limited circumstances. If Windows is not used, or untrusted repositories are not cloned or otherwise used, then there is no impact. A minor degradation in availability may also be possible, such as with a very large file named `CON`, though the user could interrupt the application.
Patch / fix
- crates.io gix-worktree-state 0.11.0
- crates.io gitoxide 0.36.0
- crates.io gix-worktree 0.34.0
- crates.io gitoxide-core 0.38.0
- crates.io gix 0.63.0
- crates.io gix-ref 0.44.0
- crates.io gix-index 0.33.0
- Byron gitoxide 0.36.0
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
0.45% chance of exploitation in the next 30 days, higher than 39% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L |
| GitHub | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L |
| OSV | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L |
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-worktree | <0.34.0 >=0.0.0-0, <0.34.0 |
0.34.0 |
| crates.io | gitoxide-core | <0.38.0 |
0.38.0 |
| crates.io | gix | <0.63.0 |
0.63.0 |
| crates.io | gix-ref | <0.44.0 >=0.0.0-0, <0.44.0 |
0.44.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-67 Improper Handling of Windows Device Names
References
-
github.com
/GitoxideLabs/gitoxide/commit/79dce79c62f6072aa2653780d590dc3993dfa401
web
-
github.com
/Byron/gitoxide/security/advisories/GHSA-49jc-r788-3fc9
web
-
nvd.nist.gov
/vuln/detail/CVE-2024-35197
advisory, web
-
github.com
/Byron/gitoxide
package
-
rustsec.org
/advisories/RUSTSEC-2024-0351.html
web, advisory
-
rustsec.org
/advisories/RUSTSEC-2024-0352.html
web, advisory
-
rustsec.org
/advisories/RUSTSEC-2024-0353.html
web, advisory
-
crates.io
/crates/gix-ref
package
-
github.com
/advisories/GHSA-49jc-r788-3fc9
advisory
-
crates.io
/crates/gix-index
package
-
crates.io
/crates/gix-worktree
package
Sources
- CVE List CVE-2024-35197
- GitHub Advisory GHSA-49jc-r788-3fc9
- NVD CVE-2024-35197
- OSV RUSTSEC-2024-0351
- OSV RUSTSEC-2024-0352
- OSV RUSTSEC-2024-0353
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.