Skip to main content

sigstore-java CVE-2026-48791

LOW
Improper Verification of Cryptographic Signature (CWE-347)
2026-06-30 https://github.com/sigstore/sigstore-java GHSA-qqw8-7c2r-jxch
2.0
CVSS 3.1 · Vendor: https://github.com/sigstore/sigstore-java
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Compromise target developer workstation locally
  2. Delivery
    Exfiltrate ephemeral Sigstore private key from signing session
  3. Exploit
    Construct forged bundle using expired Fulcio certificate
  4. Execution
    Present forged bundle to sigstore-java 2.0.0 verifier
  5. Persist
    Bypass integratedTime validity check
  6. Impact
    Artifact accepted as legitimately signed

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Signature verification
Exploitation Conditions

Exploitation requires the attacker to have already obtained local system access AND to have successfully exfiltrated the ephemeral private key used during a prior Sigstore signing operation - the vendor description explicitly names this as the required precondition. The verifying party must be running exactly dev.sigstore:sigstore-java version 2.0.0; older versions and 2.1.0 are not vulnerable. User interaction is required: the victim or an automated pipeline must invoke bundle verification against the forged artifact. No network-based or unauthenticated exploitation path exists. Limiting factors include: the need for prior system compromise, possession of the specific ephemeral key, and the narrow version window (2.0.0 only).

Impact

