CVE-2026-44309 gitsign verify accepts signatures over go-git-normalized bytes, enabling trust confusion on malformed commits
Attackers can craft malformed commits that pass gitsign verification but resolve to different content in git-core, bypassing signature integrity checks.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2026-44309?
CVE-2026-44309 is a medium-severity vulnerability in sigstore gitsign, published on 15 May 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
Gitsign is a keyless Sigstore to signing tool for Git commits with your a GitHub / OIDC identity. Prior to 0.16.0, gitsign verify and gitsign verify-tag re-encode commit/tag objects through go-git's EncodeWithoutSignature before checking the signature, instead of verifying against the raw git object bytes. For malformed objects with duplicate tree headers, git-core and go-git parse different trees: git-core uses the first, go-git uses the second. A signature crafted over the go-git-normalized form (second tree) passes gitsign verify while git-core resolves the commit to a completely different tree. This breaks the invariant that a verified signature, the commit semantics git-core presents to users, and the object hash logged in Rekor all refer to the same content. This vulnerability is fixed in 0.16.0.
Which versions are affected by CVE-2026-44309?
3 open source packages ship an affected version, including github.com/sigstore/gitsign.
| Package | Affected | Fixed in |
|---|---|---|
github.com/sigstore/gitsign Go | All versions | 0.16.0 |
github.com/sigstore/gitsign Go | All versions | 0.16.0 |
github.com/sigstore/gitsign Go | All versions | 0.16.0 |
How do I fix CVE-2026-44309?
Upgrade github.com/sigstore/gitsign to 0.16.0 or later.
Is CVE-2026-44309 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-44309 exists.
Sources
Also known as DEBIAN-CVE-2026-44309, GHSA-7rmh-48mx-2vwc, GO-2026-5233, UBUNTU-CVE-2026-44309.