{"id":"CVE-2026-12609","state":"PUBLISHED","title":"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 req","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.","publishedAt":"2026-08-05T10:55:42.736Z","updatedAt":"2026-08-05T13:03:23.241Z","severity":{"score":7.5,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","source":"eclipse"},"assigner":"eclipse","products":["Eclipse Foundation Eclipse Theia"],"affected":[{"vendor":"Eclipse Foundation","product":"Eclipse Theia","defaultStatus":"unaffected","versions":[{"version":"1.66.0","status":"affected","lessThan":"1.74.0","versionType":"semver"}]}],"references":["https://github.com/eclipse-theia/theia/security/advisories/GHSA-qmm6-p8q4-2g48","https://gitlab.eclipse.org/security/vulnerability-reports/-/issues/524","https://gitlab.eclipse.org/security/cve-assignment/-/work_items/133"],"weaknesses":["CWE-22"],"ingestedAt":"2026-10-29T20:10:52.580Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/12xxx/CVE-2026-12609.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-12609","state":"PUBLISHED","datePublished":"2026-08-05T10:55:42.736Z","dateUpdated":"2026-08-05T13:03:23.241Z","assignerShortName":"eclipse","assignerOrgId":"e51fbebd-6053-4e49-959f-1b94eeb69a2c","dateReserved":"2026-06-18T11:33:33.298Z"},"containers":{"cna":{"descriptions":[{"lang":"en","value":"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."}],"affected":[{"vendor":"Eclipse Foundation","product":"Eclipse Theia","defaultStatus":"unaffected","versions":[{"version":"1.66.0","status":"affected","lessThan":"1.74.0","versionType":"semver"}]}],"references":[{"url":"https://github.com/eclipse-theia/theia/security/advisories/GHSA-qmm6-p8q4-2g48"},{"url":"https://gitlab.eclipse.org/security/vulnerability-reports/-/issues/524"},{"url":"https://gitlab.eclipse.org/security/cve-assignment/-/work_items/133"}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV3_1":{"version":"3.1","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"NONE","availabilityImpact":"NONE","baseSeverity":"HIGH","baseScore":7.5,"vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-22","lang":"en","description":"CWE-22","type":"CWE"}]}],"providerMetadata":{"shortName":"eclipse","orgId":"e51fbebd-6053-4e49-959f-1b94eeb69a2c","dateUpdated":"2026-08-05T10:55:42.736Z"},"impacts":[{"capecId":"CAPEC-126","descriptions":[{"lang":"en","value":"CAPEC-126"}]}],"credits":[{"lang":"en","value":"http://github.com/geo-chen","type":"finder"}],"source":{"discovery":"UNKNOWN"},"x_generator":{"engine":"Vulnogram 1.0.4"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-08-05T13:03:16.183383Z","id":"CVE-2026-12609","options":[{"Exploitation":"none"},{"Automatable":"yes"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-08-05T13:03:23.241Z"}}]}}}