Description
gix-worktree-state before 0.33.0 (part of gitoxide) allows writing files outside the worktree on Windows. gix_worktree_state::checkout() follows an existing terminal symlink during non-exclusive (incremental) materialization (destination_is_initially_empty: false) when core.symlinks is true. If a symlink entry (mode 120000) is first checked out at a path P pointing outside the worktree, a subsequent incremental checkout of a regular-file entry (mode 100644) at the same path follows the existing reparse point and writes the blob content through the link, overwriting files outside the worktree.
Published: 2026-08-28
Score: 6 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Path traversal allowing arbitrary file overwrite
Action: Patch immediately
AI Analysis

Impact

gitoxide releases prior to 0.33.0 contain a flaw in the worktree state checkout logic; when core.symlinks is enabled, the library follows existing terminal symlinks in an incremental checkout. If a symlink points outside the intended worktree, a later normal file checkout at the same path will resolve through that symlink and write the file content to the external location, effectively allowing an attacker to overwrite files outside the repository. The vulnerability is rooted in incorrect handling of symlink resolution and is classified as CWE-59.

Affected Systems

The vulnerability affects GitoxideLabs' gitoxide library for all versions before 0.33.0 when used on Windows. Applications and tools that embed gitoxide and rely on its checkout functionality are potentially impacted. No other operating systems are explicitly mentioned in the description.

Risk and Exploitability

The CVSS score of 6.0 indicates a moderate severity. Exploitability data is not available, and the vulnerability is not listed in the CISA KEV catalog. The likely attack vector is local, inferred from the description that the flaw exists on Windows when the library performs a checkout and follows symlinks. An attacker would need the ability to influence the checkout process in Windows. No public exploits have been reported, so the risk remains primarily to systems that embed the vulnerable library and are exposed to untrusted data during a checkout operation.

Generated by OpenCVE AI on August 28, 2026 at 14:02 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to gitoxide version 0.33.0 or later to address the path traversal flaw.
  • If an upgrade is not possible immediately, disable symlink resolution by setting core.symlinks to false during repository checkouts to prevent following external links.
  • Validate or sanitize repository contents to ensure no symlinks pointing outside the worktree are introduced before performing checkout.

Generated by OpenCVE AI on August 28, 2026 at 14:02 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 31 Aug 2026 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 28 Aug 2026 11:30:00 +0000

Type Values Removed Values Added
Description gix-worktree-state before 0.33.0 (part of gitoxide) allows writing files outside the worktree on Windows. gix_worktree_state::checkout() follows an existing terminal symlink during non-exclusive (incremental) materialization (destination_is_initially_empty: false) when core.symlinks is true. If a symlink entry (mode 120000) is first checked out at a path P pointing outside the worktree, a subsequent incremental checkout of a regular-file entry (mode 100644) at the same path follows the existing reparse point and writes the blob content through the link, overwriting files outside the worktree.
Title gitoxide before 0.33.0 Path Traversal via symlink following
First Time appeared Gitoxidelabs
Gitoxidelabs gitoxide
Weaknesses CWE-59
CPEs cpe:2.3:a:gitoxidelabs:gitoxide:*:*:*:*:*:*:*:*
Vendors & Products Gitoxidelabs
Gitoxidelabs gitoxide
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N'}

cvssV4_0

{'score': 6, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

Gitoxidelabs Gitoxide
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-31T18:32:54.127Z

Reserved: 2026-08-28T10:37:51.949Z

Link: CVE-2026-82248

cve-icon Vulnrichment

Updated: 2026-08-31T18:32:48.600Z

cve-icon NVD

Status : Deferred

Published: 2026-08-28T12:16:36.650

Modified: 2026-08-31T19:17:16.290

Link: CVE-2026-82248

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-28T17:30:08Z

Weaknesses
  • CWE-59

    Improper Link Resolution Before File Access ('Link Following')