CVE-2025-31130 gitoxide does not detect SHA-1 collision attacks

Medium 6.8 Published Updated
Exploited in the wild
Not known
Fix
Available

What is CVE-2025-31130?

CVE-2025-31130 is a medium-severity vulnerability in GitoxideLabs gitoxide, published on 4 Apr 2025.

Official description

gitoxide is an implementation of git written in Rust. Before 0.42.0, gitoxide uses SHA-1 hash implementations without any collision detection, leaving it vulnerable to hash collision attacks. gitoxide uses the sha1_smol or sha1 crate, both of which implement standard SHA-1 without any mitigations for collision attacks. This means that two distinct Git objects with colliding SHA-1 hashes would break the Git object model and integrity checks when used with gitoxide. This vulnerability is fixed in 0.42.0.

Weakness: CWE-328

Which versions are affected by CVE-2025-31130?

40 open source packages ship an affected version, including gitoxide, gitoxide-core and gix.

PackageAffectedFixed in
gitoxide crates.ioAll versions0.42.0
gitoxide crates.ioAll versions0.42.0
gitoxide-core crates.ioAll versions0.46.0
gitoxide-core crates.ioAll versions0.46.0
gix crates.ioAll versions0.71.0
gix crates.ioAll versions0.71.0
34 more packages
gix-archive crates.ioAll versions0.20.0
gix-archive crates.ioAll versions0.20.0
gix-blame crates.ioAll versions0.1.0
gix-blame crates.ioAll versions0.1.0
gix-commitgraph crates.ioAll versions0.27.0
gix-commitgraph crates.ioAll versions0.27.0
gix-config crates.ioAll versions0.44.0
gix-config crates.ioAll versions0.44.0
gix-diff crates.ioAll versions0.51.0
gix-diff crates.ioAll versions0.51.0
gix-dir crates.ioAll versions0.13.0
gix-dir crates.ioAll versions0.13.0
gix-discover crates.ioAll versions0.39.0
gix-discover crates.ioAll versions0.39.0
gix-features crates.ioAll versions0.41.0
gix-features crates.ioAll versions0.41.0
gix-features crates.ioFrom 0.0.0-00.41.0
gix-filter crates.ioAll versions0.18.0
gix-filter crates.ioAll versions0.18.0
gix-fsck crates.ioAll versions0.10.0
gix-fsck crates.ioAll versions0.10.0
gix-index crates.ioAll versions0.39.0
gix-index crates.ioAll versions0.39.0
gix-merge crates.ioAll versions0.4.0
gix-merge crates.ioAll versions0.4.0
gix-negotiate crates.ioAll versions0.19.0
gix-negotiate crates.ioAll versions0.19.0
gix-object crates.ioAll versions0.48.0
gix-object crates.ioAll versions0.48.0
gix-odb crates.ioAll versions0.68.0
gix-odb crates.ioAll versions0.68.0
gix-pack crates.ioAll versions0.58.0
gix-pack crates.ioAll versions0.58.0
gix-protocol crates.ioAll versions0.49.0

How do I fix CVE-2025-31130?

Upgrade gitoxide to 0.42.0 or later.

Is CVE-2025-31130 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-31130 exists.

Sources

Also known as DEBIAN-CVE-2025-31130, GHSA-2frx-2596-x5r6, MINI-wj8m-7cjc-fx46, RUSTSEC-2025-0021, UBUNTU-CVE-2025-31130.

Is CVE-2025-31130 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free