Executive brief
sigstore is a code-signing solution used to verify the authenticity and integrity of software artifacts. A bug in its verification logic silently ignores certificate extension constraints (OIDs) that developers explicitly configure, allowing unauthorized certificates to pass validation as long as other checks pass. This bypasses intentional access controls, potentially allowing malicious or unauthorized signers to have their signatures accepted.
Technical details
The vulnerability is an improper cryptographic signature verification flaw (CWE-347) in sigstore's policy-construction path. The public verify API includes a certificateOIDs option documented to restrict verification to certificates carrying specific Object Identifiers (OIDs) in their extensions. However, the createVerificationPolicy() function only copies SAN and issuer settings into the internal verification policy and completely ignores the certificateOIDs parameter. As a result, any certificate bundle satisfying the remaining checks (issuer, identity) is accepted even if required OID extensions are absent or mismatched. This is reachable through supported, documented API usage. The vulnerability affects sigstore versions ≤4.1.0 and was fixed in version 4.1.1. No authentication or user interaction is required; exploitation is network-reachable.
Affected products
- sigstore sigstore-js ≤4.1.0
Timeline
- 2026-07-01: disclosed: Advisory published
- 2026-07-01: patched: Fix available in version 4.1.1