Git ažuriranje s 8 popravljenih ranjivosti

Objavljeno ispravna izdanja distribuiranog sustava za kontrolu izvora Git 2.24.1, 2.23.1, 2.22.2, 2.21.1, 2.20.2, 2.19.3, 2.18.2, 2.17.3, 2.16.6, 2.15.4 i 2.14.62.24.1 XNUMX, koji eliminiraju ranjivosti koje napadaču omogućuju prepisivanje proizvoljnih staza u datotečnom sustavu, organiziranje daljinskog izvršavanja koda ili prepisivanje datoteka u direktoriju “.git/”. Većina problema identificirani od strane zaposlenika
Microsoft Security Response Center, pet od osam ranjivosti specifične su za Windows platformu.

  • CVE-2019-1348 — naredba strujanja “feature export-marks=path”to omogućuje pisanje oznaka u proizvoljne direktorije, koje se mogu koristiti za prepisivanje proizvoljnih staza u datotečnom sustavu prilikom izvođenja operacije "git fast-import" s neprovjerenim ulaznim podacima.
  • CVE-2019-1350 - netočno izbjegavanje argumenata naredbenog retka može dovesti na daljinsko izvršavanje koda napadača tijekom rekurzivnog kloniranja pomoću ssh:// URL-a. Konkretno, izbjegavanje argumenata koji završavaju obrnutom kosom crtom (na primjer, "test \") nije ispravno obrađeno. U ovom slučaju, prilikom uokvirivanja argumenta dvostrukim navodnicima, zadnji navodnik je izbjegnut, što je omogućilo organiziranje zamjene vaših opcija u naredbenom retku.
  • CVE-2019-1349 — pri rekurzivnom kloniranju podmodula (“klon —rekurzivni-podmoduli”) u okruženju Windows pod određenim uvjetima to bi mogao biti pokreću korištenje istog git direktorija dva puta (.git, git~1, git~2 i git~N se prepoznaju kao jedan direktorij u NTFS-u, ali ova situacija je testirana samo za git~1), koji se može koristiti za organiziranje pisanje u direktorij ". git". Da bi organizirao izvođenje svog koda, napadač, na primjer, može zamijeniti svoju skriptu putem post-checkout rukovatelja u datoteci .git/config.
  • CVE-2019-1351 — rukovatelj nazivima pogona sa slovima u Windows stazama pri prevođenju staza kao što je "C:\" dizajniran je samo za zamjenu latiničnih identifikatora od jednog slova, ali nije uzeo u obzir mogućnost stvaranja virtualnih pogona dodijeljenih putem "subst letter:path" . Takve staze nisu tretirane kao apsolutne, već kao relativne staze, što je omogućilo, kada se klonira zlonamjerno spremište, da se organizira zapis u proizvoljnom direktoriju izvan stabla radnog direktorija (na primjer, kada se koriste brojevi ili unicode znakovi na disku naziv - “1:\što\hex.txt" ili "ä:\tschibät.sch").
  • CVE-2019-1352 — pri radu na Windows platformi, korištenje alternativnih tokova podataka u NTFS-u, stvorenih dodavanjem atributa “:stream-name:stream-type” u naziv datoteke, dozvoljeno prepisati datoteke u direktoriju ".git/" prilikom kloniranja zlonamjernog repozitorija. Na primjer, naziv ".git::$INDEX_ALLOCATION" u NTFS-u tretiran je kao važeća poveznica na direktorij ".git".
  • CVE-2019-1353 — kada koristite Git u WSL (Windows Subsystem for Linux) okruženju kada pristupate radnom direktoriju ne koristi se zaštita od manipulacije imenom u NTFS-u (mogući su bili napadi putem FAT prijevoda naziva, npr. “.git” se moglo pristupiti preko “git~1” direktorija).
  • CVE-2019-1354 -
    prilika zapisuje u direktorij ".git/" na Windows platformi prilikom kloniranja zlonamjernih repozitorija koji sadrže datoteke s kosom crtom unazad u nazivu (na primjer, "a\b"), što je prihvatljivo na Unix/Linuxu, ali je prihvaćeno kao dio put na Windowsima.

  • CVE-2019-1387 — nedovoljna provjera naziva podmodula mogla bi se koristiti za organiziranje ciljanih napada, koji bi, ako se rekurzivno kloniraju, potencijalno mogli može dovesti izvršiti napadačev kod. Git nije spriječio stvaranje direktorija podmodula unutar direktorija drugog podmodula, što bi u većini slučajeva samo dovelo do zabune, ali nije potencijalno spriječio da se sadržaj drugog modula prebriše tijekom procesa rekurzivnog kloniranja (na primjer, direktoriji podmodula "hippo" i "hippo/hooks" postavljaju se kao " .git/modules/hippo/" i ".git/modules/hippo/hooks/", a hooks direktorij u hippo može se zasebno koristiti za hostiranje pokrenutih hookova.

Korisnicima Windowsa savjetuje se da odmah ažuriraju svoju verziju Gita, a do ažuriranja suzdrže se od kloniranja neprovjerenih repozitorija. Ako još nije moguće hitno ažurirati Git verziju, da bi se smanjio rizik od napada, preporučuje se ne pokretati „git clone —recurse-submodules” i „git submodule update” s neprovjerenim spremištima, ne koristiti „git fast-import” s neprovjerenim ulaznim tokovima, a ne za kloniranje spremišta u particije temeljene na NTFS-u.

Za dodatnu sigurnost, nova izdanja također zabranjuju upotrebu konstrukata u obliku "submodule.{name}.update=!command" u .gitmodules. Za distribucije možete pratiti izdavanje ažuriranja paketa na stranicama Debian,Ubuntu, RHEL, SUSE/openSUSE, Fedora, Svod, ALT, FreeBSD.

Izvor: opennet.ru

Dodajte komentar