Otkrivene su dvije ranjivosti u Gitu koje su dovele do curenja podataka i prepisivanja

ranjivost

Ako se iskoriste, ovi nedostaci mogu omogućiti napadačima da dobiju neovlašteni pristup osjetljivim informacijama ili općenito uzrokovati probleme

Nedavno najavljeno je objavljivanje raznih korektivnih verzija distribuirani sistem kontrole izvora Git koji se proteže od verzije 2.38.4 do verzije 2.30.8, koji sadrži dvije popravke koje uklanjaju poznate ranjivosti koje utječu na optimizaciju lokalnih klonova i naredbu "git apply".

Kao takvi, spominju se ova izdanja za održavanje treba da se pozabave dva bezbednosna pitanja identifikovan pod CVE-2023-22490 i CVE-2023-23946. Obje ranjivosti utiču na postojeće raspone verzija i korisnici se snažno ohrabruju da ažuriraju u skladu s tim.

Napadač može daljinski iskoristiti ranjivost za otkrivanje informacija. Takođe, napadač može
lokalno iskoristiti ranjivost za manipulaciju datotekama.

Za iskorištavanje ranjivosti potrebne su normalne privilegije. Obje ranjivosti zahtijevaju interakciju korisnika.

Prva identifikovana ranjivost je CVE-2023-22490, koji omogućava napadaču koji kontrolira sadržaj kloniranog spremišta da dobije pristup osjetljivim podacima na korisnikovom sistemu. Dvije mane doprinose ranjivosti:

  • Prva mana omogućava, kada se radi sa namenski izgrađenim repozitorijumom, da se postigne upotreba lokalnih optimizacija kloniranja čak i kada se koristi transport koji je u interakciji sa spoljnim sistemima.
  • Druga mana omogućava postavljanje simboličke veze umjesto direktorija $GIT_DIR/objects, slično ranjivosti CVE-2022-39253, koja je blokirala postavljanje simboličkih veza u direktorij $GIT_DIR/objects, ali činjenica da je $GIT_DIR/objects sam direktorij nije provjeren možda je simbolična veza.

U režimu lokalnog kloniranja, git premješta $GIT_DIR/objects u ciljni direktorij dereferenciranjem simboličnih veza, uzrokujući 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 s vanjskim spremištima (na primjer, rekurzivno uključivanje podmodula s naredbom "git clone --recurse-submodules" može dovesti do kloniranja zlonamjernog spremišta upakovano kao podmodul u drugom spremištu).

Koristeći posebno napravljeno spremište, Git se može prevariti njegova lokalna optimizacija klona čak i kada se koristi ne-lokalni transport.
Iako će Git otkazati lokalne klonove čiji je izvor $GIT_DIR/objects direktorij sadrži simboličke veze (cf, CVE-2022-39253), objekte sam direktorij i dalje može biti simbolička veza.

Ova dva se mogu kombinovati da bi se uključile proizvoljne datoteke na osnovu putanje u sistemu datoteka žrtve unutar zlonamjernog spremišta i radna kopija, koja omogućava eksfiltraciju podataka slično kao
CVE-2022-39253.

Druga otkrivena ranjivost je CVE-2023-23946 i to omogućava prepisivanje sadržaja datoteka izvan direktorija radi propuštanjem posebno formatiranog unosa u naredbu "git apply".

Na primjer, napad se može izvesti kada se zakrpe koje je pripremio napadač obrađuju u git app-u. Da sprečite zakrpe da kreiraju fajlove izvan radne kopije, "git apply" blokira obradu zakrpa koje pokušavaju da napišu fajl koristeći simbolične veze. Ali pokazalo se da je ova zaštita zaobiđena stvaranjem simbolične veze.

Fedora 36 i 37 imaju sigurnosna ažuriranja u statusu 'testiranja' koji ažuriraju 'git' na verziju 2.39.2.

Ranjivosti su takođe adresiraju sa GitLab 15.8.2, 15.7.7 i 15.6.8 u Community Edition (CE) i Enterprise Edition (EE).

GitLab klasifikuje ranjivosti kao kritične jer CVE-2023-23946 dozvoljava izvršavanje proizvoljnog programskog koda u Gitaly okruženju (Git RPC servis).
U isto vrijeme, ugrađeni Python će biti Ažurirajte na verziju 3.9.16 da popravite više ranjivosti.

Konačno Za one koji su zainteresovani da saznaju više o tome, možete pratiti izdavanje ažuriranja paketa u distribucijama na stranicama DebianUbuntuRHELSUSE/openSUSEfedorasvodFreeBSD.

Ako nije moguće instalirati ažuriranje, preporučuje se kao zaobilazno rješenje izbjegavanje pokretanja “git clone” s opcijom “–recurse-submodules” na nepouzdanim spremištima i ne korištenje naredbi “git apply” i “git am”. sa kodom koji nije verifikovan.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.