VULNERABILITY INTELLIGENCE
CVE-2026-12609
Description
In Eclipse Theia versions 1.66.0 and up until including 1.73.1, the `@theia/plugin-ext` backend exposes the `/hostedPlugin/:pluginId/:path(*)` HTTP endpoint, which resolves the requested file path with `path.resolve(localPath, filePath)` without verifying that the resolved path stays within the plugin's directory. An unauthenticated network attacker can send percent-encoded `../` sequences (`%2e%2e%2f`) that decode into the path parameter and escape the plugin directory, allowing arbitrary files readable by the Theia backend process to be retrieved. Plugin IDs are derived deterministically from a plugin's publisher and name, so built-in plugins serve as reliable anchors that require no prior knowledge of the target system.
Weakness classification
- emo@eclipse.org: CWE-22
Primary references
- emo@eclipse.org — Broken Link
- emo@eclipse.org — Vendor Advisory
- emo@eclipse.org — Issue Tracking, Mitigation, Vendor Advisory