CVE-2026-113797 in Electroninfo

Summary

by MITRE • 10/21/2026

Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to versions 42.11.1, 43.5.1, 44.1.1, and 45.0.0-alpha.4, chrome.tabs.query() returned each tab's url and title to extensions that had neither the tabs permission nor matching host permissions. An application that loaded an extension it did not fully trust through session.extensions.loadExtension could therefore allow that extension to read the URL and title of every webContents in its session. This issue is fixed in versions 42.11.1, 43.5.1, 44.1.1, and 45.0.0-alpha.4.

Be aware that VulDB is the high quality source for vulnerability data.

Analysis

by VulDB Data Team • 10/21/2026

The vulnerability described involves a critical information disclosure flaw within the Electron framework, specifically affecting versions prior to 42.11.1, 43.5.1, 44.1.1, and 45.0.0-alpha.4. Electron serves as a foundational runtime for developing cross-platform desktop applications by leveraging web technologies such as JavaScript, HTML, and CSS. In this context, the application acts as a host environment that can load extensions to extend its functionality. The core issue stems from an improper implementation of permission checks within the chrome.tabs.query() API method. This API is designed to allow extensions to query information about browser tabs, but it failed to enforce strict access controls based on declared permissions or host matching rules.

Technically, the flaw arises because the chrome.tabs.query() function returned sensitive data, specifically the URL and title of each tab, to any extension loaded into a session regardless of whether that extension possessed the necessary tabs permission or had defined matching host permissions in its manifest. This behavior represents a failure in access control logic where the application did not verify if the requesting entity was authorized to view specific resources. Consequently, an attacker who could influence which extensions were loaded into the Electron application's session gained the ability to enumerate and read the browsing context of all webContents within that session. The function chrome.tabs.query() essentially bypassed standard security boundaries intended to isolate extension capabilities from broader application state.

The operational impact of this vulnerability is significant, particularly for applications that load third-party or untrusted extensions through methods like session.extensions.loadExtension. If an application loads an extension it does not fully trust, the malicious code within that extension can exploit this flaw to harvest URLs and titles from every active tab in the user's browsing session. This constitutes a severe privacy breach as it allows for the exfiltration of sensitive web navigation history without explicit user consent or permission grants. The attacker could potentially infer user interests, identify accessed confidential resources, or use the gathered data for further social engineering attacks. This aligns with CWE-200, which classifies this type of issue as an Information Exposure vulnerability where security-sensitive information is disclosed to unauthorized actors.

From a threat modeling perspective, this vulnerability facilitates reconnaissance and data collection activities that map directly to ATT&CK technique T1537, specifically the sub-technique of Communication Through Removable Media or in this case, communication through loaded modules/extensions for exfiltration. It also relates to T1005, Data from Local System, as it involves accessing local application state and user activity data. The lack of proper permission validation allows an extension to operate with privileges far exceeding its intended scope, undermining the principle of least privilege that is central to secure software architecture in Electron-based applications.

Mitigation for this issue requires immediate upgrading to patched versions of Electron, specifically version 42.11.1 or later, 43.5.1 or later, 44.1.1 or later, and 45.0.0-alpha.4 or later. These releases contain the necessary code changes to enforce strict permission checks before returning tab data via chrome.tabs.query(). For developers maintaining older versions of Electron that cannot be immediately upgraded, it is imperative to avoid loading any extensions from untrusted sources within session contexts where sensitive browsing data might be present. Additionally, implementing rigorous validation of extension manifests and ensuring that only explicitly permitted APIs are accessible can provide a layer of defense in depth against similar permission bypass vulnerabilities. Regular security audits of Electron applications should include verification of how third-party modules interact with core browser APIs to prevent unauthorized access to user session data.

Responsible

GitHub M

Reservation

10/20/2026

Disclosure

10/21/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

low

Sources

Want to stay up to date on a daily basis?

Enable the mail alert feature now!