Update dependency electron to v38 [SECURITY] - #191
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
July 12, 2025 16:03
dfc2dbc to
94eef98
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
August 10, 2025 13:51
94eef98 to
3f75398
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
August 23, 2025 15:31
3f75398 to
f264958
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
September 4, 2025 03:58
f264958 to
959da70
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
September 26, 2025 23:32
959da70 to
d5592f4
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
October 23, 2025 06:28
d5592f4 to
4c7e49b
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
November 16, 2025 08:12
4c7e49b to
f2d6593
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
December 31, 2025 15:05
f2d6593 to
905fb9d
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
January 20, 2026 03:32
905fb9d to
670989b
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
February 12, 2026 15:36
670989b to
57cfc95
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
March 5, 2026 15:45
57cfc95 to
e661002
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
March 14, 2026 10:37
e661002 to
f2ca40d
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
April 15, 2026 19:05
f2ca40d to
4f3b41e
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
May 13, 2026 08:04
4f3b41e to
ffc8216
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
June 6, 2026 11:45
ffc8216 to
54c03bf
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
June 13, 2026 11:49
54c03bf to
48f16ec
Compare
renovate
Bot
force-pushed
the
renovate/npm-electron-vulnerability
branch
from
July 12, 2026 15:17
48f16ec to
52de875
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^29.0.0→^38.0.0Electron vulnerable to Heap Buffer Overflow in NativeImage
CVE-2024-46993 / GHSA-6r2x-8pq8-9489
More information
Details
Impact
The
nativeImage.createFromPath()andnativeImage.createFromBuffer()functions call a function downstream that is vulnerable to a heap buffer overflow. An Electron program that uses either of the affected functions is vulnerable to a buffer overflow if an attacker is in control of the image's height, width, and contents.Workaround
There are no app-side workarounds for this issue. You must update your Electron version to be protected.
Patches
v28.3.2v29.3.3v30.0.3For More Information
If you have any questions or comments about this advisory, email us at security@electronjs.org.
Severity
CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:UReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron has ASAR Integrity Bypass via resource modification
CVE-2025-55305 / GHSA-vmqv-hx8q-j7mg
More information
Details
Impact
This only impacts apps that have the
embeddedAsarIntegrityValidationandonlyLoadAppFromAsarfuses enabled. Apps without these fuses enabled are not impacted.Specifically this issue can only be exploited if your app is launched from a filesystem the attacker has write access too. i.e. the ability to edit files inside the
resourcesfolder in your app installation on Windows which these fuses are supposed to protect against.Workarounds
There are no app side workarounds, you must update to a patched version of Electron.
Fixed Versions
38.0.0-beta.637.3.136.8.135.7.5For more information
If you have any questions or comments about this advisory, email us at security@electronjs.org
Severity
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:H/A:LReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: USB device selection not validated against filtered device list
CVE-2026-34766 / GHSA-9899-m83m-qhpj
More information
Details
Impact
The
select-usb-deviceevent callback did not validate the chosen device ID against the filtered list that was presented to the handler. An app whose handler could be influenced to select a device ID outside the filtered set would grant access to a device that did not match the renderer's requestedfiltersor was listed inexclusionFilters.The WebUSB security blocklist remained enforced regardless, so security-sensitive devices on the blocklist were not affected. The practical impact is limited to apps with unusual device-selection logic.
Workarounds
There are no app side workarounds, you must update to a patched version of Electron.
Fixed Versions
41.0.0-beta.840.7.039.8.038.8.6For more information
If there are any questions or comments about this advisory, send an email to security@electronjs.org
Severity
CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: HTTP Response Header Injection in custom protocol handlers and webRequest
CVE-2026-34767 / GHSA-4p4r-m79c-wq3v
More information
Details
Impact
Apps that register custom protocol handlers via
protocol.handle()/protocol.registerSchemesAsPrivileged()or modify response headers viawebRequest.onHeadersReceivedmay be vulnerable to HTTP response header injection if attacker-controlled input is reflected into a response header name or value.An attacker who can influence a header value may be able to inject additional response headers, affecting cookies, content security policy, or cross-origin access controls.
Apps that do not reflect external input into response headers are not affected.
Workarounds
Validate or sanitize any untrusted input before including it in a response header name or value.
Fixed Versions
41.0.340.8.339.8.338.8.6For more information
If there are any questions or comments about this advisory, send an email to security@electronjs.org
Severity
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:H/A:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: Unquoted executable path in app.setLoginItemSettings on Windows
CVE-2026-34768 / GHSA-jfqx-fxh3-c62j
More information
Details
Impact
On Windows,
app.setLoginItemSettings({openAtLogin: true})wrote the executable path to theRunregistry key without quoting. If the app is installed to a path containing spaces, an attacker with write access to an ancestor directory may be able to cause a different executable to run at login instead of the intended app.On a default Windows install, standard system directories are protected against writes by standard users, so exploitation typically requires a non-standard install location.
Workarounds
Install the application to a path without spaces, or to a location where all ancestor directories are protected against unauthorized writes.
Fixed Versions
41.0.0-beta.840.8.039.8.138.8.6For more information
If there are any questions or comments about this advisory, send an email to security@electronjs.org
Severity
CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:LReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: Renderer command-line switch injection via undocumented commandLineSwitches webPreference
CVE-2026-34769 / GHSA-9wfr-w7mm-pc7f
More information
Details
Impact
An undocumented
commandLineSwitcheswebPreference allowed arbitrary switches to be appended to the renderer process command line. Apps that constructwebPreferencesby spreading untrusted configuration objects may inadvertently allow an attacker to inject switches that disable renderer sandboxing or web security controls.Apps are only affected if they construct
webPreferencesfrom external or untrusted input without an allowlist. Apps that use a fixed, hardcodedwebPreferencesobject are not affected.Workarounds
Do not spread untrusted input into
webPreferences. Use an explicit allowlist of permitted preference keys when constructingBrowserWindoworwebContentsoptions from external configuration.Fixed Versions
41.0.0-beta.840.7.039.8.038.8.6For more information
If there are any questions or comments about this advisory, send an email to security@electronjs.org
Severity
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:HReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: Use-after-free in PowerMonitor on Windows and macOS
CVE-2026-34770 / GHSA-jjp3-mq3x-295m
More information
Details
Impact
Apps that use the
powerMonitormodule may be vulnerable to a use-after-free. After the nativePowerMonitorobject is garbage-collected, the associated OS-level resources (a message window on Windows, a shutdown handler on macOS) retain dangling references. A subsequent session-change event (Windows) or system shutdown (macOS) dereferences freed memory, which may lead to a crash or memory corruption.All apps that access
powerMonitorevents (suspend,resume,lock-screen, etc.) are potentially affected. The issue is not directly renderer-controllable.Workarounds
There are no app side workarounds, you must update to a patched version of Electron.
Fixed Versions
41.0.0-beta.840.8.039.8.138.8.6For more information
If there are any questions or comments about this advisory, please email security@electronjs.org
Severity
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:HReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: Use-after-free in WebContents fullscreen, pointer-lock, and keyboard-lock permission callbacks
CVE-2026-34771 / GHSA-8337-3p73-46f4
More information
Details
Impact
Apps that register an asynchronous
session.setPermissionRequestHandler()may be vulnerable to a use-after-free when handling fullscreen, pointer-lock, or keyboard-lock permission requests. If the requesting frame navigates or the window closes while the permission handler is pending, invoking the stored callback dereferences freed memory, which may lead to a crash or memory corruption.Apps that do not set a permission request handler, or whose handler responds synchronously, are not affected.
Workarounds
Respond to permission requests synchronously, or deny fullscreen, pointer-lock, and keyboard-lock requests if an asynchronous flow is required.
Fixed Versions
41.0.0-beta.840.7.039.8.038.8.6For more information
If there are any questions or comments about this advisory, please email security@electronjs.org
Severity
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:HReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: Use-after-free in download save dialog callback
CVE-2026-34772 / GHSA-9w97-2464-8783
More information
Details
Impact
Apps that allow downloads and programmatically destroy sessions may be vulnerable to a use-after-free. If a session is torn down while a native save-file dialog is open for a download, dismissing the dialog dereferences freed memory, which may lead to a crash or memory corruption.
Apps that do not destroy sessions at runtime, or that do not permit downloads, are not affected.
Workarounds
Avoid destroying sessions while a download save dialog may be open. Cancel pending downloads before session teardown.
Fixed Versions
41.0.0-beta.740.7.039.8.038.8.6For more information
If there are any questions or comments about this advisory, please email security@electronjs.org
Severity
CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:L/A:LReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Electron: Registry key path injection in app.setAsDefaultProtocolClient on Windows
CVE-2026-34773 / GHSA-mwmh-mq4g-g6gr
More information
Details
Impact
On Windows,
app.setAsDefaultProtocolClient(protocol)did not validate the protocol name before writing to the registry. Apps that pass untrusted input as the protocol name may allow an attacker to write to arbitrary subkeys underHKCU\Software\Classes\, potentially hijacking existing protocol handlers.Apps are only affected if they call
app.setAsDefaultProtocolClient()with a protocol name derived from external or untrusted input. Apps that use a hardcoded protocol name are not affected.Workarounds
Validate the protocol name matches
/^[a-zA-Z][a-zA-Z0-9+.-]*$/before passing it toapp.setAsDefaultProtocolClient().Fixed Versions
41.0.040.8.139.8.138.8.6For more information
If there are any questions or comments about this advisory, please email security@electronjs.org
Severity
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
electron/electron (electron)
v38.8.6: electron v38.8.6Compare Source
Release Notes for v38.8.6
Fixes
additionalDatapassed toapp.requestSingleInstanceLockon Windows could be truncated or fail to deserialize in the primary instance'ssecond-instanceevent. #50177 (Also in 39, 40, 41)v38.8.4: electron v38.8.4Compare Source
Release Notes for v38.8.4
Fixes
v38.8.2: electron v38.8.2Compare Source
Release Notes for v38.8.2
Other Changes
4835695. #49792v38.8.1: electron v38.8.1Compare Source
Release Notes for v38.8.1
Fixes
v38.8.0: electron v38.8.0Compare Source
Release Notes for v38.8.0
Fixes
menu-did-closewas not emitted properly for some application menus. #49094 (Also in 39, 40)systemPreferences.getAccentColorinverted the color. #49066 (Also in 37, 39)Other Changes
Unknown
v38.7.2: electron v38.7.2Compare Source
Release Notes for v38.7.2
Fixes
menu.popupwould fire when any arbitrary submenu of the given menu closed, and not the menu itself. #49047 (Also in 39, 40)v38.7.1: electron v38.7.1Compare Source
Release Notes for v38.7.1
Other Changes
4503289. #490094573510. #48984v38.7.0: electron v38.7.0Compare Source
Release Notes for v38.7.0
Features
app.isHardwareAccelerationEnabled(). #48681 (Also in 37, 39)window.setAccentColor(null). #48853 (Also in 39)Fixes
webContents.openDevTools({ mode: 'detach' })would cause a crash on Wayland. #48926 (Also in 39)Other Changes
4600173. #48950Unknown
v38.6.0: electron v38.6.0Compare Source
Release Notes for v38.6.0
Fixes
Other Changes
v38.5.0: electron v38.5.0Compare Source
Release Notes for v38.5.0
Features
Fixes
dialog.showOpenDialogon Windows with an empty extension filter array. #48660 (Also in 37, 39)trafficLightPositionwould not be correctly applied when usingtitleBarStyle: 'customButtonsOnHover'on macOS 26. #48620 (Also in 37, 39)titleBarOverlaywasn't always calculated to provide appropriate minimum contrast. #48595 (Also in 37, 39)Other Changes
Documentation
v38.4.0: electron v38.4.0Compare Source
Release Notes for v38.4.0
Features
Fixes
v38.3.0: electron v38.3.0Compare Source
Release Notes for v38.3.0
Fixes
dialog.showMessageBoxdefault button handling. #48519 (Also in 36, 37, 39)shell.openExternalcaused an unexpected dialog to open when there was no app suitable to open the url. #48517 (Also in 39)Other Changes
v38.2.2: electron v38.2.2Compare Source
Release Notes for v38.2.2
Fixes
GetPackageJSON. #48424 (Also in 37, 39)v38.2.1: electron v38.2.1Compare Source
Release Notes for v38.2.1
Fixes
v38.2.0: electron v38.2.0Compare Source
Release Notes for v38.2.0
Features
Fixes
XDG_SESSION_TYPEenvironment variable. #48309<input>tag on macOS 26. #48394 (Also in 37, 39)v38.1.2: electron v38.1.2Compare Source
Release Notes for v38.1.2
Other Changes
v38.1.1: electron v38.1.1Compare Source
Release Notes for v38.1.1
Other Changes
v38.1.0: electron v38.1.0Compare Source
Release Notes for v38.1.0
Other Changes
v38.0.0: electron v38.0.0Compare Source
Release Notes for v38.0.0
Stack Upgrades
140.0.7339.4122.18.014.0Breaking Changes
Features
Additions
before-mouse-eventto allow intercepting and preventing mouse events in WebContents. #47280 (Also in 36, 37)fileBackedandpurgeablefields toprocess.getSystemMemoryInfo()for macOS. #48146 (Also in 37)innerWidthandinnerHeightoptions for window.open. #46749 (Also in 35, 36, 37)guidTrayconstructor option on macOS to allow tray icons to maintain position across launches. #48077 (Also in 36, 37)webFrameMain.fromFrameToken(processId, frameToken)to get aWebFrameMaininstance from its frame token. #47942app.getRecentDocuments()on Windows and macOS. #47924 (Also in 36, 37)--no-experimental-global-navigatorflag. #47370 (Also in 35, 36, 37)HIDDevice.collections. #47391 (Also in 36, 37)screen.dipToScreenPoint(point)andscreen.screenToDipPoint(point)on Linux X11. #46211 (Also in 35, 36, 37)paletteandheaderon macOS. #45538 (Also in 37)--experimental-network-inspection. #46690 (Also in 35, 36, 37){get|set}AccentColor. #47939 (Also in 36, 37)Improvements
win.isContentProtected()to allow developers to check window protection status. #47242 (Also in 36, 37)DIR_ASSETSinstead ofDIR_MODULE/DIR_EXEto locate assets and resources, and added "assets" as a key that can be queried viaapp.getPath. #47950 (Also in 37)Fixes
dialog.showMessageDialogshowed a window incorrectly centered to monitor instead of parent window when passed. #48215chrome://accessibilitypage. #47497Also in earlier versions...
addChildView()crashes when adding a closed WebContentsView. #47099 (Also in 35, 36, 37)appextensions filters didn't allow for selecting app bundles in macOS file dialogs. #47841 (Also in 36, 37)Refererheader was not being set correctly when usingwebContents.downloadURL(). #47867 (Also in 36, 37)webContents.loadURL()from a failedwebContents.loadURL()call's catch handler. #48043 (Also in 36, 37)-electron-corner-smoothingCSS rule to a stylesheet with no associated document. #47785 (Also in 37)desktopCapturer.getSourceswith an empty thumbnail size. #47652 (Also in 36, 37)webContentsfunctions afterwindow.close(). #47952 (Also in 36, 37)session.clearDatain some circumstances. #47361 (Also in 35, 36, 37)electronfor the first time from an ESM module loaded by a CJS module in a packaged app. #46810 (Also in 35, 36, 37)setContentProtectiondidn't work as expected. #47886 (Also in 36, 37)app.accessibilitySupportEnableddidn't work as expected. #48060 (Also in 37)net.isOnline()always returnedtruein utilityProcesses. #48151 (Also in 36, 37)require('node:sqlite')didn't work. #47757 (Also in 36, 37)shell.openPathwas not non-blocking as expected. #48089 (Also in 36, 37)webContents.printdid not work as expected whenmediaSizewas not passed. #46937 (Also in 36, 37)accentColorwould result in a white accent color. #47684 (Also in 37)Fetch.continueResponsevia debugger withWebContentsViewcould cause a crash