Context isolation bypass via contextBridge in Electron
Impact
Apps using both contextIsolation and contextBridge are affected.
This is a context isolation bypass, meaning that code running in the main world context in the renderer can reach into the isolated Electron context and perform privileged actions.
Workarounds
There are no app-side workarounds, you must update your Electron version to be protected.
Fixed Versions
9.0.0-beta.21
8.2.4
7.2.4
For more information
If you have any questions or comments about this advisory:
Context isolation bypass via leaked cross-context objects in Electron
Impact
Apps using contextIsolation are affected.
This is a context isolation bypass, meaning that code running in the main world context in the renderer can reach into the isolated Electron context and perform privileged actions.
Workarounds
There are no app-side workarounds, you must update your Electron version to be protected.
Fixed Versions
9.0.0-beta.21
8.2.4
7.2.4
Non-Impacted Versions
9.0.0-beta.*
For more information
If you have any questions or comments about this advisory:
IPC messages delivered to the wrong frame in Electron
Impact
IPC messages sent from the main process to a subframe in the renderer process, through webContents.sendToFrame, event.reply or when using the remote module, can in some cases be delivered to the wrong frame.
If your app does ANY of the following, then it is impacted by this issue:
Added Electron DLLs like libGLESv2.dll to symbol server. #26967 (Also in 10, 11, 12)
Fixed systemPreferences.effectiveAppearance returning systemPreferences.getAppLevelAppearance(). #26881 (Also in 10, 11, 12)
Fixed an issue where event.reply could sometimes not deliver a reply to an IPC message when cross-site iframes were present. #26928 (Also in 10, 11, 12)
Fixed an issue where some buttons were un-clickable in some BrowserViews with draggable regions enabled. #26745 (Also in 10, 11)
Fixed an issue whereby a corrupted async_hooks stack would crash the renderer when throwing some errors in the renderer process. #26748 (Also in 10, 11)
Fixed an occasional crash on Windows related to NativeViewHost::SetParentAccessible. #26950 (Also in 10, 11, 12)
Fixed usage of --disable-dev-shm-usage for apps using --no-sandbox on linux. #26806
Other Changes
Backported the fix to CVE-2020-16024: Heap buffer overflow in UI. #26831
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps electron from 6.1.11 to 9.4.0. This update includes security fixes.
Vulnerabilities fixed
Sourced from The GitHub Security Advisory Database.
Sourced from The GitHub Security Advisory Database.
Sourced from The GitHub Security Advisory Database.
Sourced from The GitHub Security Advisory Database.
... (truncated)
Release notes
Sourced from electron's releases.
... (truncated)
Commits
f37c1ff
Bump v9.4.05c8e7e8
fix: restrict sendToFrame to same-process frames by default (#26928)36b1f8f
fix: Upload all *.dll.pdb to symbol server (#26967)e83bd9b
fix: Avoid crashing in NativeViewHost::SetParentAccessible on Windows 10 (#26...c2136b6
chore: cherry-pick 290fe9c6e245 from v8 (#26897)a574285
chore: cherry-pick 3abc372c9c00 from chromium (#26895)559c008
chore: cherry-pick d8d64b7cd244 from chromium (#26893)2d41c02
chore: cherry-pick ecdec1fb0f42 from chromium (#26867)662810f
chore: cherry-pick bbc6ab5bb49c from chromium (#26861)0065e3d
fix: Propagate --disable-dev-shm-usage to child processes (#26806)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)