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
npm install electron@39.8.7- Affected
- >=40.0.0-alpha.1 <40.9.0
- Fixed in
- 40.9.0
npm install electron@40.9.0- Affected
- >=41.0.0-alpha.1 <41.2.0
- Fixed in
- 41.2.0
npm install electron@41.2.0- Affected
- >=42.0.0-alpha.1 <42.0.0-beta.1
- Fixed in
- 42.0.0-beta.1
npm install electron@42.0.0-beta.1Details
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.141.2.040.9.039.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
- Linkgithub.com/electron/electron/security/advisories/GHSA-4f78-qhmw-8j8m
- Linkgithub.com/electron/electron/pull/50665
- Linkgithub.com/electron/electron/pull/50666
- Linkgithub.com/electron/electron/pull/50667
- Linkgithub.com/electron/electron/pull/50668
- Linkgithub.com/electron/electron/commit/04614eed17986bddc43eb509ec870424ee6a47d1
- Linkgithub.com/electron/electron/commit/2046ae87731d80a7b535512ae19acb529e10e33b
- Linkgithub.com/electron/electron/commit/969741f9f847c5c583f6bbc63ca22549dbd954ce
- Linkgithub.com/electron/electron/commit/efc4d3c6b6f1c04f658ca0d9d2512dcfe78eb7ba
- Packagegithub.com/electron/electron
- Linkgithub.com/electron/electron/releases/tag/v39.8.7
- Linkgithub.com/electron/electron/releases/tag/v40.9.0
- Linkgithub.com/electron/electron/releases/tag/v41.2.0
- Linkgithub.com/electron/electron/releases/tag/v42.0.0-beta.1
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.