CVE-2026-48758: sigstore-js signature type-binding failure in @sigstore/core

CVE-2026-48758 · Severity: medium · CVSS 5.4 · Published 2026-07-14

A vulnerability was identified in the sigstore-js library, which is used to verify the authenticity of software and digital signatures. Due to a technical error in how the library processes data types, an attacker could modify the description of a signed file without breaking the digital signature. This could allow a malicious actor to misrepresent the nature of a signed file while still appearing to have a valid, trusted signature.

Technologies: Sigstore-Js. Vendors: npm, Sigstore.

Quick answers

Is CVE-2026-48758 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-48758 being exploited in the wild.
How severe is CVE-2026-48758?
Medium severity, with a CVSS score of 5.4, published 14 July 2026.
Which products and versions are affected?
@sigstore/core (npm) <= 3.2.0, SEMVER:introduced=0,fixed=3.2.1; Sigstore-Js < 3.2.1.
Is there a fix for CVE-2026-48758?
Yes. @sigstore/core (npm): upgrade to 3.2.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-48758 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-48758?
Check whether you run @sigstore/core (npm) or Sigstore-Js at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • @sigstore/core (npm): upgrade to 3.2.1 or later
    npm install @sigstore/core@3.2.1

Technical details

The preAuthEncoding (PAE) function in @sigstore/core incorrectly used Node.js 'ascii' encoding when converting PAE strings to bytes. In Node.js, 'ascii' encoding truncates characters above U+00FF to their low byte, meaning multiple Unicode characters can produce the same byte output as standard ASCII characters. An attacker can exploit this by substituting characters in the payloadType with Unicode variants that result in identical encoded bytes, effectively bypassing the type-binding guarantees of the Dead Simple Signing Envelope (DSSE) specification. This allows the payload type to be altered after signing while the signature remains valid. The issue is fixed in version 3.2.1 by implementing proper UTF-8 encoding.

Affected products

  • sigstore sigstore-js < 3.2.1
  • sigstore @sigstore/core <= 3.2.0

Identifiers

  • CVE-2026-48758
  • GHSA-jfc7-64v2-mr8c

Timeline

  • 2026-05-22: patched: Fix merged into main branch and version 3.2.1 released.
  • 2026-05-27: advisory: GitHub Security Advisory published.
  • 2026-07-14: disclosed: CVE-2026-48758 published to NVD.

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.