HIGH🇬🇧 English

CVE-2026-60009

Eclipse Theia — nieuwierzytelniony arbitrary file write z możliwością RCE

CVSS 8.8v3.1pub. 2026-08-05upd. 2026-08-07

W Eclipse Theia do wersji 1.73.1 włącznie endpoint `POST /file-upload` pozwala nieuwierzytelnionemu atakującemu zapisać plik w dowolnym miejscu systemu plików serwera. Podatność może prowadzić do remote code execution, np. przez nadpisanie pliku wykonywanego przy starcie systemu.

Pokaż oryginał (EN)

In Eclipse Theia versions up to and including 1.73.1, the `@theia/filesystem` backend binds `POST /file-upload` in every filesystem-enabled deployment. The handler takes an attacker-supplied absolute path from the multipart `uri` field and calls `fs.move(tmp, target, { overwrite: true })` with no workspace confinement and no authentication. In browser (non-Electron) deployments the connection token is enforced only on WebSocket upgrades; the HTTP middleware in `@theia/core` re-issues the cookie and calls `next()` without rejecting tokenless HTTP requests. Because `multipart/form-data` is a CORS-safelisted request type, a cross-origin web page can trigger the write with no preflight and no credentials, resulting in an unauthenticated arbitrary file write outside the workspace to any absolute path the backend process can write. This can escalate to remote code execution, for example by overwriting a startup-executed file such as `~/.bashrc`. Electron mode uses a separate `ElectronSecurityToken` and is not affected via this path.

🤖 Analiza AI
Jak działa

Endpoint `POST /file-upload` w pakiecie `@theia/filesystem` przyjmuje atakujący-kontrolowaną bezwzględną ścieżkę z pola `uri` żądania multipart i wywołuje `fs.move(tmp, target, { overwrite: true })` bez ograniczenia zapisu do przestrzeni roboczej (workspace) oraz bez weryfikacji tożsamości użytkownika. W trybie przeglądarkowym (non-Electron) token połączenia jest weryfikowany wyłącznie przy nawiązywaniu połączeń WebSocket — middleware HTTP w pakiecie `@theia/core` ponownie wydaje cookie i przekazuje żądanie dalej bez odrzucania żądań HTTP pozbawionych tokenu. Ponieważ `multipart/form-data` jest typem żądania bezpiecznym z punktu widzenia CORS (CORS-safelisted), złośliwa strona internetowa z innej domeny może wywołać zapis pliku bez wstępnego zapytania preflight i bez przesyłania poświadczeń. Tryb Electron korzysta z odrębnego mechanizmu `ElectronSecurityToken` i nie jest podatny na tę ścieżkę ataku.

Skutki

Atakujący może zapisać dowolny plik w dowolnym miejscu dostępnym dla procesu backendowego poza przestrzenią roboczą, co może zostać eskalowane do remote code execution — np. przez nadpisanie pliku wykonywanego przy starcie, takiego jak `~/.bashrc`.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami (advisory GHSA-62f6-wcvg-54h3). Do czasu aktualizacji zaleca się ograniczenie dostępu sieciowego do instancji Eclipse Theia wyłącznie do zaufanych użytkowników oraz blokowanie dostępu z zewnętrznych źródeł na poziomie firewall.

Kogo dotyczy

Eclipse Theia w wersjach do 1.73.1 włącznie, wyłącznie w trybie przeglądarkowym (non-Electron) z włączoną obsługą systemu plików (`@theia/filesystem`).

Uwagi

Podatność dotyczy wyłącznie wdrożeń w trybie przeglądarkowym (non-Electron). Tryb Electron nie jest podatny ze względu na oddzielny mechanizm uwierzytelniania `ElectronSecurityToken`.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
  • Eclipse Theia

    APP
    Eclipse
    < 1.74.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCEPath Traversal
CWE
Referencje

Powiązane podatności

CVE-2021-34436CRITICAL9.8PL ✓ten sam produkt

RCE i XXE w Eclipse Theia via theia-xml-extension

CVE-2020-27224CRITICAL9.6PL ✓ten sam produkt

Eclipse Theia: RCE przez podatność XSS w Markdown Preview

CVE-2026-12609HIGH7.5PL ✓ten sam produkt

Eclipse Theia — path traversal w endpoincie hostedPlugin umożliwia odczyt plików

CVE-2026-61891HIGH7.5PL ✓ten sam produkt

Eclipse Theia: nieuwierzytelniony odczyt plików przez path traversal w endpointach HTTP

CVE-2026-44688HIGH8.4ten sam produkt

In Eclipse Theia versions prior to 1.71.0, the AI chat agent processed workspace file and directory names as p...