Skip to content

Electron

Bug bounty on Sorona electronjs.org

Accepting reports open-source
Top reward
$1,500
Top severity paid
Critical
Assets in scope
12
Public CVEs
60
Last change
No changes yet

At a glance

What to know before you start testing.

Pays from $1,500
for critical bugs.
Partial safe harbor
Some legal protection; read the terms.
Replies within 6 days
As the policy promises.
Publish after a fix
Coordinate the timing with the company.

Rewards

What Sorona lists as the payout for each severity.

Severity Reward
Critical $1,500+
High $700+
Medium $300+
Low $100 $100 / 1 month Claude Max
Response
Within 6 days If nothing comes back within six business days, escalate to the OpenJS Foundation CNA at [email protected] ; the published process names that path explicitly
Safe harbor
Partial Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf.

Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original

Scope

12 assets you may test, 6 excluded.

Web 1

  • https://www.electronjs.org

Products and areas 11

  • Custom protocol registration and handling, protocol.handle, webRequest interception and the deep-link path from an operating system URL handler into the app
  • Electron Forge and the packaging tooling where a defect there changes what ships to end users
  • Electron's SECURITY.md asks for a private report through the repository advisory tab and publishes no component exclusion list, so the whole runtime below is inside it. There is no scope document narrower than the project itself
  • Fuses and the packaging integrity features: runAsNode, enableNodeCliInspectArguments, onlyLoadAppFromAsar, ASAR integrity and code signing checks
  • Navigation and window creation: will-navigate, setWindowOpenHandler, webview, BrowserView and nested frame handling
  • The auto-updater across all platforms, covering update-feed validation, signature verification and the install step
  • The IPC surface, covering ipcMain, ipcRenderer, the webContents API and the message channels that carry structured data between processes
  • The main-to-renderer boundary in full: contextBridge, context isolation, the preload environment and every way an isolated world can reach the privileged one
  • The native desktop APIs the runtime hands to app code: shell.openExternal, dialog, clipboard, desktopCapturer, powerMonitor and notification handling
  • The Node.js integration surface Electron exposes, including module loading, require reachability from web content and the ASAR filesystem shim
  • The sandbox integration and the process model, including how renderer, utility and GPU processes are spawned and what each inherits
Out of scope (6)
  • Attacks that require the attacker to already run arbitrary native code on the machine as the same user
  • Bugs in Node.js core rather than in Electron's integration of it
  • Bugs in the bundled Chromium itself, which belong to Google's Chrome VRP and are paid there. Report them upstream
  • Findings specific to a single shipping product such as GitHub Desktop, Slack or VS Code, which belong to those vendors' own programmes
  • Insecure configuration in an application built on Electron: an app that turns off contextIsolation or enables nodeIntegration for remote content has made a choice, and that is the app vendor's defect
  • Reports against an Electron major that is no longer supported

Rules

What the policy asks of you, and the bug types it won't reward, quoted from Sorona's policy. "We" in these lines means Sorona, not this site.

While testing

  • Submit through sorona.xyz. This project runs no bounty of its own; we validate, coordinate disclosure with the maintainers, and pay you directly.
  • Report privately through the Report a Vulnerability tab on electron/electron . GitHub private vulnerability reporting is enabled and it is the documented channel
  • If nothing comes back within six business days, escalate to the OpenJS Foundation CNA at the address on the policy page ; the published process names that path explicitly
  • Say which side of the Chromium line your finding sits on. A bug in the bundled Chromium belongs to Google's Chrome VRP; a bug in Electron's own code is the one this page is about
  • Name the Electron major versions affected. Several majors are supported at once and app vendors sit on different ones
  • Give a minimal reproducer app rather than a patched copy of a shipping product. A bug demonstrated only inside Slack or VS Code reads as that vendor's problem

Not accepted

  • Bugs in the bundled Chromium itself
  • Bugs in Node.js core rather than in Electron's integration of it
  • Insecure configuration in an application built on Electron
  • Findings specific to a single shipping product such as GitHub Desktop, Slack or VS Code
  • Attacks that require the attacker to already run arbitrary native code on the machine as the same user
  • Reports against an Electron major that is no longer supported

Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original

Changes

Tracked since 11 Nov 2026. Last checked 1 hour ago.

No changes yet. When the rewards or scope move, you will see it here and in the RSS feed.

Public CVEs

Published vulnerabilities in this vendor's products, from the NVD.

