{"id":"GHSA-794x-2rpg-rfgr","aliases":[],"status":"published","title":"Jujutsu does not have SHA-1 collision detection","description":"### Summary\nJujutsu 0.28.0 and earlier rely on versions of gitoxide that use SHA-1 hash implementations without any collision detection, leaving them vulnerable to hash collision attacks.\n\n### Details\nThis is a result of the underlying [CVE-2025-31130 / GHSA-2frx-2596-x5r6](https://github.com/GitoxideLabs/gitoxide/security/advisories/GHSA-2frx-2596-x5r6) vulnerability in the gitoxide library Jujutsu uses to interact with Git repositories; see that advisory for technical details. This separate advisory is being issued due to the downstream impact on users of Jujutsu.\n\n### Impact\nAn attacker with the ability to mount a collision attack on SHA-1 like the [SHAttered](https://shattered.io/) or [SHA-1 is a Shambles](https://sha-mbles.github.io/) attacks could create two distinct Git objects with the same hash. This is becoming increasingly affordable for well‐resourced attackers, with the Shambles researchers in 2020 estimating $45k for a chosen‐prefix collision or $11k for a classical collision, and projecting less than $10k for a chosen‐prefix collision by 2025. The result could be used to disguise malicious repository contents, or potentially exploit assumptions in Jujutsu’s logic to cause further vulnerabilities.","severity":{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N","level":"medium","from":"ghsa"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-328"],"published":"2025-04-07T16:40:25Z","modified":"2025-04-07T16:40:26Z","fixes":[{"ecosystem":"crates.io","package":"jj-lib","fixed_in":["0.28.1"],"sources":["ghsa","osv"]},{"ecosystem":"crates.io","package":"jj-cli","fixed_in":["0.28.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"jj-lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.28.1"}]}]},{"source":"ghsa","ecosystem":"crates.io","package":"jj-cli","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.28.1"}]}]},{"source":"osv","ecosystem":"crates.io","package":"jj-lib","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.28.1"}]}]},{"source":"osv","ecosystem":"crates.io","package":"jj-cli","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.28.1"}]}]}],"references":[{"url":"https://github.com/jj-vcs/jj/security/advisories/GHSA-794x-2rpg-rfgr","tags":["web"]},{"url":"https://github.com/jj-vcs/jj/commit/350da7d013773377aec0d3a4bf4374d3c941460e","tags":["web"]},{"url":"https://github.com/advisories/GHSA-794x-2rpg-rfgr"},{"url":"https://github.com/jj-vcs/jj","tags":["package"]}],"sources":{"ghsa":[{"id":"GHSA-794x-2rpg-rfgr","title":"Jujutsu does not have SHA-1 collision detection","description":"### Summary\nJujutsu 0.28.0 and earlier rely on versions of gitoxide that use SHA-1 hash implementations without any collision detection, leaving them vulnerable to hash collision attacks.\n\n### Details\nThis is a result of the underlying [CVE-2025-31130 / GHSA-2frx-2596-x5r6](https://github.com/GitoxideLabs/gitoxide/security/advisories/GHSA-2frx-2596-x5r6) vulnerability in the gitoxide library Jujutsu uses to interact with Git repositories; see that advisory for technical details. This separate advisory is being issued due to the downstream impact on users of Jujutsu.\n\n### Impact\nAn attacker with the ability to mount a collision attack on SHA-1 like the [SHAttered](https://shattered.io/) or [SHA-1 is a Shambles](https://sha-mbles.github.io/) attacks could create two distinct Git objects with the same hash. This is becoming increasingly affordable for well‐resourced attackers, with the Shambles researchers in 2020 estimating $45k for a chosen‐prefix collision or $11k for a classical collision, and projecting less than $10k for a chosen‐prefix collision by 2025. The result could be used to disguise malicious repository contents, or potentially exploit assumptions in Jujutsu’s logic to cause further vulnerabilities.","status":"published","published":"2025-04-07T16:40:25Z","modified":"2025-04-07T16:40:26Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-328"],"updated_at":"2026-11-02T14:38:38.344711Z"}],"osv":[{"id":"GHSA-794x-2rpg-rfgr","title":"Jujutsu does not have SHA-1 collision detection","description":"### Summary\nJujutsu 0.28.0 and earlier rely on versions of gitoxide that use SHA-1 hash implementations without any collision detection, leaving them vulnerable to hash collision attacks.\n\n### Details\nThis is a result of the underlying [CVE-2025-31130 / GHSA-2frx-2596-x5r6](https://github.com/GitoxideLabs/gitoxide/security/advisories/GHSA-2frx-2596-x5r6) vulnerability in the gitoxide library Jujutsu uses to interact with Git repositories; see that advisory for technical details. This separate advisory is being issued due to the downstream impact on users of Jujutsu.\n\n### Impact\nAn attacker with the ability to mount a collision attack on SHA-1 like the [SHAttered](https://shattered.io/) or [SHA-1 is a Shambles](https://sha-mbles.github.io/) attacks could create two distinct Git objects with the same hash. This is becoming increasingly affordable for well‐resourced attackers, with the Shambles researchers in 2020 estimating $45k for a chosen‐prefix collision or $11k for a classical collision, and projecting less than $10k for a chosen‐prefix collision by 2025. The result could be used to disguise malicious repository contents, or potentially exploit assumptions in Jujutsu’s logic to cause further vulnerabilities.","status":"published","published":"2025-04-07T16:40:25Z","modified":"2025-04-07T16:40:25Z","cvss":[{"version":"3.1","score":6.8,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-328"],"updated_at":"2026-11-02T15:46:40.657155Z"}]}}
