CVE-2026-100419: gitoxide gix-fs before 0.23.0 Worktree Escape via Symlink
gitoxide gix-fs before 0.23.0 contains a path validation bypass vulnerability in the worktree checkout mechanism that allows attackers to escape the worktree directory via symlink manipulation. During forced checkout with overwriteexisting enabled, attackers can craft malicious repository trees where symlink entries replace validated directories, causing subsequent files to be written outside the worktree through the symlink for code execution or file manipulation.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
gitoxide gix-fsto a version that resolves this vulnerability.Fixed in 0.23.0
Event History
Frequently Asked Questions
What conditions are required for exploitation?
An attacker needs to supply a malicious repository tree containing symlink entries that replace directories previously validated during checkout. Exploitation occurs during a forced checkout when overwrite_existing is enabled and user interaction is required.
Are normal checkout configurations affected?
The described issue is specifically triggered during forced checkout with overwrite_existing enabled. The provided information does not establish that checkouts without those conditions are affected.
What is the practical impact if exploitation succeeds?
Files can be written outside the intended worktree through an attacker-controlled symlink. This can enable code execution or manipulation of files outside the checkout directory.
Which versions need remediation?
Versions of gix-fs before 0.23.0 are affected. Upgrading to 0.23.0 or later addresses the affected version range described.