Electron: Context isolation bypass via Function.prototype.bind hijack
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 39.8.9, 40.9.2, 41.2.2, 42.0.0-beta.5
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: partial
Summary
Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 39.8.9, 40.9.2, 41.2.2, and 42.0.0-beta.5, apps that expose Promise-returning functions to web content via contextBridge may be vulnerable to a context isolation bypass. Untrusted web content could obtain access to the isolated preload world and, through it, every capability the preload script has. In renderers without a sandbox, or with nodeIntegration enabled, this may escalate to Node.js access. Apps are affected if they expose Promise-returning functions via contextBridge, the standard pattern for wrapping ipcRenderer.invoke, in windows that load untrusted content. This issue is fixed in versions 39.8.9, 40.9.2, 41.2.2, and 42.0.0-beta.5.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: partial
- Record last updated
Affected versions
- electron electron
fixed in 39.8.9; From 40.0.0-alpha.1 · fixed in 40.9.2; From 41.0.0-alpha.1 · fixed in 41.2.2; From 42.0.0-alpha.1 · fixed in 42.0.0-beta.5
- electronnpm
fixed in 39.8.9
- electronnpm
From 40.0.0-alpha.1 · fixed in 40.9.2
- electronnpm
From 41.0.0-alpha.1 · fixed in 41.2.2
- electronnpm
From 42.0.0-alpha.1 · fixed in 42.0.0-beta.5