CVE-2025-58752
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 47 - wyżej niż 47% wszystkich znanych CVE
Streszczenie
Vite przed wersjami 7.1.5, 7.0.7, 6.3.6 i 5.4.20 serwuje dowolne pliki HTML na maszynie, niezależnie od ustawień server.fs. Dotyczy to aplikacji wystawiających serwer deweloperski na sieć (--host lub server.host) i używających appType 'spa' lub 'mpa'. Podatny jest również serwer podglądu.
Ocena ryzyka
Atakujący może uzyskać dostęp do plików HTML spoza katalogu wyjściowego, co może prowadzić do ujawnienia wrażliwych informacji lub dalszych ataków.
Rekomendacja
Zaktualizuj Vite do wersji 7.1.5, 7.0.7, 6.3.6 lub 5.4.20 (lub nowszej). Jeśli nie możesz zaktualizować, nie wystawiaj serwera deweloperskiego na sieć.
Inne podatności w Vite
Zobacz wszystkie- CVE-2026-112947Średnie
Vite w wersjach od 8.2.0 do 8.2.4 oraz 8.3.3 pozwala na zwrócenie do przeglądarki pierwszych 4 bajtów plików spoza ustawienia server.fs poprzez żądanie zawierające parametr ?vite-wasm-instance. Wewnętrzny plugin Wasm usuwa parametr i odczytuje ścieżkę bezpośrednio z dysku, nie stosując kontroli server.fs, a błąd parsowania WebAssembly ujawnia pierwsze 4 bajty pliku.
- CVE-2026-112946Średnie
Vite przed wersjami 6.4.4, 7.3.7, 8.1.6, 8.2.4 i 8.3.3 może zapisać w safeModulePaths adres URL względny wobec katalogu głównego zamiast oczyszczonego identyfikatora modułu. Na dostępnym sieciowo serwerze deweloperskim (nie na Windows) zaimportowany plik projektu, którego URL odpowiada absolutnej ścieżce hosta, może autoryzować późniejsze żądanie odczytu tego pliku hosta, jeśli nie zablokuje go server.fs.deny.
- CVE-2025-31125ŚrednieAktywnie exploitowane
Vite to framework narzędziowy frontendowy dla JavaScript. Vite ujawnia zawartość niedozwolonych plików przy użyciu ?inline&import lub ?raw?import. Podatność dotyczy tylko aplikacji, które jawnie wystawiają serwer deweloperski Vite do sieci (za pomocą opcji --host lub server.host). Podatność naprawiono w wersjach 6.2.4, 6.1.3, 6.0.13, 5.4.16 i 4.5.11.
- CVE-2026-118662Średnie
W Vite od wersji 6.4.4 do 6.4.5 serwer deweloperski może ocenić server.fs.deny przed usunięciem parametrów zapytania loadera, takich jak ?raw, ?import&raw lub ?import&url&inline. Gdy serwer deweloperski jest wystawiony na sieć, a wrażliwy plik znajduje się w server.fs.allow, ale jest dopasowany przez server.fs.deny, nieuwierzytelniony atakujący może dołączyć jedno z tych zapytań i pobrać zabroniony plik.
- CVE-2026-112945Niskie
W Vite przed wersjami 6.4.4, 7.3.7, 8.1.6, 8.2.4 i 8.3.3 aplikacje używające niestandardowego middleware są podatne, gdy przekazują niezmieniony URL żądania przeglądarki do server.transformIndexHtml. getHtmlFilename używa URL żądania z zapytaniem do rozwiązania istniejącego pliku lokalnego, zachowując wiodące ukośniki dostarczone przez atakującego w wygenerowanym URL modułu proxy. Jeśli przekształcony HTML zawiera wbudowany skrypt modułu, a przeglądarka ofiary ładuje spreparowaną stronę serwera deweloperskiego, wiodący podwójny ukośnik powoduje pobranie i wykonanie modułu kontrolowanego przez atakującego.
- CVE-2026-53571Wysokie
Vite to framework narzędziowy dla JavaScript, który przed wersjami 8.0.16, 7.3.5 i 6.4.3 mógł zwracać zawartość plików określonych przez server.fs.deny do przeglądarki na systemie Windows. Problemy z normalizacją ścieżek NTFS ADS pozwalały na nieautoryzowany dostęp do wrażliwych plików.
- CVE-2026-39365Średnie
Vite, framework narzędziowy frontendu dla JavaScript, w wersjach od 6.0.0 do przed 6.4.2, 7.3.2 i 8.0.5, ma podatność w obsłudze żądań .map dla zoptymalizowanych zależności. Serwer deweloperski rozpoznaje ścieżki plików i wywołuje readFile bez ograniczania segmentów ../ w URL, co pozwala ominąć listę dozwolonych server.fs.strict i odczytać pliki .map poza katalogiem projektu, jeśli mogą być sparsowane jako poprawny JSON mapy źródłowej.
- CVE-2026-39364Wysokie
Vite (framework frontendowy dla JavaScript) w wersjach od 7.1.0 do przed 7.3.2 oraz 8.0.5 pozwala na ominięcie ograniczeń server.fs.deny. Pliki takie jak .env czy *.crt mogą być pobrane z kodem odpowiedzi HTTP 200 po dodaniu parametrów zapytania ?raw, ?import&raw lub ?import&url&inline.
- CVE-2026-39363Wysokie
Podatność w Vite (framework narzędziowy dla JavaScript) w wersjach od 6.0.0 do przed 6.4.2, 7.3.2 i 8.0.5 umożliwia atakującemu, który może połączyć się z WebSocket serwera deweloperskiego Vite bez nagłówka Origin, wywołanie fetchModule przez zdarzenie WebSocket vite:invoke i odczytanie dowolnych plików na serwerze jako ciągu JavaScript. Kontrola dostępu z żądań HTTP nie jest stosowana do tego kanału WebSocket.
- CVE-2025-62522Średnie
Vite to framework narzędziowy frontendowy dla JavaScriptu. W wersjach od 2.9.18 do przed 3.0.0, od 3.2.9 do przed 4.0.0, od 4.5.3 do przed 5.0.0, od 5.2.6 do przed 5.4.21, od 6.0.0 do przed 6.4.1, od 7.0.0 do przed 7.0.8 oraz od 7.1.0 do przed 7.1.11 pliki zabronione przez server.fs.deny były wysyłane, jeśli URL kończył się znakiem \, gdy serwer deweloperski działał w systemie Windows. Problem dotyczył tylko aplikacji, które jawnie wystawiały serwer deweloperski Vite do sieci i działały w systemie Windows.
Oryginalny opis (angielski, źródło NVD)
Vite is a frontend tooling framework for JavaScript. Prior to versions 7.1.5, 7.0.7, 6.3.6, and 5.4.20, any HTML files on the machine were served regardless of the `server.fs` settings. Only apps that explicitly expose the Vite dev server to the network (using --host or server.host config option) and use `appType: 'spa'` (default) or `appType: 'mpa'` are affected. This vulnerability also affects the preview server. The preview server allowed HTML files not under the output directory to be served. Versions 7.1.5, 7.0.7, 6.3.6, and 5.4.20 fix the issue.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

