Eclipse Theia w wersjach od 1.66.0 do 1.73.1 włącznie zawiera podatność typu path traversal w backendowym endpoincie HTTP obsługującym wtyczki. Nieuwierzytelniony atakujący sieciowy może odczytać dowolne pliki dostępne dla procesu backendu Theia.
▸ Pokaż oryginał (EN)
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.
Endpoint `/hostedPlugin/:pluginId/:path(*)` rozwiązuje ścieżkę pliku wywołaniem `path.resolve(localPath, filePath)` bez weryfikacji, czy wynikowa ścieżka pozostaje w katalogu wtyczki. Atakujący może przesłać sekwencje `../` zakodowane procentowo jako `%2e%2e%2f`, które po zdekodowaniu pozwalają wydostać się poza katalog wtyczki. Identyfikatory wtyczek (plugin IDs) są wyznaczane deterministycznie na podstawie nazwy wydawcy i wtyczki, dzięki czemu wbudowane wtyczki stanowią pewne punkty odniesienia niewymagające wcześniejszej wiedzy o systemie docelowym.
Atakujący może bez uwierzytelnienia odczytać dowolne pliki dostępne dla procesu backendu Theia, co może prowadzić do ujawnienia poufnych danych, konfiguracji, kluczy prywatnych lub innych wrażliwych zasobów systemu.
Należy zaktualizować Eclipse Theia do wersji wyższej niż 1.73.1. Szczegółowe informacje o dostępnych patchach znajdują się w oficjalnym poradniku bezpieczeństwa producenta pod adresem https://github.com/eclipse-theia/theia/security/advisories/GHSA-qmm6-p8q4-2g48
Eclipse Theia w wersjach od 1.66.0 do 1.73.1 włącznie (komponent `@theia/plugin-ext`)
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:NEclipse Theia
APPEclipse1.66.0 – 1.74.0 (bez)
Powiązane podatności
RCE i XXE w Eclipse Theia via theia-xml-extension
Eclipse Theia: RCE przez podatność XSS w Markdown Preview
Eclipse Theia: nieuwierzytelniony odczyt plików przez path traversal w endpointach HTTP
Eclipse Theia — nieuwierzytelniony arbitrary file write z możliwością RCE
In Eclipse Theia versions prior to 1.71.0, the AI chat agent processed workspace file and directory names as p...