Wysoka

launch-editor: obejście sprawdzania istnienia `fs.existsSync()` w systemie Windows

  • Ujawniono: 20.10.2026
  • Aktualizacja: 20.10.2026 23:19

Podsumowanie

launch-editor sprawdzał fs.existsSync(fileName) przed przekazaniem podanej ścieżki do polecenia edytora. W systemie Windows atakujący może obejść to sprawdzenie za pomocą spreparowanej ścieżki kończącej się na \\..:line:column. Eliminuje to wymóg umieszczenia przez atakującego pliku o złośliwej nazwie.

W połączeniu z problemem ucieczki znaków % opisanym w GHSA-698v-4r3x-3vcv,), obejście to może prowadzić do wstrzyknięcia poleceń systemu operacyjnego (OS command injection), gdy atakujący kontroluje argument pliku.

Wpływ

Podatność dotyczy wyłącznie aplikacji uruchamianych w systemie Windows.

Szczegóły

Wcześniejszy komunikat zakładał, że fs.existsSync() wymagał istnienia pliku o nazwie kontrolowanej przez atakującego. Niniejszy komunikat opisuje obejście tego wymogu.

Spreparowana wartość kończąca się na \\..:1:1 jest interpretowana inaczej przez launch-editor-middleware, launch-editor oraz system Windows:

  1. launch-editor-middleware wywołuje path.resolve(), podczas gdy ostatnim elementem ścieżki jest ..:1:1, przez co nie jest on traktowany jako element katalogu nadrzędnego.
  2. launch-editor traktuje :1:1 jako sufiks wiersza i kolumny i usuwa go, pozostawiając ścieżkę kończącą się na \\...
  3. W systemie Windows fs.existsSync() akceptuje powstałą ścieżkę jako istniejący katalog nadrzędny, nawet jeśli poprzedzający element kontrolowany przez atakującego nie istnieje.
  4. Ponieważ sprawdzenie istnienia kończy się pomyślnie, spreparowana nazwa pliku trafia do polecenia powłoki systemu Windows.

Co trzeba zrobić

Zaktualizuj pakiet launch-editor do wersji 2.14.2 lub nowszej. W przypadku korzystania z vite zaktualizuj go do wersji 6.4.4, 7.3.7, 8.1.6, 8.2.4, 8.3.3 lub nowszej. W przypadku vite-plus zaktualizuj do wersji 1.1.0 lub nowszej.

Czego dotyczy

Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.

PlatformaPaczkaPodatne wersjePoprawka w wersji
Paczka npm launch-editor < 2.14.2 2.14.2
Paczka npm vite >= 8.3.0, < 8.3.3, >= 8.2.0, < 8.2.4, >= 8.0.0, < 8.1.6, >= 7.0.0, < 7.3.7, < 6.4.4 8.3.3, 8.2.4, 8.1.6, 7.3.7, 6.4.4
Paczka npm vite-plus < 1.1.0 1.1.0

Odnośniki

Ocena CVSS -
Wektor CVSS
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Słabość (CWE)
CWE-77
Platforma
npm
Paczka
launch-editor, vite, vite-plus
Ujawniono
20.10.2026
Aktualizacja
20.10.2026 23:19

Źródła i licencje · Redakcja lub tłumaczenie: DockRay. Zachowano prawa źródeł i obowiązujące licencje.

OSV / GitHub Advisory Database - GHSA-587h-7wmj-h5pm - CC BY 4.0

Historia podatności: vite-plus

Wszystkie opisane podatności tej paczki (Paczka npm), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.

Wszystkich wpisów
6
Pierwsza → ostatnia
04.2026 10.2026
Bez poprawki
0
Wykorzystywana w atakach
0

Rozkład istotności

  • Krytyczna 1
  • Wysoka 3
  • Średnia 2

Ujawnienia w latach

  1. 2026: 6
  1. launch-editor: obejście sprawdzania istnienia `fs.existsSync()` w systemie Windows ten wpis
    Wysoka CVE-2026-112942 < 1.1.0 1.1.0
  2. Wysoka · 7.5 CVE-2026-53571 < 0.1.24 0.1.24

Dowiedz się, które podatności dotyczą Twojej aplikacji

Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.

Podłącz swoją aplikację
Newsletter DockRay

Bezpieczeństwo aplikacji w Twojej skrzynce

Najważniejsze podatności, konkretne zalecenia i praktyczne wskazówki dla Twoich aplikacji. Wybierz technologie i śledź to, co ma znaczenie dla Twojego projektu.

  • Codzienne zestawienie nowych podatności, także krytycznych.
  • Powiadomienia o ważnych aktualizacjach.
  • Praktyczne porady o bezpieczeństwie i monitoringu aplikacji.

Pozostaw puste, aby otrzymywać informacje o wszystkich technologiach.

Zapis jest bezpłatny. Wypiszesz się jednym kliknięciem w wiadomości.