Description
gitoxide (Rust crates gix <= 0.72.0 and gix-validate <= 0.10.0) contains a path traversal vulnerability. The submodule name validation function in gix-validate only checks the first occurrence of '..' via name.find(b".."), allowing crafted names such as 'a..b/../../../.git/' to bypass the check; additionally this validation is never invoked in production code paths. Combined with a trust inheritance flaw in Submodule::open(), where the parent repository's git_dir_trust (Trust::Full) is cloned and the ownership verification is skipped, an attacker can craft a malicious .gitmodules file so that a victim tool built on gitoxide reads arbitrary git repository configuration (including embedded credentials) with full trust, bypassing safe-directory protections. Fixed in gix 0.82.0 and gix-validate 0.11.1.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| GitoxideLabs | gitoxide | < 0.82.0, < 0.11.1 | 0.82.0 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | rust-gix | 0.83.0-1 | — |
| Debian 14 | rust-gix-validate | 0.11.1-1 | — |
| Debian 13 | rust-gix +1 | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | rust-gix +1 | No fix yet | — |
| Ubuntu 26.04 LTS | rust-gix +1 | No fix yet | — |
| Ubuntu 24.04 LTS | rust-gix-validate | No fix yet | — |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | cargo-audit | 0.22.2~git0.281452c-3.1 | openSUSE-SU-2026:11730-1 |
| openSUSE Tumbleweed | cargo-c | 0.10.25-1.1 | openSUSE-SU-2026:11741-1 |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2023 | cargo-c | 0.10.25-1.amzn2023.0.1 | ALAS2023-2026-3181 |
| Amazon Linux 2 | rust +11 | 1.97.0-1.amzn2.0.1 | ALAS2-2026-3808 |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | rust | 1.75.0-30 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| crates.io | gix | < 0.83.0 | 0.83.0 | GHSA-p3hw-mv63-rf9w |
| crates.io | gix-validate | < 0.11.1 | 0.11.1 | GHSA-p3hw-mv63-rf9w |
Advisories 4
- ALAS2-2026-3808 Important: rust security update (Amazon Linux 2) Amazon Linux Security Center (ALAS) · Nov 2, 2026
- ALAS2023-2026-3181 Important: rust-cargo-c security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · Nov 2, 2026
- openSUSE-SU-2026:11741-1 cargo-c-0.10.25-1.1 on GA media SUSE / openSUSE Security Updates · Sep 11, 2026
- openSUSE-SU-2026:11730-1 cargo-audit-0.22.2~git0.281452c-3.1 on GA media SUSE / openSUSE Security Updates · Sep 10, 2026
References
- GitHub Security Advisory (GHSA-p3hw-mv63-rf9w) vendor-advisory
- VulnCheck Advisory: gitoxide before 0.82.0 Path Traversal via Submodule Name Validation Bypass third-party-advisory