Skip to main content

Eclipse Theia CVE-2026-14574

| EUVDEUVD-2026-53302 MEDIUM
Improperly Controlled Modification of Object Prototype Attributes (Prototype Pollution) (CWE-1321)
2026-08-05 emo@eclipse.org GHSA-5f8h-2xph-wwxv
5.7
CVSS 4.0 · Vendor: eclipse
Share

Severity by source

Vendor (eclipse) PRIMARY
5.7 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:A/VC:L/VI:H/VA:L/SC:N/SI:L/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
6.6 MEDIUM

Local vector because exploit requires a workspace file on disk; PR:N since attacker supplies the file, not the victim's credentials; UI:R as victim must open the workspace; integrity high due to Object.prototype corruption across the process.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:H/A:L
4.0 AV:L/AC:L/AT:P/PR:N/UI:A/VC:L/VI:H/VA:L/SC:N/SI:L/SA:L

Primary rating from Vendor (eclipse).

CVSS VectorVendor: eclipse

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
A
Scope
X

Lifecycle Timeline

2
Patch available
Aug 05, 2026 - 12:01 EUVD
Analysis Generated
Aug 05, 2026 - 11:31 vuln.today

DescriptionCVE.org

In Eclipse Theia versions 0.7.0 and up until including 1.73.1, the PreferenceUtils.merge function in @theia/core recursively merges preference values without rejecting prototype-related keys (__proto__, constructor, prototype). Because this function is invoked by PreferenceServiceImpl.doResolve for every preference resolution across scopes (default, user, workspace, folder), a crafted preference value in a workspace settings file (.theia/settings.json or .vscode/settings.json) can pollute Object.prototype when the user opens the workspace, potentially altering application logic across the Theia process.

AnalysisAI

Prototype pollution in Eclipse Theia's preference resolution system exposes developers to application-logic manipulation when opening crafted workspaces. The PreferenceUtils.merge function in @theia/core, invoked for every preference scope resolution, fails to reject reserved JavaScript prototype keys (__proto__, constructor, prototype), allowing a malicious .theia/settings.json or .vscode/settings.json to corrupt Object.prototype across the entire Theia Node.js process. Affected versions span 0.7.0 through 1.73.1 inclusive; no public exploit has been identified at time of analysis, and the CVSS 4.0 score of 5.7 appropriately reflects the social-engineering dependency and required user interaction.

Technical ContextAI

Eclipse Theia is an open-source, TypeScript/Node.js-based IDE framework used to build cloud and desktop development environments. The flaw resides in the PreferenceUtils.merge function within the @theia/core npm package, which is called by PreferenceServiceImpl.doResolve during preference resolution across four scopes: default, user, workspace, and folder. CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes) describes the root cause: recursive object merging without a prototype-key allowlist or denylist. In JavaScript/Node.js environments, successfully setting __proto__ on a merged object propagates to Object.prototype, meaning every subsequently created object in the process inherits the injected properties. Because Theia processes host IDE logic server-side as well as client-side UI, the blast radius of a successful prototype pollution extends across plugin execution, file system access, and inter-process communication within the IDE.

RemediationAI

Consult the vendor advisory at https://github.com/eclipse-theia/theia/security/advisories/GHSA-f3w9-qfw3-xr32 for the exact patched release version, as no specific fix version was confirmed in the available data - upgrade beyond 1.73.1 once a patched release is published. The upstream fix should introduce prototype-key filtering (rejecting __proto__, constructor, and prototype keys) within PreferenceUtils.merge. As a compensating control pending an official patch, organizations should enforce a policy prohibiting developers from opening workspaces from unreviewed or untrusted sources, since .theia/settings.json and .vscode/settings.json are parsed automatically on workspace load. Where Theia is deployed in a shared cloud IDE environment, restricting write access to workspace settings directories limits attacker ability to pre-stage malicious files. Disabling workspace-level preference resolution entirely (if configurable in the deployment) would fully mitigate the vector at the cost of blocking legitimate per-workspace IDE customization. No generic network-layer controls are effective, as this is a local workspace-file attack.

CVE-2026-34621 HIGH POC
8.6 Apr 11

Prototype pollution in Adobe Acrobat Reader versions 24.001.30356, 26.001.21367 and earlier enables arbitrary code execu

CVE-2024-56059 CRITICAL
9.8 Dec 18

Prototype pollution in the farinspace Partners WordPress plugin (versions up to and including 0.2.0) enables remote unau

CVE-2020-28271 CRITICAL POC
9.8 Nov 12

Prototype pollution vulnerability in 'deephas' versions 1.0.0 through 1.0.5 allows attacker to cause a denial of service

CVE-2023-38894 CRITICAL POC
9.8 Aug 16

A Prototype Pollution issue in Cronvel Tree-kit v.0.7.4 and before allows a remote attacker to execute arbitrary code vi

CVE-2024-24292 CRITICAL POC
9.8 Mar 28

A Prototype Pollution issue in Aliconnect /sdk v.0.0.6 allows an attacker to execute arbitrary code via the aim function

CVE-2023-26121 CRITICAL POC
10.0 Apr 11

All versions of the package safe-eval are vulnerable to Prototype Pollution via the safeEval function, due to improper s

CVE-2021-23449 CRITICAL POC
10.0 Oct 18

This affects the package vm2 before 3.9.4 via a Prototype Pollution attack vector, which can lead to execution of arbitr

CVE-2024-39011 CRITICAL POC
9.8 Jul 30

Prototype Pollution in chargeover redoc v2.0.9-rc.69 allows attackers to execute arbitrary code or cause a Denial of Ser

CVE-2024-38988 CRITICAL POC
9.8 Mar 28

alizeait unflatto <= 1.0.2 was discovered to contain a prototype pollution via the method exports.unflatto at /dist/inde

CVE-2025-57347 CRITICAL POC
9.8 Sep 24

A vulnerability exists in the 'dagre-d3-es' Node.js package version 7.0.9, specifically within the 'bk' module's addConf

CVE-2025-57321 CRITICAL POC
9.8 Sep 24

A Prototype Pollution vulnerability in the util-deps.addFileDepend function of magix-combine-ex versions thru 1.2.10 all

CVE-2024-45435 CRITICAL POC
9.8 Aug 29

Chartist 1.x through 1.3.0 allows Prototype Pollution via the extend function. Rated critical severity (CVSS 9.8), this

Share

CVE-2026-14574 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy