CVE-2026-39395: V3 · Cosign's verify-blob-attestation reports false positive when payload parsing fails
Affects github.com/sigstore/cosign/v3Source GCVE Database
Not known to be exploited · CVSS 4.3 Medium : upgrade to 3.0.6 when convenient.
Data as of 12 Nov 2026, 19:19 UTC
- Patch
- Available – fixed in 3.0.6, 2.6.3
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:NExploitation evidence
Disclosed: evidence found.
CVE published 7 Apr 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 12 Nov 2026.
What to do
Upgrade github.com/sigstore/cosign/v3 to 3.0.6; github.com/sigstore/cosign/v2 to 2.6.3.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| Gogithub.com/sigstore/cosign/v3 | Affected
| Fixed in
|
| Gogithub.com/sigstore/cosign/v2 | Affected
| Fixed in
|
| Gogithub.com/sigstore/cosign | Affected
| Fixed in– |
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
## Description `cosign verify-blob-attestation` may erroneously report a "Verified OK" result for attestations with malformed payloads or mismatched predicate types. For old-format bundles and detached signatures, this was due to a logic flaw in the error handling of the predicate type validation. For new-format bundles, the predicate type validation was bypassed completely. ## Impact When `cosign verify-blob-attestation` is used without `--check-claims` set to `true`, an attestation that has a valid signature but a malformed or unparsable payload would be incorrectly validated. Additionally, systems relying on `--type <predicate type>` to reject attestations with mismatched types would be lead to trust the unexpected attestation type. ## Patches v3.0.6, v2.6.3 ## Workarounds Always set `--check-claims=true` for attestation verification.
References
- github.com/sigstore/cosign/security/advisories/GHSA-w6c6-c85g-mmv6 (opens in a new tab)
- nvd.nist.gov/vuln/detail/CVE-2026-39395 (opens in a new tab)
- github.com/sigstore/cosign/pull/4801 (opens in a new tab)
- github.com/sigstore/cosign/commit/f1ad3ee952313be5d74a49d67ba0aa8d0d5e351f (opens in a new tab)
- github.com/sigstore/cosign (opens in a new tab)
- github.com/sigstore/cosign/releases/tag/v2.6.3 (opens in a new tab)
- github.com/sigstore/cosign/releases/tag/v3.0.6 (opens in a new tab)