Skip to main content

electron-updater CVE-2026-54673

| EUVDEUVD-2026-40455 HIGH
Information Exposure (CWE-200)
2026-06-30 GitHub_M GHSA-p2f4-r6v6-j797
8.2
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Position on update redirect path
  2. Delivery
    App sends update request with PRIVATE-TOKEN header
  3. Exploit
    Return 3xx redirect to attacker origin
  4. Execution
    electron-updater forwards credential header
  5. Persist
    Capture GitLab token
  6. Impact
    Access victim's private resources

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK

2 techniques across 2 tactics: Collection, Discovery

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the target application uses electron-updater (< 9.7.0) with a credentialed update feed that sends a header other than exactly-lowercase "authorization" - concretely GitLab's PRIVATE-TOKEN personal-access-token header or a mixed-case Authorization Bearer/OAuth header - and that the update request encounters an HTTP redirect to a host the attacker controls or can inject. Limiting factors: the app must actually attach credentials to update requests (public/unauthenticated feeds leak nothing), an update check must occur (UI:P passive interaction), and the attacker must control the redirect destination or the upstream feed/redirect path (PR:L); apps that already use a lowercase "authorization" header or pin redirects to a trusted origin are not exposed.

Impact

The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N, base 8.2) reflects a network-reachable, low-complexity issue with high confidentiality impact on both the vulnerable and a subsequent system (SC:H captures the credential crossing into the attacker's origin), no integrity/availability impact, and passive user interaction - the update check itself. PR:L and UI:P are the key limiters: exploitation only matters for apps that ship credentialed update feeds (notably GitLab PAT/OAuth) and that follow a redirect to a host the attacker influences. No EPSS score, KEV listing, or POC was provided, and the issue is information disclosure rather than code execution, so this is a real-but-conditional priority - high for teams shipping Electron apps with GitLab-authenticated private update channels, lower for apps using public/GitHub feeds without sensitive tokens. No EPSS data is available to gauge exploitation probability in the wild.

Exploit ScenarioDerived

An Electron app configured to pull updates from a private GitLab feed sends its PRIVATE-TOKEN or Authorization header to the update server; an attacker who can influence or compromise that server (or a host in the redirect path) returns a 3xx redirect to an attacker-controlled origin. Because electron-updater fails to strip the non-lowercase-"authorization" credential header on redirect, the user's GitLab token is replayed to the attacker, who then uses it to access the victim's GitLab resources. No public exploit was identified at time of analysis, but the fix commit publicly reveals the vulnerable matching logic.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jun 30, 2026

Credential leakage in electron-updater (the auto-update component of electron-builder / builder-util-runtime) before 9.7.0 allows an attacker controlling a redirect target to harvest update-feed credentials. The HTTP redirect handler only stripped a header keyed exactly as lowercase "authorization", so PRIVATE-TOKEN (GitLab personal access tokens) and mixed-case Authorization (GitLab Bearer/OAuth) headers were forwarded to attacker-controlled cross-origin redirect destinations. There is no public exploit identified at time of analysis, but the upstream fix is published in version 9.7.0.

RemediationAI

Upgrade the electron-updater / builder-util-runtime dependency to version 9.7.0 or later, which corrects the header-stripping logic to remove all credential-bearing headers (case-insensitive Authorization and PRIVATE-TOKEN) before following a cross-origin redirect; this is the primary and complete fix (Vendor-released patch: 9.7.0, commit https://github.com/electron-userland/electron-builder/commit/22a7532bd01b9fb42cff7c58d599c7ad683569fe, advisory https://github.com/electron-userland/electron-builder/security/advisories/GHSA-p2f4-r6v6-j797). Where an immediate upgrade is not possible, reduce exposure by hosting update feeds on endpoints you fully control that do not issue cross-origin redirects, and by scoping the GitLab personal access tokens used for updates to read-only, least-privilege roles so a leaked token is less damaging - the trade-off is operational overhead and that these are mitigations, not a fix. Rotate any update-feed tokens that may already have been exposed.

Affected VersionsENISA

builder-util-runtime < 9.7.0
electron-builder < 26.15.0

Affected Packages

npm builder-util-runtime fix: 9.7.0
euvd electron_builder fix: 26.15.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in npm, euvd

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

Technical ContextAI · show details

electron-updater is the runtime module within the electron-builder ecosystem that performs in-app automatic updates for Electron desktop applications, fetching update metadata and binaries over HTTP(S) from feeds such as GitLab, GitHub, or generic servers. The flaw lives in HttpExecutor.prepareRedirectUrlOptions, the routine that rebuilds request options when the server returns a 3xx redirect. To prevent credential leakage across origins, this routine is supposed to drop authentication headers before following a redirect to a different host, but its matching logic compared the header key against the literal lowercase string "authorization" only. This maps to CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor): because HTTP header names are case-insensitive and GitLab additionally uses a separate PRIVATE-TOKEN header for personal access tokens, any credential header not spelled exactly "authorization" survived the redirect and was replayed to the new, potentially attacker-controlled, origin.

Know when Electron Builder 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 (GitHub_M) PRIMARY 8.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N
vuln.today AI 6.8 MEDIUM

Network redirect with low complexity; requires a credentialed feed (PR:L) and an update check (UI:R); credential crosses into attacker origin (S:C) for high confidentiality, no integrity/availability impact.

3.1 AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N
SUSE MEDIUM
Red Hat 6.5 MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
High
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Jul 24, 2026 - 17:48 EUVD

DescriptionCVE.org

electron-updater allows for automatic updates for Electron apps. Prior to 9.7.0, the HTTP redirect handler (HttpExecutor.prepareRedirectUrlOptions) only stripped a credential header whose key string matched exactly lowercase "authorization", exposing credentials. Other credential-bearing headers - most notably PRIVATE-TOKEN (used by GitLab's personal access token flow) and mixed-case Authorization (used by GitLab's Bearer/OAuth flow) - were not stripped and could be forwarded to an attacker-controlled cross-origin redirect destination. This issue has been fixed in version 9.7.0.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 420 npm packages depend on builder-util-runtime (31 direct, 392 indirect)

Ecosystem-wide dependent count for version 9.7.0.

Executive ViewAI

Why It Matters

electron-updater versions before 9.7.0, embedded in Electron-based applications, expose a credential leakage vulnerability (CVSS 8.2) that allows attackers controlling HTTP redirects to intercept GitLab tokens and OAuth credentials from application update feeds. Organizations deploying vulnerable Electron applications face unauthorized access risk to development repositories and build infrastructure.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
High
de facto standard auto-update library across many Electron desktop apps
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Data Quality
8 sources
Confidence: High
EUVD 🇯🇵JVN NVD CVE.org EPSS Vulnrichment GHSA Vendor 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 HIGH
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
openSUSE Tumbleweed Fixed

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