Skip to main content

electron-builder CVE-2026-54672

| EUVDEUVD-2026-40456 HIGH
Uncontrolled Search Path Element (CWE-427)
2026-06-30 GitHub_M GHSA-7g7r-gx96-252g
7.8
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Gain local write access to launch directory
  2. Delivery
    Plant malicious .so matching a loaded library
  3. Exploit
    Victim runs AppImage from that directory
  4. Execution
    Empty LD_LIBRARY_PATH entry resolves '.'
  5. Persist
    ld.so loads attacker library
  6. Impact
    Arbitrary code executes as victim

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V13 - Configuration Search path element control
Exploitation Conditions

Exploitation requires the AppImage to have been built by a vulnerable app-builder-lib/electron-builder version (prior to 26.15.0) such that LD_LIBRARY_PATH contains an empty path component, the attacker to have write access to the directory from which the AppImage is launched in order to place a malicious shared library matching a loaded library name, and the victim to launch that AppImage from that same working directory. Limiting factors: this is local-only (no remote vector), depends on the victim's launch directory being attacker-writable, requires the dropped library name to match one resolved at runtime, and applies only to the Linux AppImage target - not to Windows/macOS builds or other package formats.

Impact

The CVSS 3.1 vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H (7.8 High) is internally consistent with a local search-path hijack: local attack vector, low complexity, and low privileges (the attacker needs the ability to drop a file in the launch directory and the victim to run the AppImage from there). This is not a network-exploitable or wormable issue, so despite the High base score the real-world urgency is moderate and situational - it matters most on multi-user systems or where AppImages are launched from shared/world-writable or download directories. No EPSS score, KEV listing, or SSVC decision data was provided; absent those signals, exploitation appears opportunistic rather than mass-scale. No public exploit identified at time of analysis. The chief uncertainty is the practical UI element: realistically the victim must launch the AppImage from the attacker-controlled directory, which the AV:L/UI:N vector does not fully capture - verify the launch-context assumption against deployment.

Exploit ScenarioDerived

An attacker drops a malicious shared library (named to match one the Electron app loads) into a directory a victim is likely to run an AppImage from - such as a shared download folder or /tmp on a multi-user host. When the victim launches the vulnerable AppImage from that directory, the empty LD_LIBRARY_PATH component causes ld.so to load the attacker's .so from the current directory, executing code as the victim. No public POC is identified, and the local attack vector with low complexity makes this practical wherever an attacker can pre-stage files in the launch directory.

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

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

Alert me

AnalysisAIv1 – Jun 30, 2026

Local arbitrary code execution in electron-builder (app-builder-lib) AppImage targets prior to 26.15.0 occurs because an empty path component in the runtime-set LD_LIBRARY_PATH adds the current working directory to the dynamic linker search path, letting an attacker who can plant a malicious shared library in the AppImage's launch directory hijack library loading. The flaw affects Linux AppImage bundles produced by app-builder-lib (the packaging engine behind electron-builder/electron-updater) and is fixed in 26.15.0. No public exploit identified at time of analysis; CVSS 7.8 reflects high local impact rather than remote exposure.

RemediationAI

Vendor-released patch: 26.15.0 - upgrade app-builder-lib/electron-builder to 26.15.0 or later and rebuild all Linux AppImage targets so the corrected LD_LIBRARY_PATH (without empty components) is emitted, then redistribute the rebuilt artifacts to end users. Rebuilding is essential because existing shipped AppImages retain the vulnerable wrapper even after the toolchain is updated. Until rebuilt, instruct users not to launch AppImages from untrusted, shared, or world-writable directories (e.g. /tmp or a downloads folder another user can write to) and to run them from a dedicated directory containing no untrusted .so files; this reduces but does not fully eliminate risk and may inconvenience users accustomed to running downloads in place. The fix corresponds to commit https://github.com/electron-userland/electron-builder/commit/01b8ba979; details are in advisory GHSA-7g7r-gx96-252g at https://github.com/electron-userland/electron-builder/security/advisories/GHSA-7g7r-gx96-252g.

Affected VersionsENISA

electron-builder < 26.15.0
app-builder-lib < 26.15.0

Affected Packages

npm app-builder-lib fix: 26.15.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

AppImage is a self-contained Linux application bundle format; electron-builder's app-builder-lib generates the launch wrapper that exports LD_LIBRARY_PATH so bundled Electron libraries resolve at runtime. The bug is a CWE-427 (Uncontrolled Search Path Element): an empty entry in the colon-separated LD_LIBRARY_PATH (e.g. a leading, trailing, or double colon) is interpreted by the glibc dynamic loader (ld.so) as the current working directory ('.'). Any process launching the AppImage from a directory containing an attacker-supplied .so whose name matches a library the app loads will load that library instead of the legitimate one, executing attacker code in the application's context. The affected CPEs are electron-userland:electron-builder and electron-userland:app-builder-lib, both Linux AppImage build outputs.

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 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.3 HIGH

Local search-path hijack needs the victim to launch from the attacker-staged directory, so AV:L and UI:R; attacker-controlled library yields full C/I/A impact.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

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

DescriptionCVE.org

electron-updater allows for automatic updates for Electron apps. Prior to 26.15.0, AppImage targets built by app-builder-lib could use an empty path component when setting the LD_LIBRARY_PATH environment variable at runtime. This causes the current working directory to be added to the dynamic linker search path, which may allow an attacker to execute arbitrary code by placing a malicious shared library in the directory from which the AppImage is launched. This issue has been fixed in version 26.15.0.

Executive ViewAI

Why It Matters

electron-builder's app-builder-lib versions prior to 26.15.0 contain a local privilege escalation vulnerability in Linux AppImage bundles that allows arbitrary code execution through malicious shared library injection. Organizations deploying Electron applications via AppImage on Linux must immediately upgrade, as local users with access to application launch directories can execute arbitrary code with application privileges.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
High
electron-builder is the dominant packaging tool for Electron desktop apps
Threat Intel
1
1 source
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub

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 No
EPSS 0.1%
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
None
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

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

Attack Technique

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
openSUSE Tumbleweed Fixed

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