The CVSS 3.1 vector (AV:L/AC:L/PR:H/UI:R/S:U/C:N/I:L/A:N) yielding a score of 2.0 accurately reflects a very constrained attack surface: local-only access, high privilege (sufficient to exfiltrate a temporary signing key from a user's session), and required victim interaction (triggering bundle verification). There is no confirmed active exploitation and this CVE is not listed in the CISA KEV catalog. A proof-of-concept test bundle exists per the vendor advisory, but it demonstrates the bypass rather than enabling remote or unauthenticated exploitation. EPSS data is not provided in the source intelligence; given the narrow prerequisites, exploitation probability is expected to be extremely low. The integrity impact is limited and unscoped - only artifact signature verification is subverted, with no confidentiality or availability consequence. This vulnerability is low priority for the vast majority of organizations but warrants immediate attention in high-assurance software supply chain pipelines where the integrity of Sigstore-verified artifacts is a security control boundary.

Exploit ScenarioDerived

An attacker who has already compromised a developer workstation and exfiltrated the ephemeral private key generated during a prior Sigstore signing session crafts a forged bundle pairing that key with the original, now-expired Fulcio certificate. When a pipeline or developer invokes sigstore-cli verify (or the sigstore-java library directly) on the forged bundle using version 2.0.0, the missing integratedTime check causes verification to succeed silently - a result the vendor-provided PoC bundle demonstrates explicitly against the CLI tool.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 30, 2026

Certificate timestamp validation bypass in sigstore-java 2.0.0 allows an attacker who has already exfiltrated an ephemeral Sigstore signing key to reuse an expired Fulcio certificate, causing bundle verification to succeed when it should fail. PR #1008 erroneously removed the check that bounds a Rekor V1 log entry's integratedTime against the Fulcio certificate's validity window, a regression only present in the 2.0.0 release and fixed in 2.1.0. No public exploit identified at time of analysis beyond the vendor-provided proof-of-concept test bundle in sigstore-conformance; CVSS base score of 2.0 reflects the extremely narrow, high-privilege, local-only attack conditions required.

RemediationAI

Upgrade dev.sigstore:sigstore-java to version 2.1.0, which restores integratedTime verification against Fulcio certificate validity via PR #1185 and confirmed fix commits 4b7a49ebb1813f5b1ff113bcad63246358222d61 and b529335728fc5cfb574161b4b3c06859a8a2aa88. The vendor advisory is at https://github.com/sigstore/sigstore-java/security/advisories/GHSA-qqw8-7c2r-jxch. As an immediate compensating control for teams that cannot upgrade immediately, re-verify affected artifacts using an alternative current Sigstore client (e.g., cosign or sigstore-python), which do not carry this regression. Additionally, auditing Rekor transparency logs for signatures from potentially reused identities can surface unauthorized signing events. No configuration setting within sigstore-java 2.0.0 itself can disable or work around the missing check.

Affected Packages

maven dev.sigstore:sigstore-java fix: 2.1.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in maven

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

sigstore-java (Maven artifact pkg:maven/dev.sigstore:sigstore-java) is the Java client implementation of the Sigstore software supply-chain security framework, which pairs Fulcio (a short-lived certificate authority) with Rekor (an append-only transparency log) to bind signed artifacts to a specific identity at a specific point in time. The critical invariant Sigstore enforces is that the integratedTime field embedded in a Rekor V1 log entry must fall within the certificate's notBefore/notAfter validity window, proving the signing event occurred while the certificate was live. CWE-347 (Improper Verification of Cryptographic Signature) captures the root cause: by omitting this temporal cross-check, the library accepts bundles whose Rekor timestamps fall outside the certificate's validity period - undermining the time-binding guarantee that is central to Sigstore's security model. The fix in PR #1185 re-implements the check in conformance with the Sigstore verification specification.

Know when Java gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (https://github.com/sigstore/sigstore-java) PRIMARY 2.0 LOW
AV:L/AC:L/PR:H/UI:R/S:U/C:N/I:L/A:N
vuln.today AI 2.0 LOW

Exploitation demands prior local compromise and key exfiltration (PR:H, AV:L); integrity impact is limited to verification bypass with no scope change or confidentiality loss.

3.1 AV:L/AC:L/PR:H/UI:R/S:U/C:N/I:L/A:N
4.0 AV:L/AC:L/AT:N/PR:H/UI:A/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (https://github.com/sigstore/sigstore-java).

CVSS VectorVendor: https://github.com/sigstore/sigstore-java

Attack Vector
Local
Attack Complexity
Low
Privileges Required
High
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
None

DescriptionCVE.org

Summary

Regression: Verification of integratedTime from Rekor V1 Log Entry against Fuclio Certificate validity was missing

Details

  • PR #1008 erroneously removed verification of the integrated (Rekor entry) time) against the Fulcio certificate.
  • PR #1185 re-added this verification with enhancements that adhere to the Sigstore verification spec.
  • old sigstore-conformance test for this check was built incorrectly

PoC

A new bundle was added to sigstore-conformance to test this: sigstore-java:2.0.0 can be tested against it and shown to be unexpectedly passing Verify this bundle against a.txt

$ git clone git@github.com:sigstore/sigstore-java
$ git checkout v2.0.0
$ ./gradlew :sigstore-cli:build
$ tar -xf sigstore-cli/build/distributions/sigstore-cli-*-SNAPSHOT.tar --strip-components 1
$ ./bin/sigstore-cli verify --bundle=bundle.sigstore.json a.txt
# expect error but none

Impact

This vulnerability impacts only users verifying bundles with dev.sigstore:sigstore-java:2.0.0. Older versions are not affected, it is fixed in dev.sigstore:sigstore-java:2.1.0

A malicious actor may exploit this if they were able to access a users system and exfiltrate the temporary private key used during signing and then reuse an old fulcio certificate later without requiring direct access to the user's credentials.

Users may protect themselves by re-verifying their artifacts using the newest sigstore-java or another current sigstore client. Transparency logs may also be audited for unauthorized signatures for a suspected reused identity.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 3 maven packages depend on dev.sigstore:sigstore-java (2 direct, 1 indirect)

Ecosystem-wide dependent count for version 2.0.0.

Threat Intelligence Overview

EPSS Score
0.1%
Top 100% exploitable
Prevalence
Low
niche Java Sigstore client library, limited production footprint
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium
NVD CVE.org EPSS GHSA GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC Yes
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
Poc
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Low

Priority Score

30
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +10
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

Affected Products (CPE)CVE.org

pkg:maven/dev.sigstore:sigstore-java

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy