CVE-2024-52005
WysokieCVSS 8.8Streszczenie
Git podczas klonowania, pobierania lub wypychania przesyła komunikaty informacyjne i błędów z procesu zdalnego przez kanał sideband, poprzedzając je "remote:" i wypisując na standardowe wyjście błędów. Git nie chroni przed sekwencjami ucieczki ANSI, które złośliwy aktor może wykorzystać do ukrycia lub zafałszowania informacji bądź nakłonienia użytkownika do wykonania niezaufanych skryptów.
Ocena ryzyka
Atakujący może manipulować wyświetlanymi komunikatami w terminalu, ukrywać informacje lub nakłonić użytkownika do wykonania złośliwych poleceń podczas operacji Git z niezaufanym repozytorium.
Rekomendacja
Zaktualizuj Git do wersji zawierającej poprawkę; do czasu aktualizacji unikaj rekurencyjnego klonowania z niezaufanych źródeł.
Inne podatności w Git
Zobacz wszystkie- CVE-2017-14867Wysokie
Git w wersjach przed 2.10.5, 2.11.x przed 2.11.4, 2.12.x przed 2.12.5, 2.13.x przed 2.13.6 oraz 2.14.x przed 2.14.2 wykorzystuje niebezpieczne skrypty Perl do obsługi podkomend, co pozwala atakującym na wykonywanie dowolnych poleceń systemowych za pomocą metaznaków powłoki w nazwie modułu.
- CVE-2024-52006Wysokie
Git definiuje protokół liniowy używany do wymiany informacji między Git a pomocnikami poświadczeń. Niektóre ekosystemy (najbardziej prawdopodobnie chodzi o systemy, które używają tego protokołu) mogą być podatne na ataki związane z tym protokołem.
- CVE-2024-50349Średnie
Gdy Git prosi o poświadczenia przez monit terminala (bez użycia pomocnika poświadczeń), wypisuje nazwę hosta, dla którego są one żądane. Może to prowadzić do ujawnienia nazwy hosta w nieoczekiwanych kontekstach.
- CVE-2025-48385Wysokie
Git to szybki, skalowalny, rozproszony system kontroli wersji. Podczas klonowania repozytorium Git wie, że może opcjonalnie pobrać pakiet reklamowany przez zdalny serwer, co pozwala serwerowi na odciążenie.
- CVE-2023-29007Wysokie
Git przed wersjami 2.30.9, 2.31.8, 2.32.7, 2.33.8, 2.34.8, 2.35.8, 2.36.6, 2.37.7, 2.38.5, 2.39.3 i 2.40.1 zawiera błąd w obsłudze pliku .gitmodules, który pozwala na wstrzyknięcie dowolnej konfiguracji do $GIT_DIR/config podczas próby usunięcia sekcji podmodułu. Jeśli wstrzyknięte wartości określają programy do uruchomienia (np. core.pager, core.editor, core.sshCommand), może to prowadzić do zdalnego wykonania kodu.
- CVE-2015-7545Krytyczne
W programie Git przed wersją 2.3.10, 2.4.x przed 2.4.10, 2.5.x przed 2.5.4 oraz 2.6.x przed 2.6.1 występuje podatność, która nie ogranicza właściwie dozwolonych protokołów w programach pomocniczych zdalnych. Może to umożliwić zdalnym atakującym wykonanie dowolnego kodu poprzez URL w pliku .gitmodules lub innych nieznanych źródłach w submodule.
- CVE-2016-2324Krytyczne
Przepełnienie całkowitej liczby w Git przed wersją 2.7.4 umożliwia zdalnym atakującym wykonanie dowolnego kodu poprzez (1) długą nazwę pliku lub (2) wiele zagnieżdżonych drzew, co prowadzi do przepełnienia bufora w stercie.
- CVE-2016-2315Krytyczne
W wersjach git przed 2.7.4 występuje błąd w pliku revision.c, który wykorzystuje nieprawidłowy typ danych całkowitych. Umożliwia to zdalnym atakującym wykonanie dowolnego kodu poprzez (1) długą nazwę pliku lub (2) wiele zagnieżdżonych drzew, co prowadzi do przepełnienia bufora na stercie.
- CVE-2026-93326Średnie
Specjalnie spreparowany krok budowania źródła Git może obejść niektóre zasady walidacji. Złośliwa definicja budowania może sprawić, że repozytorium będzie wyglądać, jakby pochodziło z innego zdalnego adresu URL niż w rzeczywistości podczas klonowania Git. Jeśli polityka wykonuje bardziej rygorystyczną walidację, na przykład opartą na skrócie commit, danych commit lub podpisach, to wszystkie te walidacje nadal działają poprawnie.
- CVE-2025-69160Wysokie
Wersje Gita do 1.11 zawierają podatność na nieautoryzowane włączenie lokalnych plików.
Oryginalny opis (angielski, źródło NVD)
Git is a source code management tool. When cloning from a server (or fetching, or pushing), informational or error messages are transported from the remote Git process to the client via the so-called "sideband channel". These messages will be prefixed with "remote:" and printed directly to the standard error output. Typically, this standard error output is connected to a terminal that understands ANSI escape sequences, which Git did not protect against. Most modern terminals support control sequences that can be used by a malicious actor to hide and misrepresent information, or to mislead the user into executing untrusted scripts. As requested on the git-security mailing list, the patches are under discussion on the public mailing list. Users are advised to update as soon as possible. Users unable to upgrade should avoid recursive clones unless they are from trusted sources.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

