Read the docs
TI-2025-16506 Aliases CVE-2025-22620GHSA-fqmf-w4xh-33rh

gix-worktree-state nonexclusive checkout sets executable files world-writable

Priority MEDIUM 56CWE-281Published · Updated

Key facts

Attack vector
Local
Privileges required
Low
User interaction
Required
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
None · High · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.

Summary

gitoxide is an implementation of git written in Rust. Prior to 0.17.0, gix-worktree-state specifies 0777 permissions when checking out executable files, intending that the umask will restrict them appropriately. But one of the strategies it uses to set permissions is not subject to the umask. This causes files in a repository to be world-writable in some situations. This vulnerability is fixed in 0.17.0.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00372 31st percentileScored 2026-11-07
Fix Fixed gitoxide (GitoxideLabs): 0.17.0gix-worktree-state (crates.io): 0.17.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
GitoxideLabsgitoxidebefore 0.17.00.17.0Patch availableCNA
—gix-worktree-state (crates.io)before 0.17.00.17.0Patch availableGHSA-fqmf-w4xh-33rh
  • gitoxide VendorGitoxideLabs Affected before 0.17.0 Fixed in 0.17.0 Patch available CNA
  • gix-worktree-state (crates.io) Vendor— Affected before 0.17.0 Fixed in 0.17.0 Patch available GHSA-fqmf-w4xh-33rh

Remediation

  • Fix · CNA gitoxide (GitoxideLabs) Fixed in 0.17.0
  • Fix · GHSA-fqmf-w4xh-33rh gix-worktree-state (crates.io) Fixed in 0.17.0 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2025-22620
  2. 2026-10-03 Alias added: GHSA-fqmf-w4xh-33rh

References

  • TI-2026-56719 gitoxide before 0.69.0 Denial of Service via gix-pack CVSS 4.0HIGH 8.7
  • TI-2026-56718 gitoxide before 0.82.0 Path Traversal via Submodule Name Validation Bypass CVSS 4.0HIGH 8.7
  • TI-2026-56717 gitoxide before 0.52.1 Repository Boundary Violation via symlinked .gitmodules CVSS 4.0HIGH 8.7
  • TI-2026-56716 gitoxide before 0.52.1 Path Traversal via Submodule Name CVSS 4.0HIGH 8.7
  • TI-2026-56712 gitoxide before 0.37.1 HTTP Basic credential leak via URL parsing CVSS 4.0HIGH 8.7
  • TI-2026-32410 gitoxide: Symlink prefix-reuse allows worktree escape during checkout CVSS 3.1HIGH 7.8
See all 22 →

Sources