Aktualizace Git s 8 opravenými chybami zabezpečení

Publikováno opravná vydání distribuovaného systému řízení zdrojů 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 a 2.14.62.24.1 XNUMX, který opravoval zranitelnosti, které umožňovaly útočníkovi přepisovat libovolné cesty v systému souborů, organizovat vzdálené spuštění kódu nebo přepisovat soubory v adresáři „.git/“. Většina problémů identifikovaných zaměstnanci
Microsoft Security Response Center, pět z osmi chyb zabezpečení je specifických pro platformu Windows.

  • CVE-2019-1348 — streamovací příkaz „feature export-marks=path“umožňuje zapisovat štítky do libovolných adresářů, které lze použít k přepsání libovolných cest v systému souborů při provádění operace „git fast-import“ s nekontrolovanými vstupními daty.
  • CVE-2019-1350 - nesprávné escapování argumentů příkazového řádku mohlo by vést ke vzdálenému spuštění kódu útočníka během rekurzivního klonování pomocí ssh:// URL. Nesprávně byly zpracovány zejména escapující argumenty končící zpětným lomítkem (například „test \“). V tomto případě při rámování argumentu dvojitými uvozovkami byla poslední uvozovka escapována, což umožnilo uspořádat substituci vašich voleb na příkazovém řádku.
  • CVE-2019-1349 — při rekurzivním klonování submodulů („klon —recurse-submodules“) v prostředí Windows za určitých podmínek to může být spouštět použití stejného adresáře git dvakrát (.git, git~1, git~2 a git~N jsou v NTFS rozpoznány jako jeden adresář, ale tato situace byla testována pouze pro git~1), který by mohl být použit k uspořádání zápis do adresáře ".git". Aby mohl útočník organizovat provádění svého kódu, může například nahradit svůj skript pomocí obslužné rutiny post-checkout v souboru .git/config.
  • CVE-2019-1351 — obslužná rutina pro písmena názvů jednotek v cestách systému Windows při překladu cest jako „C:\“ byla navržena pouze k nahrazení jednopísmenných latinských identifikátorů, ale nebrala v úvahu možnost vytváření virtuálních jednotek přiřazených prostřednictvím „subst letter:path“ . S takovými cestami se zacházelo nikoli jako s absolutními, ale jako s relativními cestami, což umožnilo při klonování škodlivého úložiště uspořádat záznam v libovolném adresáři mimo pracovní strom adresářů (například při použití čísel nebo znaků unicode na disku jméno - „1:\co\the\ hex.txt“ nebo „ä:\tschibät.sch“).
  • CVE-2019-1352 — při práci na platformě Windows použití alternativních datových toků v NTFS, vytvořených přidáním atributu „:stream-name:stream-type“ k názvu souboru, povoleno přepsat soubory v adresáři ".git/" při klonování škodlivého úložiště. Například název ".git::$INDEX_ALLOCATION" v NTFS byl považován za platný odkaz na adresář ".git".
  • CVE-2019-1353 — při použití Gitu v prostředí WSL (Windows Subsystem for Linux) při přístupu k pracovnímu adresáři nepoužívá ochrana proti manipulaci s názvy v NTFS (útoky prostřednictvím překladu jmen FAT byly možné, například „.git“ bylo možné přistupovat přes adresář „git~1“).
  • CVE-2019-1354 -
    příležitost zapisuje do adresáře ".git/" na platformě Windows při klonování škodlivých úložišť obsahujících soubory se zpětným lomítkem v názvu (například "a\b"), což je přijatelné pro Unix/Linux, ale je akceptováno jako součást cestu ve Windows.

  • CVE-2019-1387 — nedostatečná kontrola názvů submodulů by mohla být použita k organizaci cílených útoků, které by při rekurzivním klonování mohly potenciálně mohlo by vést spustit kód útočníka. Git nezabránil vytvoření adresáře submodulu v adresáři jiného submodulu, což by ve většině případů vedlo pouze ke zmatku, ale ani potenciálně nezabránil přepsání obsahu jiného modulu během procesu rekurzivního klonování (například adresáře submodulu "hippo" a "hippo/hooks" jsou umístěny jako ".git/modules/hippo/" a ".git/modules/hippo/hooks/" a adresář hooks v hrochu lze samostatně použít k hostování spouštěných háčků.

Uživatelům Windows se doporučuje, aby okamžitě aktualizovali svou verzi Git a do aktualizace se zdrželi klonování neověřených úložišť. Pokud ještě není možné urgentně aktualizovat verzi Git, pak se pro snížení rizika útoku doporučuje nespouštět „git clone —recurse-submodules“ a „git submodule update“ s nekontrolovanými repozitáři, nepoužívat „git rychlý import“ s nekontrolovanými vstupními proudy a nikoli ke klonování repozitářů do oddílů založených na NTFS.

Pro větší bezpečnost nové verze také zakazují použití konstrukcí ve tvaru "submodule.{name}.update=!command" v .gitmodules. U distribucí můžete na stránkách sledovat vydání aktualizací balíčků Debian,ubuntu, RHEL, SUSE/openSUSE, Fedora, Oblouk, ALT, FreeBSD.

Zdroj: opennet.ru

Přidat komentář