CVE-2024-35197
gix refs and paths with reserved Windows device names access the devices
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.
Exploitation context
CISA SSVC decision
CISA Coordinator · SSVC 2.0.3 · Evaluated May 23, 2024 · Source: CVE List
Affected products and versions
8| Product | Source | Version range | Status |
|---|---|---|---|
gitoxideBrowse Byron / gitoxideDefault status: unknown | CVE List | < 0.36.0 | affected |
| Before 0.36.0 | affected | ||
gitoxideBrowse crates.io / gitoxide | GitHub Advisory | Before 0.36.0 · Fixed in 0.36.0 | affected |
gitoxide-coreBrowse crates.io / gitoxide-core | GitHub Advisory | Before 0.38.0 · Fixed in 0.38.0 | affected |
| GitHub Advisory | Before 0.63.0 · Fixed in 0.63.0 | affected | |
gix-indexBrowse crates.io / gix-index | GitHub Advisory | Before 0.33.0 · Fixed in 0.33.0 | affected |
gix-refBrowse crates.io / gix-ref | GitHub Advisory | Before 0.44.0 · Fixed in 0.44.0 | affected |
gix-worktreeBrowse crates.io / gix-worktree | GitHub Advisory | Before 0.34.0 · Fixed in 0.34.0 | affected |
gix-worktree-stateBrowse crates.io / gix-worktree-state | GitHub Advisory | Before 0.11.0 · Fixed in 0.11.0 | affected |