Skip to main content

sigstore-js CVE-2026-48815

| EUVDEUVD-2026-44494 HIGH
Improper Verification of Cryptographic Signature (CWE-347)
2026-07-01 https://github.com/sigstore/sigstore-js GHSA-52v5-jr5w-gjxr
7.5
CVSS 3.1 · Vendor: https://github.com/sigstore/sigstore-js
Share

Severity by source

Vendor (https://github.com/sigstore/sigstore-js) PRIMARY
7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
vuln.today AI
5.9 MEDIUM

Integrity-only bypass (I:H, C/A:N); AC:H because it requires the non-default certificateOIDs config plus a certificate that still passes the enforced SAN/issuer checks; no privileges or interaction needed.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
SUSE
HIGH
qualitative
Red Hat
5.9 MEDIUM
qualitative

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

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

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

Lifecycle Timeline

2
CVE Published
Jul 01, 2026 - 20:19 cve.org
HIGH 7.5
Analysis Generated
Jul 01, 2026 - 20:17 vuln.today

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 3,636 npm packages depend on sigstore (101 direct, 3,536 indirect)

Ecosystem-wide dependent count for version 4.1.1.

DescriptionCVE.org

Summary

The documented certificateOIDs option in sigstore.verify() is accepted by the public API but discarded before verification, so required certificate extension OIDs are never checked.

Details

The public verify options include certificateOIDs and the documentation says those OID/value pairs “must be present in the certificate’s extension list.” The policy-construction path used by sigstore.verify() and createVerifier() only copies the SAN and issuer settings into the verification policy and completely ignores certificateOIDs.

As a result, callers can believe they are constraining verification to certificates carrying specific Fulcio or workload-identifying OIDs, while the actual verifier never receives those constraints. Any bundle that satisfies the remaining checks is accepted even if the required OID extensions are absent or mismatched.

This is reachable from supported usage through the documented certificateOIDs verify option.

PoC

javascript
const { createVerificationPolicy } = require("sigstore/dist/config");

const policy = createVerificationPolicy({
  certificateIssuer: "https://issuer.example",
  certificateIdentityEmail: "victim@example.com",
  certificateOIDs: {
    "1.2.3.4": "required-value",
  },
});

console.log("certificateOIDs" in policy, JSON.stringify(policy));
// false {"subjectAlternativeName":"victim@example.com","extensions":{"issuer":"https://issuer.example"}}

Impact

Applications that rely on certificateOIDs to restrict which certificates may sign artifacts receive no such protection. Unauthorized certificates that should be rejected on extension policy can be accepted as long as they satisfy the remaining verification checks.

AnalysisAI

Signature verification policy bypass in the sigstore npm package allows attackers to have unauthorized signing certificates accepted despite explicit OID-based restrictions. The documented certificateOIDs verify option - used by sigstore.verify() and createVerifier() to require specific Fulcio/workload-identity extension OIDs - is silently discarded during policy construction, so those extension constraints are never enforced while callers believe they are. Publicly available exploit code exists (a proof-of-concept in the advisory), but there is no evidence of active exploitation; EPSS/KEV not indicated in the source data.

Technical ContextAI

sigstore-js is the JavaScript/TypeScript implementation of the Sigstore artifact-signing ecosystem (Fulcio-issued short-lived certificates, Rekor transparency log, bundle verification) and is consumed by CI/CD and supply-chain tooling to verify signed software bundles. Verification is governed by a policy object built in sigstore/dist/config via createVerificationPolicy(). The root cause maps to CWE-347 (Improper Verification of Cryptographic Signature): the policy builder copies only the Subject Alternative Name (identity) and issuer settings into the effective policy and drops the certificateOIDs map entirely, so the underlying verifier is never handed the required extension-OID constraints. The PoC confirms this - the returned policy contains subjectAlternativeName and extensions.issuer but no certificateOIDs key. Affected package per CPE: pkg:npm/sigstore.

RemediationAI

Upgrade to the fixed release of the sigstore npm package as directed by advisory GHSA-52v5-jr5w-gjxr (https://github.com/sigstore/sigstore-js/security/advisories/GHSA-52v5-jr5w-gjxr); the exact patched version is not present in the provided data and should be taken from the advisory. Until patched, do not treat certificateOIDs as an enforced control - instead tighten the constraints that ARE honored by supplying strict certificateIssuer and certificateIdentityEmail/SAN values so verification is narrowed by identity and issuer rather than by the ignored OID map (trade-off: this cannot express arbitrary Fulcio/workload OID requirements, so use the most specific trusted identity and issuer you can). Additionally, add an application-side post-verification check that inspects the verified certificate's extensions for the required OID/value pairs before accepting a bundle (trade-off: requires custom code and access to the parsed certificate). Avoid relying on OID pinning as the sole authorization gate until the upgrade is confirmed.

CVE-2013-3900 MEDIUM
5.5 Dec 11

Why is Microsoft republishing a CVE from 2013? We are republishing CVE-2013-3900 in the Security Update Guide to update

CVE-2026-48558 CRITICAL POC
9.5 Jun 12

Authentication bypass in SimpleHelp 5.5.15 and prior (plus 6.0 pre-release builds) allows remote unauthenticated attacke

CVE-2025-59718 CRITICAL
9.8 Dec 09

Authentication bypass in Fortinet FortiOS, FortiProxy, and FortiSwitchManager allows unauthenticated remote attackers to

CVE-2025-25291 CRITICAL POC
9.3 Mar 12

ruby-saml provides security assertion markup language (SAML) single sign-on (SSO) for Ruby. Rated critical severity (CVS

CVE-2025-25292 CRITICAL POC
9.3 Mar 12

ruby-saml provides security assertion markup language (SAML) single sign-on (SSO) for Ruby. Rated critical severity (CVS

CVE-2022-25898 CRITICAL POC
9.8 Jul 01

The package jsrsasign before 10.5.25 are vulnerable to Improper Verification of Cryptographic Signature when JWS or JWT

CVE-2024-42004 CRITICAL POC
9.8 Dec 18

A library injection vulnerability exists in Microsoft Teams (work or school) 24046.2813.2770.1094 for macOS. Rated criti

CVE-2024-41145 CRITICAL POC
9.8 Dec 18

A library injection vulnerability exists in the WebView.app helper app of Microsoft Teams (work or school) 24046.2813.27

CVE-2024-41138 CRITICAL POC
9.8 Dec 18

A library injection vulnerability exists in the com.microsoft.teams2.modulehost.app helper app of Microsoft Teams (work

CVE-2024-45409 CRITICAL POC
9.8 Sep 10

The Ruby SAML library is for implementing the client side of a SAML authorization. Rated critical severity (CVSS 9.8), t

CVE-2022-35929 CRITICAL POC
9.8 Aug 04

cosign is a container signing and verification utility. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2022-31053 CRITICAL POC
9.8 Jun 13

Biscuit is an authentication and authorization token for microservices architectures. Rated critical severity (CVSS 9.8)

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise High Performance Computing 12 Not-Affected
SUSE Linux Enterprise High Performance Computing 15 SP7 Not-Affected
SUSE Linux Enterprise High Performance Computing 15 SP7 Not-Affected
SUSE Linux Enterprise Module for Web and Scripting 15 SP7 Not-Affected
SUSE Linux Enterprise Module for Web and Scripting 15 SP7 Not-Affected

Share

CVE-2026-48815 vulnerability details – vuln.today

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