# CVE-2026-44309: Sigstore Gitsign improper signature verification via go-git re-encoding

Source: https://junglewise.ai/threats/cve-2026-44309-sigstore-gitsign-improper-signature-verification-via-go-git-re  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-05-15. Updated: 2026-05-16  
License: CC BY 4.0 with a link back

CVE-2026-44309 · Severity: medium · CVSS 5.3 · Published 2026-05-15

A vulnerability in gitsign, a tool used for signing and verifying Git commits, allows malformed commits to appear as if they have a valid signature when they actually contain different content than what Git displays. An attacker could craft a commit that passes verification but executes different code or contains different files than what the user sees. This undermines the trust in signed commits and could lead to the distribution of malicious code that appears to be endorsed by a trusted developer.

Technologies: [github.com/sigstore/gitsign (Go)](https://junglewise.ai/threats/technologies/github-com-sigstore-gitsign). Vendors: [Go](https://junglewise.ai/threats/vendors/go), [Sigstore](https://junglewise.ai/threats/vendors/sigstore).

## Quick answers

**Is CVE-2026-44309 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-44309 being exploited in the wild.

**How severe is CVE-2026-44309?** Medium severity, with a CVSS score of 5.3, published 15 May 2026.

**Which products and versions are affected?** github.com/sigstore/gitsign (Go) < 0.16.0, SEMVER:introduced=0,fixed=0.16.0; Sigstore Gitsign < 0.16.0.

**Is there a fix for CVE-2026-44309?** Yes. github.com/sigstore/gitsign (Go): upgrade to 0.16.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-44309 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-44309?** Check whether you run github.com/sigstore/gitsign (Go) or Sigstore Gitsign at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- github.com/sigstore/gitsign (Go): upgrade to 0.16.0 or later

  ```sh
  go get github.com/sigstore/gitsign@v0.16.0
  ```


## Technical details

The vulnerability exists in gitsign's verification logic where it re-encodes commit and tag objects using go-git's EncodeWithoutSignature before verification. Because go-git performs 'loose parsing,' it handles malformed objects with duplicate headers (like 'tree') differently than standard git-core. Specifically, git-core uses the first occurrence of a header while go-git uses the last. An attacker can craft a commit with two tree headers where the signature matches the second tree (seen by gitsign) but the actual content used by Git is the first tree. This allows for signature replay attacks and causes a mismatch between the verified signature and the actual repository content. The issue is fixed in version 0.16.0.

## Affected products

- sigstore gitsign < 0.16.0

## Identifiers

- CVE-2026-44309
- GHSA-7rmh-48mx-2vwc
- GO-2026-5233

## Timeline

- 2026-05-06: disclosed
- 2026-05-06: advisory
- 2026-05-08: other: CVE published

## References

- [https://api.github.com/users/bugbunny-research](https://api.github.com/users/bugbunny-research)
- [https://github.com/bugbunny-research](https://github.com/bugbunny-research)
- [https://api.github.com/users/bugbunny-research/gists%7B/gist_id%7D](https://api.github.com/users/bugbunny-research/gists%7B/gist_id%7D)
- [https://api.github.com/users/bugbunny-research/repos](https://api.github.com/users/bugbunny-research/repos)
- [https://avatars.githubusercontent.com/u/262839898?v=4](https://avatars.githubusercontent.com/u/262839898?v=4)
- [https://api.github.com/users/bugbunny-research/events%7B/privacy%7D](https://api.github.com/users/bugbunny-research/events%7B/privacy%7D)

## Related threats

- [Sigstore Gitsign signature verification bypass via empty certificate set](https://junglewise.ai/threats/cve-2026-44310-sigstore-gitsign-signature-verification-bypass-via-empty)
- [GO-2024-3252 - gitsign may use incorrect Rekor entries during verification in github.com/sigstore/gitsign](https://junglewise.ai/threats/cve-2024-51746-gitsign-may-use-incorrect-rekor-entries-during-verification)
- [GO-2023-2332 - Gitsign's Rekor public keys fetched from upstream API instead of local TUF client. in github.com/sigstore/gitsign](https://junglewise.ai/threats/cve-2023-47122-gitsign-s-rekor-public-keys-fetched-from-upstream-api-instead-of)