Search NVD
CVESeverityPublished
CVE-2026-102677 High 7.8 29 Sep 2026
CVE-2026-102674 High 8.2 29 Sep 2026
CVE-2026-102675 High 7.4 29 Sep 2026
CVE-2026-102676 High 8.3 29 Sep 2026
CVE-2026-102673 High 8.2 29 Sep 2026
CVE-2026-70612 Medium 5.4 5 Aug 2026
CVE-2026-70611 Medium 6.9 5 Aug 2026
CVE-2026-70608 High 7.2 5 Aug 2026
CVE-2026-70609 Medium 5.7 5 Aug 2026
CVE-2026-70610 Medium 5.4 5 Aug 2026
CVE-2026-70607 Medium 5.3 5 Aug 2026
CVE-2026-70604 High 7.4 5 Aug 2026
CVE-2026-70605 Medium 5.9 5 Aug 2026
CVE-2026-70606 Medium 5.9 5 Aug 2026
CVE-2026-70597 Medium 6.3 5 Aug 2026
CVE-2026-70598 Low 3.9 5 Aug 2026
CVE-2026-70599 Medium 5.9 5 Aug 2026
CVE-2026-70600 Low 3.1 5 Aug 2026
CVE-2026-70601 High 7.5 5 Aug 2026
CVE-2026-70602 Medium 6.6 5 Aug 2026
CVE-2026-70603 Medium 6.0 5 Aug 2026
CVE-2026-34765 Medium 6.0 7 Apr 2026
CVE-2026-34781 Low 2.8 7 Apr 2026
CVE-2026-34764 Low 2.3 6 Apr 2026
CVE-2026-34780 High 8.3 4 Apr 2026
CVE-2026-34775 Medium 6.8 4 Apr 2026
CVE-2026-34776 Medium 5.3 4 Apr 2026
CVE-2026-34777 Medium 5.4 4 Apr 2026
CVE-2026-34778 Medium 5.9 4 Apr 2026
CVE-2026-34779 Medium 6.5 4 Apr 2026
CVE-2026-34768 Low 3.9 4 Apr 2026
CVE-2026-34769 High 7.7 4 Apr 2026
CVE-2026-34770 High 7.0 4 Apr 2026
CVE-2026-34771 High 7.5 4 Apr 2026
CVE-2026-34772 Medium 5.8 4 Apr 2026
CVE-2026-34773 Medium 4.7 4 Apr 2026
CVE-2026-34774 High 8.1 4 Apr 2026
CVE-2026-34766 Low 3.3 4 Apr 2026
CVE-2026-34767 Medium 5.9 4 Apr 2026
CVE-2023-44402 Medium 6.1 1 Dec 2023
CVE-2023-39956 Medium 6.1 6 Sep 2023
CVE-2023-29198 Medium 6.0 6 Sep 2023
CVE-2023-23623 High 7.5 6 Sep 2023
CVE-2022-36077 High 7.2 8 Nov 2022
CVE-2022-29257 Medium 6.6 13 Jun 2022
CVE-2022-29247 Low 2.2 13 Jun 2022
CVE-2022-21718 Low 3.4 22 Mar 2022
CVE-2021-39184 Medium 6.8 12 Oct 2021
CVE-2021-32772 High 8.8 3 Aug 2021
CVE-2020-26272 Medium 5.4 28 Jan 2021
CVE-2020-35717 Critical 9.0 1 Jan 2021
CVE-2020-15215 Medium 5.6 6 Oct 2020
CVE-2020-15174 High 7.5 6 Oct 2020
CVE-2020-4075 Medium 6.8 7 Jul 2020
CVE-2020-4076 High 7.8 7 Jul 2020
CVE-2020-4077 High 7.7 7 Jul 2020
CVE-2020-15096 Medium 6.8 7 Jul 2020
CVE-2018-15685 High 8.1 23 Aug 2018
CVE-2017-16151 Critical 9.8 7 Jun 2018
CVE-2018-1000136 High 8.1 23 Mar 2018

Original policy

Copied from sorona.xyz on 12 Nov 2026. The summaries on this page are made from it; the live page may have changed since.

Skip to content What this pays This project runs no bounty of its own. sorona.xyz pays you directly on qualified, reproduced findings. Severity │ sorona.xyz pays Critical │ $1,500+ High │ $700+ Medium │ $300+ Low │ $100 / 1 month Claude Max Submit a vulnerability CVE history 36 Last 12 months 55 Lifetime Sandbox and context isolation escape 40 % IPC and webContents abuse 25 % Protocol and URL handling 20 % Fuse and packaging integrity 15 % Latest advisories Loading the feed Overview Electron packages Chromium and Node.js into a single desktop runtime, and it is what Visual Studio Code, Slack, Discord and Signal are actually built on. That is comfortably past a hundred million desktop installs, on corporate laptops and personal machines alike. The boundary that matters is Electron's own code rather than the browser inside it: context isolation, the fuses, custom protocol handlers and the webContents IPC surface decide whether untrusted web content stays inside the renderer. Google pays for the bundled Chromium and excludes embedders from that programme. GitHub's paid programme even carries an Electron asset marked ineligible for bounty. Nobody upstream pays, so sorona.xyz pays you directly on qualified, reproduced findings. In scope Electron's SECURITY.md asks for a private report through the repository advisory tab and publishes no component exclusion list, so the whole runtime below is inside it. There is no scope document narrower than the project itself The main-to-renderer boundary in full: contextBridge , context isolation, the preload environment and every way an isolated world can reach the privileged one The IPC surface, covering ipcMain , ipcRenderer , the webContents API and the message channels that carry structured data between processes The sandbox integration and the process model, including how renderer, utility and GPU processes are spawned and what each inherits Fuses and the packaging integrity features: runAsNode , enableNodeCliInspectArguments , onlyLoadAppFromAsar , ASAR integrity and code signing checks Custom protocol registration and handling, protocol.handle , webRequest interception and the deep-link path from an operating system URL handler into the app Navigation and window creation: will-navigate , setWindowOpenHandler , webview , BrowserView and nested frame handling The Node.js integration surface Electron exposes, including module loading, require reachability from web content and the ASAR filesystem shim The native desktop APIs the runtime hands to app code: shell.openExternal , dialog , clipboard , desktopCapturer , powerMonitor and notification handling The auto-updater across all platforms, covering update-feed validation, signature verification and the install step Electron Forge and the packaging tooling where a defect there changes what ships to end users Out of scope Bugs in the bundled Chromium itself, which belong to Google's Chrome VRP and are paid there. Report them upstream Bugs in Node.js core rather than in Electron's integration of it Insecure configuration in an application built on Electron: an app that turns off contextIsolation or enables nodeIntegration for remote content has made a choice, and that is the app vendor's defect Findings specific to a single shipping product such as GitHub Desktop, Slack or VS Code, which belong to those vendors' own programmes Attacks that require the attacker to already run arbitrary native code on the machine as the same user Reports against an Electron major that is no longer supported Most-valued findings Renderer to main escape: untrusted web content reaching Node or a native API despite contextIsolation and sandbox being on. This is the highest-severity class in the project and the reason Electron carries a large advisory count Context isolation defects, particularly prototype pollution or object leakage across the contextBridge that hands the isolated world a reference into the privileged one IPC handlers that trust a renderer-supplied argument, where a compromised renderer drives a privileged main-process action Fuse bypass, especially anything that re-enables runAsNode or defeats ASAR integrity, since those turn a signed application into a generic code execution vector on the user's machine Protocol handler and deep-link parsing that lets a link from a browser or a chat message reach app-privileged code Navigation controls that fail open, where will-navigate or the window-open handler can be sidestepped to load attacker content in a privileged context shell.openExternal and file-path handling that turn a URL or a filename into local command execution Auto-updater weaknesses in feed validation or signature checking, which convert a network position into persistent code execution across every install Program rules Submit through sorona.xyz. This project runs no bounty of its own; we validate, coordinate disclosure with the maintainers, and pay you directly. Report privately through the Report a Vulnerability tab on electron/electron . GitHub private vulnerability reporting is enabled and it is the documented channel If nothing comes back within six business days, escalate to the OpenJS Foundation CNA at [email protected] ; the published process names that path explicitly Say which side of the Chromium line your finding sits on. A bug in the bundled Chromium belongs to Google's Chrome VRP; a bug in Electron's own code is the one this page is about Name the Electron major versions affected. Several majors are supported at once and app vendors sit on different ones Give a minimal reproducer app rather than a patched copy of a shipping product. A bug demonstrated only inside Slack or VS Code reads as that vendor's problem State the security posture your reproducer assumes: nodeIntegration , contextIsolation , sandbox and the relevant fuses. A finding that needs insecure settings is a documentation issue, and one that survives the secure defaults is the real thing Disclosure Coordinated privately in a GitHub security advisory on electron/electron , with the OpenJS Foundation acting as CNA and as the escalation route if the maintainers go quiet. Fixes land across the supported major branches together and publish as an advisory alongside those releases. Downstream application vendors then have to rebuild, so the real exposure window runs well past the Electron release. Hold detail until the advisory is public. Safe harbor Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf. You are responsible for understanding and following the laws that apply to you, wherever you are, and for staying within any scope the project has defined. Submit a vulnerability