@sigstore/oci leaks registry credentials to cross-host upload URLs
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Information disclosure
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-522.
Summary
sigstore-js and the @sigstore/oci npm package before 0.7.2 send registry Authorization and Docker configuration headers to an absolute blob-upload Location supplied by the registry without checking that it matches the registry's origin (CWE-522). A malicious or compromised registry can direct a user pushing an artifact through attachArtifactToImage() to an attacker-controlled host, which receives the registry bearer token, Basic credentials, or custom authentication headers.
Written with Claude Haiku 5.5 from the sources below · 2026-11-07
Description from the CNA
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| sigstore | sigstore-js | before 0.7.2 | 0.7.2 | Patch available | CNA |
| — | @sigstore/oci (npm) | before 0.7.2 | 0.7.2 | Patch available | GHSA-j63v-mwhm-56jx |
- sigstore-js Vendorsigstore Affected before 0.7.2 Fixed in 0.7.2 Patch available CNA
- @sigstore/oci (npm) Vendor— Affected before 0.7.2 Fixed in 0.7.2 Patch available GHSA-j63v-mwhm-56jx
Remediation
Update sigstore-js to version 0.7.2 and @sigstore/oci to version 0.7.2, which send registry credentials only to the registry origin.
Written with Claude Haiku 5.5 from the sources below · 2026-11-07
- Fix · CNA sigstore-js (sigstore) Fixed in 0.7.2
- Fix · GHSA-j63v-mwhm-56jx @sigstore/oci (npm) Fixed in 0.7.2 Advisory →
Vendor assessments
Timeline
- 2026-10-29 Threatist record created from CVE-2026-118763
- 2026-10-30 CISA SSVC decision points changed
- 2026-10-30 Priority changed: MEDIUM → LOW
- 2026-10-30 Alias added: GHSA-j63v-mwhm-56jx
- 2026-10-30 Fix available: npm/@sigstore/[email protected] · GHSA-j63v-mwhm-56jx
- 2026-10-30 CVSS score added · GHSA-j63v-mwhm-56jx
- 2026-10-30 Weakness changed · GHSA-j63v-mwhm-56jx
- 2026-10-30 7 new references · GHSA-j63v-mwhm-56jx
- 2026-11-07 Affected versions changed · Red Hat
- 2026-11-07 CVSS score added · Red Hat
References
Other 6
- https://github.com/sigstore/sigstore-js/security/advisories/GHSA-j63v-mwhm-56jx
- https://github.com/sigstore/sigstore-js/pull/1762
- https://github.com/sigstore/sigstore-js/commit/b855f46cfe81f26481c6d3f4b333dfd00f2fd1b1
- https://github.com/sigstore/sigstore-js/commit/e4ca65c3ab3c675456ab9b0bd04217ceccad3558
- https://github.com/sigstore/sigstore-js/releases/tag/@sigstore/[email protected]
- https://github.com/sigstore/sigstore-js
More sigstore vulnerabilities
- TI-2022-16356 False positive signature verification in cosign CVSS 3.1CRITICAL 9.8
- TI-2026-36084 sigstore-js: `certificateOIDs` verification constraints are silently dropped and never enforced CVSS 3.1HIGH 7.5
- TI-2024-19670 Cosign vulnerable to machine-wide denial of service via malicious artifacts CVSS 3.1HIGH 7.5
- TI-2026-18290 Fulcio vulnerable to Server-Side Request Forgery (SSRF) via MetaIssuer Regex Bypass CVSS 3.1MEDIUM 5.8
- TI-2026-36085 sigstore-js: Insufficient Verification of Data Authenticity CVSS 3.1MEDIUM 6.5
- TI-2024-19669 Cosign vulnerable to system-wide denial of service via malicious attachments CVSS 3.1MEDIUM 5.9
Sources
- CVE-2026-118763 · CVE Program
- CVE-2026-118763 · NVD
- FIRST EPSS
- GHSA-j63v-mwhm-56jx · GitHub Advisory Database · CC BY 4.0
- CVE-2026-118763 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences