Git (CVE-2025-48384): pobranie cudzego projektu uruchamia obcy skrypt u programisty
Niewidoczny znak końca wiersza w konfiguracji podmodułów Git pozwala uruchomić skrypt napastnika zaraz po pobraniu projektu. CISA potwierdza ataki. Zaktualizuj Git, Visual Studio i Xcode na laptopach i serwerach budujących.
Ten alert jest dla zarządu, CTO i CFO firm, które mają programistów, zlecają tworzenie oprogramowania lub utrzymują serwery budujące aplikacje. Werdykt: jeśli na laptopach programistów lub serwerach budujących działa Git starszy niż wersje z poprawką (np. 2.50.1, 2.49.1, 2.43.7), zaktualizuj go w ciągu kilku dni, bo pobranie spreparowanego projektu może uruchomić skrypt napastnika z dostępem do kluczy firmy, a CISA potwierdza ataki.
1. CO SIĘ STAŁO? Fakty w pigułce
Amerykańska agencja CISA 25 sierpnia 2025 roku dopisała podatność CVE-2025-48384 do katalogu KEV, czyli listy luk, o których ma dowody, że są wykorzystywane w prawdziwych atakach. CISA zaznacza, że luka dotyczy powszechnie używanego składnika obecnego w wielu produktach.
Git, narzędzie do zarządzania historią zmian w kodzie, niekonsekwentnie obsługiwał niewidoczny znak powrotu karetki (CR) na końcu wartości w konfiguracji. Przy zapisie znak ginął, przy odczycie ścieżka była inna. Napastnik może przygotować projekt z podmodułem, dowiązaniem symbolicznym i skryptem, który po pobraniu projektu (np. git clone --recursive) trafia do katalogu automatycznie uruchamianych skryptów i wykonuje się bez pytania z uprawnieniami osoby pobierającej.
Termin naprawy wyznaczony przez CISA minął 15 września 2025 roku, rok temu.
Element
Szczegóły
Identyfikator CVE
CVE-2025-48384
Data dodania do CISA KEV
2025-08-25
Termin naprawy wg CISA
2025-09-15 (21 dni od wpisu)
Produkt
Git; także produkty z wbudowanym Gitem: Apple Xcode (przed 26.0), Visual Studio 2017, 2019 i 2022; pakiety Git w Red Hat, Ubuntu, Debian, Oracle Linux, Amazon Linux
Wersje zagrożone
Git przed 2.43.7 oraz 2.44.0 do 2.44.3, 2.45.0 do 2.45.3, 2.46.0 do 2.46.3, 2.47.0 do 2.47.2, 2.48.0 do 2.48.1, 2.49.0, 2.50.0. Atak wymaga pobrania przygotowanego projektu z podmodułami
Wersje bezpieczne
Git 2.43.7, 2.44.4, 2.45.4, 2.46.4, 2.47.3, 2.48.2, 2.49.1, 2.50.1 i nowsze (najnowsze stabilne wydanie: 2.55.0); Xcode 26.0; aktualizacje Visual Studio z lipca 2025; poprawki dystrybucji Linux
Typ podatności
Podążanie za dowiązaniem i konflikt interpretacji; CWE-59 i CWE-436 (wg GitHub); Red Hat: niewłaściwa obsługa znaków końca wiersza
Ocena CVSS
8.0 WYSOKA (CVSS 3.1, GitHub; potwierdzona przez Red Hat); 8.1 wg ENISA przy tym samym wektorze. Atak przez sieć, wysoka złożoność, wymaga niskich uprawnień i udziału użytkownika (pobranie projektu), skutek wychodzi poza Git
2. O CO CHODZI W PROSTYCH SŁOWACH?
Wyobraź sobie firmę kurierską, w której drukarka etykiet i sortownia czytają adres inaczej. Nadawca pisze adres poprawnie, ale na końcu nazwy ulicy jest niewidoczny znak. Drukarka go pomija, sortownia go uwzględnia, więc paczka trafia pod inny numer. Jeśli ktoś celowo tak przygotuje paczkę, może ją skierować prosto do pomieszczenia, w którym każda dostarczona przesyłka jest automatycznie otwierana i wykonywana.
Tak działa ta luka. Podmoduł, czyli dołączany do projektu cudzy kod, trafia przez niewidoczny znak do innego katalogu niż zapisany w konfiguracji. Napastnik kieruje go do miejsca, gdzie Git trzyma skrypty uruchamiane automatycznie po pobraniu. Programista nic nie widzi, a skrypt działa z jego uprawnieniami, czyli z dostępem do kluczy serwerów i haseł.
💡 Git to narzędzie, które przechowuje historię zmian w kodzie i pozwala pobierać projekty. Podmoduł to inny projekt dołączony do głównego z zewnętrznego adresu. Dowiązanie symboliczne (symlink) to wpis udający katalog, który wskazuje inne miejsce na dysku. Hook to skrypt uruchamiany automatycznie przy operacjach Git. Serwer budujący (CI) to maszyna, która automatycznie pobiera kod i buduje z niego aplikację.
Scenariusz
Normalnie
Z podatnością
Programista pobiera przykładowy projekt z internetu
Pobiera pliki, nic się nie uruchamia
Skrypt napastnika uruchamia się po pobraniu
Ścieżka podmodułu w konfiguracji
Zapisana i odczytana tak samo
Niewidoczny znak zmienia miejsce docelowe
Klucze do serwerów na laptopie
Używane przez programistę
Dostępne dla skryptu napastnika
Serwer budujący pobiera zależności
Automatycznie i bezpiecznie
Automatycznie wykonuje obcy kod, bez człowieka, który by to zauważył
Aktualizacja samego Gita
Zamyka sprawę
Nie obejmuje kopii Gita wbudowanych w Visual Studio lub Xcode
źródło: Pexels, Pavel Danilyuk
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, by ofiara sama pobrała przygotowany projekt, więc zaczyna się od przynęty, a nie od skanowania internetu. CISA ocenia atak jako nieautomatyzowalny, ze skutkiem całkowitym.
Etap
Czas
Akcja hakerów
Wynik
1. Przygotowanie
T+0
Publikacja atrakcyjnego projektu (przykład, biblioteka, zadanie rekrutacyjne) z podmodułem, dowiązaniem i skryptem
Gotowa przynęta
2. Przynęta
T+dni
Podsunięcie projektu programiście lub dodanie go jako zależności w projekcie budowanym automatycznie
Ofiara pobiera projekt z podmodułami
3. Uruchomienie
T+sekundy od pobrania
Skrypt wykonuje się automatycznie po pobraniu
Kod napastnika działa na laptopie lub serwerze budującym
4. Kradzież kluczy
T+minuty
Odczyt kluczy SSH, tokenów do repozytoriów, haseł do chmury i baz
Dostęp do infrastruktury firmy
5. Wykorzystanie
T+dni
Wejście na serwery produkcyjne, podmiana kodu w procesie wdrożenia
Zainfekowane wydania, wyciek danych
6. Skutek
T+tygodnie
Kradzież danych, nadużycia w chmurze, atak na klientów firmy
🔴 Scenariusz 1: programista na Macu pobiera „przykładowy projekt” polecony na forum, a skrypt w tle kopiuje jego klucze SSH do serwerów produkcyjnych klienta.
🔴 Scenariusz 2: serwer budujący w firmie automatycznie pobiera podmoduły z zewnętrznych adresów; przejęty podmoduł wykonuje kod z dostępem do środowiska produkcyjnego.
🔴 Scenariusz 3: kandydat do pracy dostaje „zadanie rekrutacyjne” w repozytorium, a pobranie go na firmowym laptopie daje napastnikowi dostęp do sieci firmy.
4. DLACZEGO TO RYZYKO DLA TWOJEJ FIRMY?
Laptop programisty i serwer budujący mają dostęp do kluczy, haseł i systemów wdrożeniowych. Luka zamienia pobranie cudzego kodu w uruchomienie cudzego programu z tymi uprawnieniami. Dodatkowo Git jest wbudowany w wiele produktów, więc jedna aktualizacja nie zamyka sprawy.
Obszar biznesu
Potencjalny wpływ
Czas do wystąpienia
Koszty szacunkowe
Operacyjny
Wymiana kluczy, przegląd procesu wdrożeń, reinstalacja laptopów i serwerów budujących
Dni
20 tys. do 150 tys. PLN
Bezpieczeństwo danych
Kradzież kodu źródłowego, kluczy, danych z systemów produkcyjnych
Minuty od pobrania
30 tys. do 250 tys. PLN (analiza powłamaniowa)
Finansowy
Nadużycia w chmurze, koszty specjalistów, przegląd wydań aplikacji
Tygodnie
50 tys. do 500 tys. PLN
Reputacyjny
Zainfekowana wersja aplikacji u klientów
Miesiące
50 tys. do 500 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); odpowiedzialność wobec klientów, dla których tworzono oprogramowanie
72 godziny od wykrycia
20 tys. do 150 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.
Interpretacja: wpływ jest wysoki (wykonanie kodu z dostępem do kluczy i procesu wdrożeń), a prawdopodobieństwo średnie, bo atak wymaga pobrania przygotowanego projektu i nie da się go zautomatyzować; w firmach, gdzie serwery budujące automatycznie pobierają zewnętrzne podmoduły, ryzyko jest wyższe.
5. CO MUSISZ ZROBIĆ NATYCHMIAST?
Lp.
Priorytet
Działanie
Termin
Odpowiedzialny
1
🔴 NATYCHMIAST
Spisać wszystkie miejsca, gdzie pobiera się kod: laptopy, serwery budujące, kontenery z narzędziami, komputery z Xcode lub Visual Studio
Dziś
Kierownik zespołu programistów / DevOps
2
🔴 NATYCHMIAST
Zaktualizować Git na serwerach budujących i w obrazach kontenerów
Dziś
DevOps
3
🟠 PILNIE
Zaktualizować Git, Xcode (do 26.0 lub nowszego) i Visual Studio na laptopach programistów
Do 3 dni
Programiści / dział IT
4
🟠 PILNIE
Zaktualizować pakiety Git w systemach Linux (Red Hat, Ubuntu, Debian, Oracle, Amazon Linux)
Do 3 dni
Administrator systemów
5
🟠 PILNIE
Wprowadzić zasadę: projektów z niezaufanych źródeł nie pobierać z automatycznymi podmodułami (--recursive)
Do 7 dni
Kierownik zespołu
6
🟡 WAŻNIE
Sprawdzić, które zewnętrzne adresy serwer budujący pobiera automatycznie i kto zatwierdza tę listę
Do 30 dni
CTO / DevOps
7
🟡 WAŻNIE
Ograniczyć klucze na laptopach programistów, oddzielić klucze produkcyjne od roboczych
Do 30 dni
CTO
Jeśli aktualizacja nie jest dostępna
Poprawki są dostępne od lipca 2025 roku dla wszystkich wspieranych gałęzi Git i w produktach z nim zintegrowanych. Do czasu aktualizacji pomagają poniższe zasady. Oceny efektywności to ocena ekspercka.
Czasowa miara ochronna
Efektywność
Łatwość wdrożenia
Niepobieranie niezaufanych projektów z opcją automatycznych podmodułów, ręczny przegląd podmodułów (zalecenie Red Hat)
Wysoka dla pojedynczych programistów
Łatwa
Blokada automatycznego pobierania zewnętrznych podmodułów na serwerach budujących
Wysoka
Średnia
Pobieranie nieznanych projektów w odizolowanym środowisku bez kluczy firmowych
Wysoka
Średnia
Ograniczenie kluczy przechowywanych na laptopach
Średnia: ogranicza skutki
Średnia
Przed i po działaniu
Stan
Przed działaniem
Po działaniu
Pobranie cudzego projektu
Może uruchomić obcy skrypt
Ścieżki podmodułów obsługiwane poprawnie
Wiedza o miejscach z Gitem
Tylko „programiści mają Gita”
Lista laptopów, serwerów, kontenerów i środowisk IDE
Serwer budujący
Pobiera podmoduły bez kontroli
Lista zatwierdzonych źródeł
Klucze na laptopach
Pełny dostęp do produkcji
Oddzielone i ograniczone
Zgodność z terminem CISA
Zaległość od 15 września 2025
Luka zamknięta i udokumentowana
6. KONTEKST I SKALA ZAGROŻENIA
Aspekt
Informacja
Czy jest wykorzystywana?
TAK (potwierdzone przez CISA); atak nieautomatyzowalny, skutek całkowity
Grupy przestępcze
Brak publicznych informacji
Kampanie ransomware
Brak potwierdzenia (CISA: Unknown)
Ocena CVSS
8.0 WYSOKA (CVSS 3.1, GitHub i Red Hat); 8.1 wg ENISA
PoC dostępny publicznie?
Brak publicznych informacji w źródłach; mechanizm jest szczegółowo opisany w komunikacie projektu
Liczba atakowanych firm
Brak publicznych informacji
Prognoza EPSS
Około 4%, wzrost z niecałych 3% w ciągu miesiąca (wg analizy źródłowej)
Zasięg poprawek
Git (8 gałęzi), Visual Studio 2017/2019/2022, Xcode 26.0, Red Hat, Ubuntu, Debian, Oracle Linux, Amazon Linux
Sygnały zagrożenia dla CVE-2025-48384CVSS 3.1 (GitHub) 8.0/10 ████████████████░░░░ WYSOKASkutek wg CISA (SSVC) total ████████████████████ CAŁKOWITYCISA KEV TAK ████████████████████ ataki potwierdzoneEPSS (wg źródła) ~4% █░░░░░░░░░░░░░░░░░░░ rośnieWymaga udziału ofiary TAK ██████████░░░░░░░░░░ pobranie projektu
2025-07-08 Wydanie poprawek Git i publikacja CVE-2025-483842025-07 Microsoft publikuje aktualizacje Visual Studio2025-08-25 CISA dodaje lukę do katalogu KEV2025-08-26 CISA ocenia: aktywne wykorzystanie, skutek całkowity2025-09-15 Termin naprawy wg CISA dla agencji federalnych2026-06-17 Ostatnia aktualizacja wpisu w NVD ... rok od terminu CISA2026-09-17: TUTAJ JESTEŚMY
7. BEZPOŚREDNI LINK DO DZIAŁANIA: checklista dla CTO/CFO
Zapytać zespół lub wykonawcę: gdzie w firmie pobiera się kod i jaka jest tam wersja Gita
CTO
DZISIAJ
2
Potwierdzić aktualizację Gita na serwerach budujących
CTO
DZISIAJ
3
Zatwierdzić zasadę niepobierania niezaufanych projektów z automatycznymi podmodułami
CTO
DZISIAJ
4
Uzyskać potwierdzenie aktualizacji Xcode i Visual Studio na laptopach
CTO
DO JUTRA
5
Zapytać wykonawcę, czy jego serwer budujący pobiera cokolwiek automatycznie z zewnątrz
CTO
DO JUTRA
6
Sprawdzić rachunki za chmurę i repozytoria pod kątem nietypowej aktywności
CFO
DO JUTRA
7
Dopisać do umów z wykonawcami wymóg aktualizacji narzędzi programistycznych
CFO
DO JUTRA
8. PYTANIA DO TWOJEGO ZESPOŁU IT
#
Pytanie
Odpowiedź
Priorytet
1
Jaka wersja Gita działa na serwerach budujących i w obrazach kontenerów?
[wersja]
🔴
2
Czy laptopy programistów mają Git, Xcode i Visual Studio z poprawką?
TAK / NIE
🔴
3
Czy serwer budujący pobiera podmoduły z zewnętrznych adresów automatycznie?
TAK / NIE
🔴
4
Kiedy zaktualizowano pakiety Git w systemach Linux?
[data]
🟠
5
Czy klucze do serwerów produkcyjnych leżą na laptopach programistów?
TAK / NIE
🟠
6
Czy mamy zasadę pobierania nieznanych projektów w odizolowanym środowisku?
TAK / NIE
🟡
7
Kto zatwierdza listę zewnętrznych źródeł kodu używanych w projektach?
[osoba]
🟡
Pytania diagnostyczne dla managera
✓ Czy wiem, ile miejsc w firmie pobiera kod z internetu?
✓ Czy laptop programisty jest traktowany jako urządzenie o wysokich uprawnieniach?
✓ Czy zadania rekrutacyjne i przykładowe projekty są otwierane na firmowych komputerach?
✓ Czy aktualizacja popularnego składnika obejmuje u nas wszystkie produkty, które go zawierają?
✓ Czy wykonawcy oprogramowania raportują nam stan aktualizacji swoich narzędzi?
Podsumowanie
CVE-2025-48384 pozwala uruchomić skrypt napastnika po pobraniu spreparowanego projektu z podmodułami, z uprawnieniami programisty lub serwera budującego. CISA potwierdza ataki, a poprawki są dostępne od lipca 2025 roku w Git, Visual Studio, Xcode i dystrybucjach Linux. Aktualizacja wszystkich miejsc, gdzie pobiera się kod, i ostrożność wobec niezaufanych projektów zamykają to ryzyko.
Czytaj dalej
Powiązane artykuły
Zestaw zmienia się codziennie, więc przy kolejnej wizycie zobaczysz inny wycinek bloga.
Błąd w NetScaler ADC i Gateway, opisany przez producenta jako awaria, pozwala według badaczy przejąć bramę VPN bez hasła. Publiczny kod istnieje, ataki trwają. Zaktualizuj urządzenia i sprawdź ślady włamania.
Przepełnienie bufora w FortiOS i FortiSwitchManager pozwala bez hasła uruchomić kod na zaporze. CISA potwierdza ataki, a przestępcy instalują trojana PivotC2. Zaktualizuj FortiOS i sprawdź zapory pod kątem włamania.
Błąd w logowaniu platformy Kestra OSS pozwala bez hasła tworzyć i uruchamiać przepływy pracy, czyli wykonywać dowolne polecenia jako root. Microsoft opisał włamanie, CISA potwierdza ataki. Zaktualizuj dziś.
Klikając „Akceptuję”, zgadzasz się na przechowywanie plików cookie przez UXU w celu poprawy działania strony, analizy i wsparcia działań marketingowych.