Improper Verification of Cryptographic Signature Affecting github.com/sigstore/cosign/pkg/cosign package, versions >=2.0.0 <2.6.2>=3.0.0 <3.0.4


Severity

Recommended
0.0
medium
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.01% (1st percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-GOLANG-GITHUBCOMSIGSTORECOSIGNPKGCOSIGN-14912562
  • published11 Jan 2026
  • disclosed10 Jan 2026
  • credit1seal

Introduced: 10 Jan 2026

CVE-2026-22703  (opens in a new tab)
CWE-347  (opens in a new tab)

How to fix?

Upgrade github.com/sigstore/cosign/pkg/cosign to version 2.6.2, 3.0.4 or higher.

Overview

Affected versions of this package are vulnerable to Improper Verification of Cryptographic Signature via the VerifyBundle function in the verify.go file. An attacker can bypass artifact integrity checks by crafting a bundle that includes any arbitrary Rekor entry, allowing successful verification of artifacts that are not actually associated with the referenced digest, signature, or public key.

Note: This vulnerability affects only users who either provide a trusted root via --trusted-root or rely on one that is automatically fetched from a TUF repository, in cases where no trusted key material is supplied via SIGSTORE_REKOR_PUBLIC_KEY.

Workarounds

By manually enforcing trusted key material for the Rekor Transparency Log, you can mitigate bypass risks by ensuring the tool doesn’t depend solely on potentially mismatched or unverified bundle data.

PoC

echo blob > /tmp/blob
cosign sign-blob -y --new-bundle-format=false --bundle /tmp/bundle.1 --use-signing-config=false /tmp/blob
cosign sign-blob -y --new-bundle-format=false --bundle /tmp/bundle.2 --use-signing-config=false /tmp/blob
jq ".rekorBundle |= $(jq .rekorBundle /tmp/bundle.2)" /tmp/bundle.1 > /tmp/bundle.3
cosign verify-blob --bundle /tmp/bundle.3 --certificate-identity-regexp='.*' --certificate-oidc-issuer-regexp='.*' /tmp/blob

CVSS Base Scores

version 4.0
version 3.1