@sigstore/oci sends the registry Authorization header to a cross-host blob-upload Location (sigstore sigstore-js)

CVE-2026-118763
HIGH 7.4

At a glance

Source
NVD
EPSS
EPSS 0.30 % · percentile 23 ()
State
PUBLISHED
Published
Updated
Assigner
GitHub_M
NVD status
Deferred

Description

sigstore-js provides JavaScript libraries for interacting with Sigstore services. Prior to 0.7.2, packages/oci/src/registry.ts contains a RegistryClient.signIn() method that stores registry Authorization and Docker configuration headers as defaults on a shared HTTP client, while RegistryClient.uploadBlob() sends a fresh PUT to an absolute blob-upload Location supplied by the registry without checking that its origin or scheme matches the registry. A malicious or compromised registry can therefore direct a user pushing an artifact through attachArtifactToImage() to an attacker-controlled host and receive the registry bearer token, Basic credentials, or custom authentication headers. Redirect-time header stripping does not prevent the leak because the cross-host PUT is a new explicit request rather than a followed redirect. This is a residual of CVE-2026-59891, whose fix changed credential selection in credentials.ts but did not constrain where credentials are sent from registry.ts. Version 0.7.2 fixes the issue by separating registry credentials from client-wide defaults and sending them only to the registry origin.

Weaknesses (CWE)

  • CWE-522 — Insufficiently Protected Credentials

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.4CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:NGitHub_M
CVSS 3.1HIGH 7.4CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:NNVD · security-advisories@github.com (Secondary)

European references

Affected products

ProductVersions
sigstore · sigstore-jsaffected < 0.7.2

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD