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.

W przypadku podania URL takiego jak «https://evil.com?host=github.com/», obsługa danych uwierzytelniających podczas łączenia się z hostem evil.com przekaże parametry autoryzacji, utworzone dla github.com. Problem ujawnia się podczas wykonywania operacji takich jak „git clone”, w tym podczas przetwarzania URL dla submodułów (na przykład podczas wykonywania „git submodule update” automatycznie będą przetwarzane URL podane w pliku .gitmodules z repozytorium). Największe zagrożenie ta podatność stwarza w sytuacjach, gdy programista klonuje repozytorium nie widząc URL, np. pracując z submodułami, lub w systemach wykonujących automatyczne działania, takich jak skrypty 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 solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster