CVE intelligence and bounded remediation

CVE-2026-44471 — gitoxide is an implementation of git written in Rust

High CVSS 7.8

gitoxide is an implementation of git written in Rust. Prior to 0.21.1, a malicious tree can be constructed that will, when checked out with gitoxide, permit writing an attacker-controlled symlink into any existing directory the user has write access to. During checkout, all symlink index entries are deferred and created after regular files using a single shared gix_worktree::Stack. Internally, this uses a gix_fs::Stack. gix_fs::Stack::make_relative_path_current() caches validated path prefixes: when the previously-processed leaf component exactly matches the leading component(s) of the next path, the leaf-to-directory transition at gix-fs/src/stack.rs invokes only delegate.push_directory(), never delegate.push(). In gix_worktree::stack::delegate::StackDelegate, when the state member is State::CreateDirectoryAndAttributesStack, Attributes::push_directory() only loads attributes (from the ODB, in the clone case), and does not perform any other checks. The on-disk symlink_metadata() check and unlink-on-collision live in StackDelegate::push()'s invocation of create_leading_directory(), which is therefore bypassed for the cached prefix. The final symlink is created with plain std::os…

Severity
High
CVSS
7.8 (3.1)
Published
2026-05-13
CISA KEV
Not currently listed
Ecosystem
software/application
Weaknesses
CWE-59

Affected products

  • gitoxidelabs / gix-fs

Matched remediation archetype

Path traversal, unsafe upload, and file handling

This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.

Check exposure

  • Trace untrusted filenames, archive entries, URLs, and path segments into read, write, include, extraction, and upload operations.
  • Identify filesystem roots, mount permissions, symbolic-link behavior, archive handling, and whether uploaded content is web-accessible or executable.
  • Review canonicalization and containment checks across supported operating systems and storage backends.

Remediate safely

  • Generate server-side storage identifiers and resolve paths beneath a fixed root using filesystem-aware containment checks.
  • Reject absolute, parent-relative, alternate-separator, device, link, and archive entries that escape the intended root.
  • Store uploads outside executable or served paths, validate type and size, and use private atomic temporary files.

Authoritative sources

Complete CVE record and remediation plan

The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.