Katalog CVE

CVE-2026-67323

WysokieCVSS 8.4
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Podwyższone ryzyko
1.02%

Percentyl 60 - wyżej niż 60% wszystkich znanych CVE

Streszczenie

GitPython przed wersją 3.1.51 nie zabezpiecza przed niebezpiecznymi opcjami Git przekazywanymi jako argumenty słownikowe w metodach Repo.archive() i git.ls_remote(), co umożliwia wstrzyknięcie poleceń przez opcje takie jak --exec/--upload-pack. Dodatkowo, Repo.iter_commits() i Repo.blame() nie sprawdzają argumentów rewizji zaczynających się od myślnika, co pozwala na otwarcie i obcięcie dowolnego pliku poprzez rewizję --output=<path>. Wymagana jest aplikacja przekazująca kontrolowane przez atakującego argumenty do tych metod.

Ocena ryzyka

Atakujący może zdalnie wykonać dowolne polecenia systemowe lub odczytać/zapisać dowolne pliki, co prowadzi do pełnej kompromitacji serwera i wycieku danych.

Rekomendacja

Zaktualizuj GitPython do wersji 3.1.51 lub nowszej. Sprawdź, czy aplikacja nie przekazuje niesprawdzonych danych wejściowych do metod Repo.archive(), git.ls_remote(), Repo.iter_commits() i Repo.blame().

Inne podatności w GitPython

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

GitPython before 3.1.51 fails to guard against dangerous Git options passed as keyword arguments in Repo.archive() and git.ls_remote(), allowing command injection via options such as --exec/--upload-pack (leading to arbitrary command execution). Additionally, Repo.iter_commits() and Repo.blame() do not check for leading-dash revision arguments, so a revision like --output=<path> can cause Git to open and truncate an arbitrary file. Exploitation requires an application that passes attacker-controlled arguments to these methods.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS