Chyby zabezpečení v Gitu při klonování submodulů a používání shellu git

Byly zveřejněny opravné verze distribuovaného systému ovládání zdrojového kódu 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 a 2.37.4, které opravují dvě zranitelnosti , které se objevují při použití příkazu „git clone“ v režimu „—recurse-submodules“ s nekontrolovanými repozitáři a při použití interaktivního režimu „git shell“. Vydání aktualizací balíčků v distribucích můžete sledovat na stránkách Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.

  • CVE-2022-39253 – Tato chyba zabezpečení umožňuje útočníkovi, který kontroluje obsah klonovaného úložiště, získat přístup k důvěrným datům v systému uživatele umístěním symbolických odkazů na soubory, které vás zajímají, do adresáře $GIT_DIR/objects klonovaného úložiště. Problém se objevuje pouze při klonování lokálně (v režimu „--local“, který se používá, když jsou cílová a zdrojová data klonu ve stejném oddílu) nebo při klonování škodlivého úložiště zabaleného jako submodul do jiného úložiště (např. při rekurzivním zahrnutí submodulů pomocí příkazu "git clone" --recurse-submodules").

    Zranitelnost je způsobena skutečností, že v režimu klonování „--local“ git přenáší obsah $GIT_DIR/objects do cílového adresáře (vytváří pevné odkazy nebo kopie souborů), přičemž provádí dereferenci symbolických odkazů (tj. výsledkem jsou nesymbolické odkazy zkopírovány do cílového adresáře, ale přímo soubory, na které odkazy směřují). Aby byla zranitelnost zablokována, nová vydání git zakazují klonování repozitářů v režimu „--local“, které obsahují symbolické odkazy v adresáři $GIT_DIR/objects. Kromě toho byla výchozí hodnota parametru protocol.file.allow změněna na "user", což činí operace klonování pomocí protokolu file:// nebezpečné.

  • CVE-2022-39260 - Přetečení celého čísla ve funkci split_cmdline() použité v příkazu "git shell". Problém lze použít k útoku na uživatele, kteří mají jako přihlašovací shell „git shell“ a mají povolený interaktivní režim (byl vytvořen soubor $HOME/git-shell-commands). Využití této chyby zabezpečení může vést ke spuštění libovolného kódu v systému při odesílání speciálně navrženého příkazu o velikosti větší než 2 GB.

Zdroj: opennet.ru

Přidat komentář