Ranjivosti u Gitu prilikom kloniranja podmodula i korištenja git shell-a

Objavljena su korektivna izdanja distribuiranog sistema za kontrolu izvora Git 2.38.1, 2.30.6, 2.31.5, 2.32.4, 2.33.5, 2.34.5, 2.35.5, 2.36.3 i 2.37.4, koja popravljaju dvije ranjivosti, koje se pojavljuju kada koristite naredbu “git clone” u “—recurse-submodules” modu sa neprovjerenim spremištima i kada koristite “git shell” interaktivni način. Objavljivanje ažuriranja paketa u distribucijama možete pratiti na stranicama Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.

  • CVE-2022-39253 - Ranjivost omogućava napadaču koji kontroliše sadržaj kloniranog spremišta da dobije pristup povjerljivim podacima na korisnikovom sistemu postavljanjem simboličkih veza do datoteka od interesa u direktorij $GIT_DIR/objects kloniranog spremišta. Problem se javlja samo kod lokalnog kloniranja (u "--local" modu, koji se koristi kada su ciljni i izvorni podaci klona na istoj particiji) ili kada se klonira zlonamjerno spremište upakovano kao podmodul u drugom spremištu (na primjer, kada rekurzivno uključujete podmodule sa naredbom "git clone" --recurse-submodules").

    Ranjivost je uzrokovana činjenicom da u “--local” načinu kloniranja, git prenosi sadržaj $GIT_DIR/objects u ciljni direktorij (kreira čvrste veze ili kopije fajlova), izvršavajući dereferenciranje simboličkih veza (tj. rezultat toga, nesimboličke veze se kopiraju u ciljni direktorij, ali direktno datoteke na koje veze upućuju). Da bi se blokirala ranjivost, nova izdanja git-a zabranjuju kloniranje spremišta u “--local” modu koji sadrže simboličke veze u direktoriju $GIT_DIR/objects. Dodatno, zadana vrijednost parametra protocol.file.allow je promijenjena u "user", što čini operacije kloniranja pomoću protokola file:// nesigurnim.

  • CVE-2022-39260 - Prekoračenje cijelog broja u funkciji split_cmdline() koja se koristi u naredbi "git shell". Problem se može koristiti za napad na korisnike koji imaju “git shell” kao svoju ljusku za prijavu i imaju omogućen interaktivni način (kreirana je datoteka $HOME/git-shell-commands). Iskorišćavanje ranjivosti može dovesti do izvršavanja proizvoljnog koda na sistemu prilikom slanja posebno dizajnirane komande veće od 2 GB.

izvor: opennet.ru

Dodajte komentar