Git w wersjach przed 2.19.2 na systemach Linux i UNIX może wykonywać polecenia z bieżącego katalogu roboczego, traktując go jak element zmiennej $PATH. Podatność umożliwia nieuprzywilejowanemu atakującemu zdalne wykonanie dowolnego kodu bez interakcji użytkownika.
▸ Pokaż oryginał (EN)
Git before 2.19.2 on Linux and UNIX executes commands from the current working directory (as if '.' were at the end of $PATH) in certain cases involving the run_command() API and run-command.c, because there was a dangerous change from execvp to execv during 2017.
W wyniku zmiany funkcji z execvp na execv wprowadzonej w 2017 roku w pliku run-command.c, API run_command() zaczęło wyszukiwać wykonywalne pliki również w bieżącym katalogu roboczym — tak jakby '.' znajdowało się na końcu zmiennej środowiskowej $PATH. Atakujący, który umieści złośliwy plik wykonywalny w katalogu, w którym użytkownik uruchamia polecenia Git, może doprowadzić do jego wykonania zamiast lub obok zamierzonego polecenia systemowego. Jest to klasyczna podatność typu untrusted search path (CWE-426).
Atakujący może doprowadzić do wykonania dowolnego kodu w kontekście użytkownika uruchamiającego Git, co może skutkować przejęciem systemu, kradzieżą danych lub eskalacją uprawnień.
Należy zaktualizować Git do wersji 2.19.2 lub nowszej. Użytkownicy Red Hat powinni zastosować erratę RHSA-2018:3800. Ogólnie należy unikać uruchamiania poleceń Git w katalogach, do których zapisu mają dostęp nieuprzywilejowani użytkownicy lub zewnętrzne procesy.
Git przed wersją 2.19.2 na systemach Linux i UNIX; dotyczy również dystrybucji Linux takich jak Canonical Ubuntu Linux oraz środowisk korzystających z Linux Kernel
Podatność wynikła z konkretnej zmiany w kodzie (zastąpienie execvp przez execv) wprowadzonej w 2017 roku w pliku run-command.c. Poprawka dostępna jest w commicie 321fd82389742398d2924640ce3a61791fd27d60 w repozytorium kernel.org.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HCanonical Ubuntu
OSCanonical18.0418.10Git Scm Git
APPGit-Scm< 2.19.2Linux Kernel
OSLinuxwszystkie wersje
Powiązane podatności
Type confusion w V8 (Google Chrome) — zdalne uszkodzenie sterty
Sudo: eskalacja uprawnień do root poprzez opcję --chroot (CVE-2025-32463)
Commvault Command Center – nieuwierzytelniony RCE przez path traversal w ZIP
RCE przez YAML deserialization w IBM Aspera Faspex
RCE w VMware Workspace ONE Access i Identity Manager poprzez server-side template injection