Pomoc zdalna
alerty bezpieczeństwa

Vite (CVE-2025-31125): serwer roboczy programisty ujawnia pliki z hasłami i kluczami

Luka w narzędziu Vite pozwala odczytać dowolne pliki z komputera programisty, gdy serwer roboczy jest wystawiony w sieci. CISA potwierdza ataki. Zapytaj wykonawcę strony o wersję Vite i miejsce przechowywania kluczy.

  • Paweł Niedźwiecki
Paweł Niedźwiecki
17 września 2026 8 min czytania
Programista piszący kod na laptopie, zbliżenie na klawiaturę i ekran

Ten alert jest dla zarządu, CTO i CFO firm, które mają własny zespół programistów lub zlecają budowę stron i aplikacji agencjom. Werdykt: jeśli w projektach używany jest Vite w wersji starszej niż 6.2.4, 6.1.3, 6.0.13, 5.4.16 lub 4.5.11, a serwer roboczy bywa wystawiany do sieci, zaktualizuj Vite i sprawdź, gdzie leżą klucze produkcyjne, do jutra, bo CISA potwierdza wykorzystywanie tej luki.

1. CO SIĘ STAŁO? Fakty w pigułce

Amerykańska agencja CISA 22 stycznia 2026 roku dopisała podatność CVE-2025-31125 do katalogu KEV, czyli listy luk, o których ma dowody, że są wykorzystywane w prawdziwych atakach. Stało się to prawie dziesięć miesięcy po publikacji luki i wydaniu poprawek.

Vite to popularne narzędzie programistów do budowania stron i aplikacji internetowych. Ma serwer roboczy, który pokazuje podgląd zmian i z założenia blokuje dostęp do plików spoza projektu oraz plików z hasłami. Tę blokadę dało się obejść, dopisując do adresu ?inline&import lub ?raw?import. Skutek: odczyt plików, np. z hasłem do bazy danych czy kluczem do bramki płatności. Luka dotyczy wyłącznie serwerów roboczych jawnie wystawionych do sieci (opcja --host lub server.host).

Termin naprawy wyznaczony przez CISA minął 12 lutego 2026 roku, ponad siedem miesięcy temu.

Element

Szczegóły

Identyfikator CVE

CVE-2025-31125

Data dodania do CISA KEV

2026-01-22

Termin naprawy wg CISA

2026-02-12 (21 dni od wpisu)

Produkt

Vite (vitejs), narzędzie do budowania aplikacji internetowych, serwer roboczy

Wersje zagrożone

Poniżej 4.5.11; 5.0.0 do 5.4.15; 6.0.0 do 6.0.12; 6.1.0 do 6.1.2; 6.2.0 do 6.2.3. Tylko gdy serwer roboczy jest wystawiony do sieci (--host lub server.host)

Wersje bezpieczne

6.2.4, 6.1.3, 6.0.13, 5.4.16, 4.5.11 (wydane 31 marca 2025) i nowsze; najnowsza wersja w npm: 8.3.0 (wrzesień 2026)

Typ podatności

Nieprawidłowa kontrola dostępu i ujawnienie informacji; CWE-284 i CWE-200 (wg GitHub); Red Hat: zewnętrzna kontrola nad ścieżką pliku; NVD: brak klasyfikacji

Ocena CVSS

NVD: 7.5 WYSOKA (CVSS 3.1, atak łatwy, bez udziału użytkownika). GitHub: 5.3 ŚREDNIA (CVSS 3.1, atak trudny, wymagany udział użytkownika). Red Hat: zagrożenie umiarkowane. Skutek wg obu ocen: pełna utrata poufności, bez wpływu na integralność i dostępność

2. O CO CHODZI W PROSTYCH SŁOWACH?

Wyobraź sobie biuro z ochroniarzem, który ma listę osób wpuszczanych do archiwum. Ktoś przychodzi i mówi: „Nie wchodzę do archiwum, tylko odbieram z niego przesyłkę”. Ochroniarz przepuszcza go, bo procedura dotyczyła wchodzenia, a nie odbierania przesyłek. Efekt jest ten sam: obca osoba wychodzi z dokumentami z archiwum.

Tak działała ta luka. Serwer roboczy Vite sprawdzał, czy żądany plik jest na liście zakazanych, ale robił to, zanim przetworzył specjalny dopisek w adresie. Z dopiskiem żądanie przechodziło bokiem. To narzędzie warsztatowe, którego firma nie kupuje, ale programiści często uruchamiają je w sieci biura czy coworkingu, żeby zobaczyć stronę na telefonie albo pokazać ją klientowi.

💡 Serwer roboczy (dev server) to program na komputerze programisty, który na bieżąco pokazuje podgląd budowanej strony. Opcja --host udostępnia ten podgląd innym urządzeniom w sieci. Klucze produkcyjne to hasła i klucze do prawdziwych systemów: bazy danych, bramki płatności, wysyłki maili. Plik .env to typowe miejsce przechowywania takich ustawień w projekcie.

Scenariusz

Normalnie

Z podatnością

Serwer roboczy tylko na komputerze programisty

Nikt z zewnątrz się nie połączy

Luka nie ma znaczenia

Serwer roboczy wystawiony w sieci biura lub coworkingu

Inni widzą tylko podgląd strony

Każdy w tej sieci może odczytać pliki z hasłami

Żądanie pliku z hasłami

Serwer odmawia

Z dopiskiem ?raw?import serwer zwraca zawartość

Wyciek klucza do bramki płatności

Brak

Brak alarmu, koszty widać dopiero przy nieautoryzowanych transakcjach

Klucze produkcyjne tylko na serwerze

Brak ryzyka z komputerów roboczych

Wyciek dotyczy tylko kluczy testowych

Klucz zostawiony w zamku drzwi, w zasięgu ręki przez oknoźródło: magnific.com

3. JAK HAKERZY TO WYKORZYSTUJĄ?

Poniżej typowy przebieg ataku dla tej klasy podatności. To scenariusz poglądowy, a nie odtworzenie konkretnego incydentu. Atak wymaga, żeby serwer roboczy był osiągalny w sieci, więc zaczyna się od znalezienia takiego serwera (w sieci wspólnej lub wystawionego do internetu). CISA ocenia, że atak nie daje się zautomatyzować na masową skalę.

Etap

Czas

Akcja hakerów

Wynik

1. Rozpoznanie

T+0 min

Wyszukiwanie serwerów roboczych Vite w sieci wspólnej lub w internecie

Lista dostępnych serwerów

2. Odczyt plików

T+kilka minut

Żądania z dopiskiem ?raw?import lub ?inline&import do plików konfiguracyjnych

Zawartość plików z hasłami i kluczami

3. Wybór łupu

T+1 godz.

Wyłuskanie haseł do bazy, kluczy do płatności, poczty, chmury

Dostęp do systemów produkcyjnych

4. Wykorzystanie

T+1 do 7 dni

Logowanie do bazy danych klientów, użycie kluczy API

Kradzież danych lub nadużycia finansowe

5. Skutek

T+tygodnie

Nieautoryzowane transakcje, wysyłka spamu z domeny firmy, wyciek bazy

Straty, postępowanie u operatora płatności

Tomasz Kaczmarek
Tomasz Kaczmarek

Mogę Ci jakoś pomóc?

Konkretne scenariusze zagrożenia

  • 🔴 Scenariusz 1: programista agencji w coworkingu wystawia podgląd sklepu na tablet, a inny najemca sieci odczytuje plik z kluczem do bramki płatności.
  • 🔴 Scenariusz 2: serwer roboczy uruchomiony w kontenerze na serwerze testowym jest dostępny z internetu, a napastnik pobiera hasło do produkcyjnej bazy danych klientów.
  • 🔴 Scenariusz 3: wykradziony klucz do usługi wysyłki maili służy do rozsyłania phishingu z domeny firmy, która trafia na czarne listy.

4. DLACZEGO TO RYZYKO DLA TWOJEJ FIRMY?

Firma zwykle nie wie, jakich narzędzi używa wykonawca strony. Luka sama niczego nie niszczy, ale ujawnia klucze, które otwierają systemy produkcyjne. Wyciek klucza nie wywołuje żadnego alarmu, a koszt pojawia się później.

Obszar biznesu

Potencjalny wpływ

Czas do wystąpienia

Koszty szacunkowe

Operacyjny

Wymiana wszystkich kluczy i haseł, przerwa w działaniu płatności lub wysyłki

Dni

5 tys. do 40 tys. PLN

Bezpieczeństwo danych

Dostęp do bazy klientów przez wykradzione hasło

Dni od wycieku

20 tys. do 150 tys. PLN (analiza, powiadomienia)

Finansowy

Nieautoryzowane transakcje, rachunki za usługi chmurowe, postępowanie u operatora płatności

Tygodnie

10 tys. do 300 tys. PLN

Reputacyjny

Spam lub phishing z domeny firmy, wyciek danych klientów

Tygodnie do miesięcy

20 tys. do 200 tys. PLN

Prawny

Przy wycieku danych osobowych zgłoszenie do UODO w 72 godziny; możliwa kara RODO do 20 mln EUR lub 4% rocznego obrotu (zależnie od okoliczności); spór z wykonawcą o odpowiedzialność

72 godziny od wykrycia

10 tys. do 100 tys. PLN (prawnicy, obsługa zgłoszeń), bez ewentualnej kary

