MediumGHSA-4f78-qhmw-8j8mCVE-2026-70609

Electron: DevTools JavaScript Injection via Unsanitized Dock State Parameter

Published 5 Aug 2026 · Updated 20 Aug 2026

Affected packages

Affected
<39.8.7
Fixed in
39.8.7
Update to the fixed version for your release line, for example:npm install electron@39.8.7
Affected
>=40.0.0-alpha.1 <40.9.0
Fixed in
40.9.0
Update to the fixed version for your release line, for example:npm install electron@40.9.0
Affected
>=41.0.0-alpha.1 <41.2.0
Fixed in
41.2.0
Update to the fixed version for your release line, for example:npm install electron@41.2.0
Affected
>=42.0.0-alpha.1 <42.0.0-beta.1
Fixed in
42.0.0-beta.1
Update to the fixed version for your release line, for example:npm install electron@42.0.0-beta.1

Details

Impact

The mode option of webContents.openDevTools() was not sanitized before use by the DevTools frontend. If an attacker can influence this value, script under their control may run in the DevTools context, which in unsandboxed configurations has access to Node.js.

Apps are only affected if untrusted input can reach the mode argument of openDevTools(), or if untrusted content can call openDevTools() on a <webview> it embeds. Apps that only ever pass a fixed dock mode are not affected.

Workarounds

Only pass fixed, allowlisted values (right, bottom, undocked, detach) as the DevTools mode, and do not expose openDevTools to untrusted content.

Fixed Versions

  • 42.0.0-beta.1
  • 41.2.0
  • 40.9.0
  • 39.8.7

For more information

If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org)

Is GHSA-4f78-qhmw-8j8m in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected electron, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.