{"id":"CVE-2026-70609","title":"Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS","summary":"Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 39.8.7, 40.9.0, 41.2.0, and 42.0.0-beta.1, the mode option of webContents.openDevTools() was not sanitized before use by the…","severity":"medium","cvss":5.7,"cvssVector":"CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:N","cwe":["CWE-94","CWE-116"],"vendor":"electronjs","product":"electron","affected":["electron < 39.8.7","electron >= 40.0.0, < 40.9.0","electron >= 41.0.0, < 41.2.0","electron = 42.0.0"],"patched":["electron 41.2.0"],"published":"2026-08-05","updated":"2026-10-08","sourceUpdated":"2026-10-08T13:53:24.357","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-70609","references":[{"url":"https://github.com/electron/electron/commit/04614eed17986bddc43eb509ec870424ee6a47d1","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/commit/2046ae87731d80a7b535512ae19acb529e10e33b","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/commit/969741f9f847c5c583f6bbc63ca22549dbd954ce","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/commit/efc4d3c6b6f1c04f658ca0d9d2512dcfe78eb7ba","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/pull/50665","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/pull/50666","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/pull/50667","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/pull/50668","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/releases/tag/v39.8.7","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/releases/tag/v40.9.0","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/releases/tag/v41.2.0","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/releases/tag/v42.0.0-beta.1","label":"security-advisories@github.com"},{"url":"https://github.com/electron/electron/security/advisories/GHSA-4f78-qhmw-8j8m","label":"security-advisories@github.com"},{"url":"https://github.com/advisories/GHSA-4f78-qhmw-8j8m"}],"tags":["nvd","ghsa","npm"],"epss":0.00532,"epssPercentile":0.44757,"aliases":["GHSA-4f78-qhmw-8j8m"],"ecosystem":"npm","ingestedAt":"2026-08-05T17:49:58.156Z","slug":"CVE-2026-70609","body":"## Overview\n\nElectron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 39.8.7, 40.9.0, 41.2.0, and 42.0.0-beta.1, 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, including when untrusted input reaches the mode argument of openDevTools() or untrusted content calls openDevTools() on a webview it embeds. This issue is fixed in 39.8.7, 40.9.0, 41.2.0, and 42.0.0-beta.1.\n\n## Affected\n\n- `electron < 39.8.7`\n- `electron >= 40.0.0, < 40.9.0`\n- `electron >= 41.0.0, < 41.2.0`\n- `electron = 42.0.0`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `electron 41.2.0`\n\n## Package advisory (CVE-2026-70609)\n\nAffected packages:\n\n- `electron < 39.8.7`\n- `electron >= 40.0.0-alpha.1, < 40.9.0`\n- `electron >= 41.0.0-alpha.1, < 41.2.0`\n- `electron >= 42.0.0-alpha.1, < 42.0.0-beta.1`\n\nPatched in:\n\n- `electron 39.8.7`\n- `electron 40.9.0`\n- `electron 41.2.0`\n- `electron 42.0.0-beta.1`\n\nSource: https://github.com/advisories/GHSA-4f78-qhmw-8j8m","depth":"sunlit","depthScore":31,"depthScoreParts":{"impact":31.4,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}