Pět zranitelností v Git, z nichž jedna je kritická a dvě nebezpečné

Byly uvolněny opravy pro distribuovaný systém správy verzí Git 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2 a 2.39.4, které odstranily pět zranitelností. Nejzávažnější zranitelnost (CVE-2024-32002) klasifikovaná jako kritická, umožňuje spuštění kódu útočníka během klonování pomocí příkazu „git clone“ repozitáře, který je pod kontrolou útočníka.

Zranitelnost se projevuje pouze na souborových systémech, které nerozlišují velikost písmen a podporují symbolické odkazy, například výchozí na Windows a macOS. Využití této zranitelnosti se provádí vytvořením v submodulu adresáře a symbolického odkazu, které se liší pouze velikostí písmen, což umožňuje zápis souborů do adresáře .git/, místo do pracovního adresáře submodulu. Získáním možnosti zápisu do .git/ může útočník přepsat hooky přes .git/hooks a dosáhnout provedení libovolného kódu při operaci „git clone“.

Další zranitelnosti:

  • CVE-2024-32004 — útočník v multilicenčním systému může připravit speciálně zformovaný místní repozitář a dosáhnout provedení kódu při jeho klonování. Útočník může vytvořit místní repozitář, který vypadá jako částečný klon, v němž chybí určitý objekt. Klonování tohoto repozitáře povede k provedení kódu s právy uživatele vykonávajícího klonování.
  • CVE-2024-32465 — klonování ze zip archivů, které obsahují kompletní git repozitář včetně hooků v adresáři .git/, povede k provedení těchto hooků.
  • CVE-2024-32020 — vytváření místních klonů repozitáře na stejném disku v multilicenčním systému umožňuje ostatním uživatelům měnit soubory, pro které jsou použity tvrdé odkazy.
  • CVE-2024-32021 — klonování místního repozitáře se symbolickými odkazy může být použito k vytvoření tvrdých odkazů na libovolné soubory v adresáři objects/.

Kromě odstranění zranitelností v nových verzích byly navrženy také některé změny, které mají za cíl zvýšit ochranu proti zranitelnostem vedoucím k vzdálenému spuštění kódu a manipulaci se symbolickými odkazy při provádění klonování. Například, git nyní vydává varování, pokud jsou v adresáři .git/ přítomny symbolické odkazy. Cesty k submodulům nyní mohou obsahovat pouze skutečné adresáře. Při prolínání symbolických odkazů a adresářů jsou zpracovávány adresáře. Při provádění „git clone“ byla přidána ochrana před spuštěním hooků během klonování a posílena kontrola parametru core.hooksPath.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster