Executive brief
sigstore-go is a software library used to verify the digital signatures and authenticity of software packages. A flaw in how the library counts security 'witnesses' allows a single compromised log server to trick the system into thinking multiple independent servers have verified a signature. This undermines the 'multi-log' security policy, potentially allowing an attacker who has compromised one log to bypass protections intended to require consensus from several different authorities.
Technical details
A vulnerability exists in sigstore-go's verification logic when configured with WithTransparencyLog(N>1) or WithSignedCertificateTimestamps(N>1). The library incorrectly counts verified witnesses per entry or per validation path instead of per unique log authority. Consequently, a single compromised transparency log can forge multiple entries with different indices, or a compromised Certificate Transparency (CT) log can provide multiple Signed Certificate Timestamps (SCTs) to satisfy the threshold N. This allows an attacker to defeat multi-log enforcement policies designed for defense-in-depth. The issue is resolved in version 1.2.0 by ensuring each distinct log identity counts as at most one witness.
Affected products
- sigstore sigstore-go < 1.2.0
Timeline
- 2026-05-27: patched: Fix merged into main branch via PR #633
- 2026-06-03: advisory: Release v1.2.0 published
- 2026-07-17: disclosed: CVE-2026-49834 published