Skip to content
OpenAdvisories
Medium · 5.4 CVE-2024-35197 EUVD-2024-1408GHSA-49jc-r788-3fc9RUSTSEC-2024-0351RUSTSEC-2024-0352RUSTSEC-2024-0353

gix refs and paths with reserved Windows device names access the devices

Published May 23, 2024 · Updated Aug 2, 2024 · Assigned by GitHub_M

Description

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.

Affected products

VendorProductAffectedFixed
Byron gitoxide < 0.36.0 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling cargo-audit 0.21.2-r1 —

Affected packages

EcosystemPackageAffectedFixedRecord
crates.io gitoxide < 0.36.0 0.36.0 GHSA-49jc-r788-3fc9
crates.io gitoxide-core < 0.38.0 0.38.0 GHSA-49jc-r788-3fc9
crates.io gix < 0.63.0 0.63.0 GHSA-49jc-r788-3fc9
crates.io gix-index < 0.33.0 0.33.0 GHSA-49jc-r788-3fc9
crates.io gix-index >= 0.0.0-0, < 0.33.0 0.33.0 RUSTSEC-2024-0352
crates.io gix-ref < 0.44.0 0.44.0 GHSA-49jc-r788-3fc9
crates.io gix-ref >= 0.0.0-0, < 0.44.0 0.44.0 RUSTSEC-2024-0351
crates.io gix-worktree < 0.34.0 0.34.0 GHSA-49jc-r788-3fc9
crates.io gix-worktree >= 0.0.0-0, < 0.34.0 0.34.0 RUSTSEC-2024-0353
crates.io gix-worktree-state < 0.11.0 0.11.0 GHSA-49jc-r788-3fc9

References