Kwoty są orientacyjnymi widełkami dla małej i średniej firmy, nie danymi z tego incydentu.

Macierz ryzyka dla projektów z Vite bez poprawki i serwerem roboczym wystawianym do sieci Wpływ 5 | . . . . . 4 | . . . . . 3 | . . ■ . . ← ŚREDNIE 2 | . . . . . 1 | . . . . . +-------------------- 1 2 3 4 5 Prawdopodobieństwo

Interpretacja: ryzyko średnie, bo luka wymaga wystawienia serwera roboczego do sieci i dotyczy tylko odczytu plików; rośnie do wysokiego, jeśli na komputerach roboczych leżą klucze produkcyjne, a spada prawie do zera, gdy serwer roboczy nigdy nie jest dostępny z sieci.

5. CO MUSISZ ZROBIĆ NATYCHMIAST?

Lp.

Priorytet

Działanie

Termin

Odpowiedzialny

1

🔴 NATYCHMIAST

Ustalić, które projekty firmy używają Vite i w jakiej wersji

Dziś

Kierownik zespołu programistów / wykonawca

2

🔴 NATYCHMIAST

Sprawdzić, czy serwery robocze są uruchamiane z --host lub server.host, także w kontenerach i na serwerach testowych

Dziś

Programiści

3

🟠 PILNIE

Zaktualizować Vite do wersji z poprawką lub nowszej we wszystkich projektach

Do 3 dni

Programiści

4

🟠 PILNIE

Usunąć klucze produkcyjne z komputerów roboczych i repozytoriów, trzymać je tylko na serwerze produkcyjnym

Do 3 dni

Kierownik zespołu / DevOps

5

🟠 PILNIE

Jeśli serwer roboczy był wystawiony w sieci wspólnej: wymienić klucze i hasła, które leżały w projekcie

Do 7 dni

DevOps

6

🟡 WAŻNIE

Wprowadzić automatyczne sprawdzanie podatnych zależności w projektach (np. przy każdej zmianie kodu)

Do 30 dni

CTO

7

🟡 WAŻNIE

Dopisać do umów z wykonawcami obowiązek aktualizacji narzędzi i rozdzielenia kluczy

Do 30 dni

CTO / CFO

Jeśli aktualizacja nie jest dostępna

Poprawki są dostępne dla wszystkich linii Vite od 31 marca 2025 roku. Aktualizacja narzędzia deweloperskiego zwykle nie wpływa na działającą stronę. Oceny efektywności to ocena ekspercka.

Czasowa miara ochronna

Efektywność

Łatwość wdrożenia

Nieuruchamianie serwera roboczego z --host i bez server.host

Wysoka: luka przestaje mieć znaczenie

Łatwa, ale utrudnia podgląd na telefonie

Podgląd na innych urządzeniach tylko w zaufanej, prywatnej sieci

Średnia

Łatwa

Klucze produkcyjne wyłącznie na serwerze produkcyjnym

Wysoka wobec skutków tej i podobnych luk

Średnia

Blokada dostępu do serwerów testowych z internetu

Wysoka dla serwerów w kontenerach

Średnia

Przed i po działaniu

Stan

Przed działaniem

Po działaniu

Wersja Vite

Z okresu budowy strony, bez poprawki

Aktualna, z poprawką

Serwer roboczy

Czasem dostępny w sieci wspólnej

Tylko lokalnie lub w zaufanej sieci

Klucze produkcyjne

Na laptopach i w projektach

Tylko na serwerze produkcyjnym

Wiedza o zależnościach

Brak

Automatyczne powiadomienia o lukach

Zgodność z terminem CISA

Zaległość od 12 lutego 2026

Luka zamknięta i udokumentowana

6. KONTEKST I SKALA ZAGROŻENIA

Aspekt

Informacja

Czy jest wykorzystywana?

TAK (potwierdzone przez CISA); ataki nieautomatyzowalne na masową skalę, skutek dla składnika całkowity

Grupy przestępcze

Brak publicznych informacji

Kampanie ransomware

Brak potwierdzenia (CISA: Unknown)

Ocena CVSS

7.5 WYSOKA (NVD, CVSS 3.1); 5.3 ŚREDNIA (GitHub, CVSS 3.1)

PoC dostępny publicznie?

NVD oznacza komunikat bezpieczeństwa GitHub (GHSA-4r4m-qw57-chr8) jako zawierający przykład ataku

Liczba atakowanych firm

Brak publicznych informacji

Prognoza EPSS

Około 58,8% szansy próby wykorzystania w ciągu 30 dni, powyżej 99% wszystkich luk (wg analizy źródłowej)

Produkty Red Hat

Red Hat nie wydał poprawki: pięć składników uznał za nietknięte, sześć za nieobjęte wsparciem (wg analizy źródłowej)

