Ranjivosti u Gitu koje dovode do curenja podataka i prepisivanja

Objavljena su korektivna izdanja distribuiranog sistema za kontrolu izvora Git 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7 i 2.30.8 u kojima su ranjivosti su eliminisane, što utiče na optimizaciju lokalnih klonova i naredbu "git apply". Možete pratiti izdavanje ažuriranja paketa u distribucijama na stranicama Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Ako nije moguće instalirati ažuriranje, kao zaobilazno rješenje, preporučuje se izbjegavanje pokretanja "git clone" s opcijom "--recurse-submodules" na nepouzdanim spremištima i ne koristiti "git apply" i "git am " naredbe s nepouzdanim kodom.

  • Ranjivost CVE-2023-22490 omogućava napadaču koji kontroliše sadržaj kloniranog spremišta da dobije pristup poverljivim podacima na sistemu korisnika. Dvije mane doprinose nastanku ranjivosti:

    Prva mana omogućava, kada se radi sa posebno dizajniranim repozitorijumom, da se postigne korišćenje lokalnih optimizacija kloniranja čak i kada se koristi transport koji je u interakciji sa eksternim sistemima.

    Druga mana omogućava postavljanje simboličke veze umjesto direktorija $GIT_DIR/objects, slično ranjivosti CVE-2022-39253, u čijoj je popravci blokirano postavljanje simboličkih veza u direktorij $GIT_DIR/objects, ali činjenica da sam direktorij $GIT_DIR/objects nije provjeren može biti simbolična veza.

    U načinu lokalnog kloniranja, git premješta $GIT_DIR/objects u ciljni direktorij dereferenciranjem simboličkih veza, što uzrokuje da se referencirane datoteke kopiraju direktno u ciljni direktorij. Prebacivanje na korištenje lokalnih optimizacija kloniranja za nelokalni transport omogućava iskorištavanje ranjivosti pri radu sa vanjskim spremištima (na primjer, rekurzivno uključivanje podmodula sa naredbom "git clone --recurse-submodules" može dovesti do kloniranja zlonamjernog spremišta upakovanog kao podmodul u drugom spremištu).

  • Ranjivost CVE-2023-23946 dozvoljava prepisivanje sadržaja datoteka izvan radnog direktorija prosljeđivanjem posebno formatiranog unosa u komandu "git apply". Na primjer, napad se može izvršiti kada se zakrpe koje je pripremio napadač obrađuju u "git apply". Da bi zakrpe blokirale kreiranje datoteka izvan radne kopije, "git apply" blokira obradu zakrpa koje pokušavaju da napišu datoteku koristeći simboličke veze. Ali pokazalo se da je ova zaštita zaobiđena stvaranjem simboličke veze.

izvor: opennet.ru

Dodajte komentar