June Vulnerability of the Month: Electron Vulnerability Out-Hyped by Efail?

Share and earn Cybytes
Facebook Twitter LinkedIn Email

Every month, we ask our researchers to nominate a vulnerability of the month. Novelty, sophistication or just plain weirdness are some of the potential criteria for selecting a vulnerability to highlight. After the nominations are collected, the candidates are shortlisted and voted on by our 70-plus-member research organization, combining the total experience and knowledge of Tenable Research to identify the vulnerability of the month.


Electron is an open-source framework for developing desktop applications. According to Electron’s website, it’s currently used in 581 apps. On May 14, a vulnerability (CVE-2018-1000136) was publicly disclosed that could potentially result in remote code execution (RCE). This isn’t the same vulnerability as CVE-2018-1000006, a different critical RCE vulnerability disclosed in January with a faulty patch that received media attention at the time.

What makes this the vulnerability of the month?

This is a good example of the competition for attention in vulnerability disclosure. CVE-2018-1000136 was disclosed the week before eFail, the email encryption vulnerability that temporarily sent the security world into a tizzy. The Efail kerfuffle played out for a few days before cooler heads prevailed and remembered that a name and a flashy logo do not an apocalypse make.

This Electron vulnerability, while serious, may have also been overhyped. Electron states that only a minority of applications have the (very) specific configuration which would make them vulnerable. However, Electron is used by big names like Discord, Slack, Signal, Skype and WordPress, making it attractive headline fodder. Neither Electron nor the researcher who discovered the vulnerability confirmed its presence in any specific applications. But, without concern for any evidence, the coverage focused on Electron’s use in popular applications. In fact, Slack took to Twitter to confirm that it wasn’t vulnerable.

Cross-site scripting vulnerabilities aren’t routinely prioritized

What’s noteworthy about this vulnerability is that it relies on cross-site scripting (XSS), one of the most popular types of web application security vulnerabilities. By exploiting low-hanging fruit like XSS, attackers can modify HTML and JavaScript code served by a webpage to execute arbitrary code on a client, gaining access to escalate privileges and execute lateral transfer. Organizations may not always prioritize XSS vulnerabilities as highly as others, but it’s important to understand how several lower severity vulnerabilities can be combined to create a greater risk to an organization.

Vulnerability details

Discovered by Brendan Scarvell of Trustwave’s SpiderLabs, this vulnerability is present in Electron versions 1.7.x, 1.8.x and 2.0.0-beta and could result in RCE. By default, Electron applications allow access to Node.js, a client-side JavaScript runtime environment. If an electron application contains an XSS attack, whereby the application fails to properly sanitize user input, an attacker can re-enable the nodeIntegration setting via the WebView embedding function and the window.open command. If exploited, the attacker can execute arbitrary code.

By default, nodeIntegration is set to false, but this vulnerability allows it to be enabled, giving attackers access to Node.js built-in modules and potential RCE. However, this isn’t a trivial vulnerability to exploit. Several conditions have to be met for exploitation.

According to Electron, an application is affected if all of the following are true:

  • Runs on Electron 1.7, 1.8, or a 2.0.0-beta
  • Allows execution of arbitrary remote code
  • Disables Node.js integration
  • Does not explicitly declare webviewTag: false in its webPreferences
  • Does not enable the nativeWindowOption option
  • Does not intercept new-window events and manually override event.newGuest without using the supplied options tag

Despite this, Electron recommend updating all applications to the latest version.

Additional resources

Share this post and earn Cybytes
Facebook Twitter LinkedIn Email
About Tenable
Tenable™, Inc. is the Cyber Exposure company. Over 24,000 organizations of all sizes around the globe rely on Tenable to manage and measure their modern attack surface to accurately understand and reduce cyber risk. As the creator of Nessus®, Tenable built its platform from the ground up to deeply understand assets, networks and vulnerabilities, extending this knowledge and expertise into Tenable.io™ to deliver the world’s first platform to provide live visibility into any asset on any computing platform. Tenable customers include over 50 percent of the Fortune 500, large government agencies and organizations across the private and public sectors. Learn more at tenable.com.
Promoted Content
Five Steps to Building a Successful Vulnerability Management Program
Is your vulnerability management program struggling? Despite proven technology solutions and the best efforts of IT teams, unresolved vulnerabilities remain an ongoing source of friction and frustration in many organizations. Regardless of how many vulnerabilities are fixed, there will always be vulnerabilities that can’t easily be remediated – and too often, finger-pointing between IT teams and business groups can ensue.

Our Revolution

We believe Cyber Security training should be free, for everyone, FOREVER. Everyone, everywhere, deserves the OPPORTUNITY to learn, begin and grow a career in this fascinating field. Therefore, Cybrary is a free community where people, companies and training come together to give everyone the ability to collaborate in an open source way that is revolutionizing the cyber security educational experience.

Support Cybrary

Donate Here to Get This Month's Donor Badge

Skip to toolbar

We recommend always using caution when following any link

Are you sure you want to continue?