Sygnały zagrożenia dla CVE-2025-31125 CVSS 3.1 (NVD) 7.5/10 ███████████████░░░░░ WYSOKA CVSS 3.1 (GitHub) 5.3/10 ███████████░░░░░░░░░ ŚREDNIA EPSS (wg źródła) ~59% ████████████░░░░░░░░ WYSOKA CISA KEV TAK ████████████████████ ataki potwierdzone Warunek ataku --host ██████████░░░░░░░░░░ serwer w sieci
Tomasz Kaczmarek
Tomasz Kaczmarek

Mogę Ci jakoś pomóc?

Linia czasu incydentu

2025-03-31 Wydanie poprawek Vite i publikacja CVE-2025-31125 ... prawie 10 miesięcy bez potwierdzonych ataków 2026-01-22 CISA dodaje lukę do katalogu KEV 2026-01-23 CISA ocenia: aktywne wykorzystanie 2026-02-12 Termin naprawy wg CISA dla agencji federalnych 2026-06-17 Ostatnia aktualizacja wpisu w NVD ... ponad 7 miesięcy od terminu CISA 2026-09-17: TUTAJ JESTEŚMY

7. BEZPOŚREDNI LINK DO DZIAŁANIA: checklista dla CTO/CFO

Poprawka w repozytorium Vite: commit 5967313 . Komunikat bezpieczeństwa: GHSA-4r4m-qw57-chr8 . Wpis w NVD: nvd.nist.gov/vuln/detail/CVE-2025-31125 .

Lp.

Zadanie

Kto

Deadline

1

Zapytać wykonawcę strony lub zespół: jakiej wersji Vite używają projekty firmy

CTO

DZISIAJ

2

Zapytać, czy klucze produkcyjne (baza, płatności, poczta) leżą na komputerach roboczych

CTO

DZISIAJ

3

Zapytać, czy serwery robocze bywają wystawiane w sieciach wspólnych lub w internecie

CTO

DZISIAJ

4

Zatwierdzić aktualizację Vite we wszystkich projektach

CTO

DO JUTRA

5

Zlecić wymianę kluczy, jeśli istniało ryzyko ich ujawnienia

CTO

DO JUTRA

6

Sprawdzić w panelu operatora płatności i usług chmurowych nietypowe transakcje i koszty

CFO

DO JUTRA

7

Przejrzeć umowę z wykonawcą pod kątem utrzymania i aktualizacji projektu

CFO

DO JUTRA

8. PYTANIA DO TWOJEGO ZESPOŁU IT

#

Pytanie

Odpowiedź

Priorytet

1

Które nasze projekty używają Vite i w jakiej wersji?

[lista i wersje]

🔴

2

Czy serwer roboczy bywa uruchamiany z --host lub server.host?

TAK / NIE

🔴

3

Czy klucze produkcyjne znajdują się na komputerach programistów lub w repozytorium?

TAK / NIE

🔴

4

Kiedy zaktualizowano Vite do wersji z poprawką?

[data]

🟠

5

Czy któryś serwer testowy z Vite jest dostępny z internetu?

TAK / NIE

🟠

6

Czy mamy automatyczne powiadomienia o lukach w zależnościach projektów?

TAK / NIE

🟡

7

Kiedy ostatnio aktualizowano narzędzia i biblioteki w projekcie strony?

[data]

🟡

Pytania diagnostyczne dla managera

  • ✓ Czy wiem, kto utrzymuje narzędzia, którymi zbudowano naszą stronę lub sklep?
  • ✓ Czy umowa z wykonawcą obejmuje aktualizacje po zakończeniu projektu?
  • ✓ Czy klucze do płatności i bazy danych są znane tylko tym, którzy muszą je znać?
  • ✓ Czy zauważylibyśmy nieautoryzowane użycie naszego klucza do bramki płatności?
  • ✓ Czy przyjmujemy, że stara, naprawiona luka może być nadal groźna?

Podsumowanie

CVE-2025-31125 pozwala odczytać pliki z hasłami i kluczami z serwera roboczego Vite, jeśli programista wystawił go do sieci. Poprawki są dostępne od marca 2025 roku, a CISA potwierdziła ataki w styczniu 2026 roku, co pokazuje, że napastnicy wracają do starych luk. Aktualizacja Vite i trzymanie kluczy produkcyjnych wyłącznie na serwerze zamykają ten i podobne problemy.

Czytaj dalej

Powiązane artykuły

Zestaw zmienia się codziennie, więc przy kolejnej wizycie zobaczysz inny wycinek bloga.

Masz to samo u siebie?

Możemy się tym zająć

Krótka rozmowa wystarczy, żeby ocenić zakres prac i podać widełki kosztu. Bez zobowiązań.