Korrekturversionen des verteilten Systems zur Verwaltung von Quelltexten Git 2.26.2, 2.25.4, 2.24.3, 2.23.3, 2.22.4, 2.21.3, 2.20.4, 2.19.5, 2.18.4 und 2.17.5, in denen Folgendes behoben wurde (), das ähnlich ist , welches in der vergangenen Woche behoben wurde. Die neue Schwachstelle betrifft auch die «credential.helper»-Handler und wird ausgenutzt, wenn eine speziell formatierte URL übertragen wird, die ein Zeilenumbruchzeichen, einen leeren Host oder ein nicht angegebenes Anforderungsschema enthält. Bei der Verarbeitung einer solchen URL sendet credential.helper Anmeldeinformationen, die nicht dem angeforderten Protokoll oder dem Host entsprechen, auf den zugegriffen wird.
Im Gegensatz zum vorherigen Problem mit der Ausnutzung der neuen Schwachstelle kann der Angreifer nicht direkt den Host kontrollieren, von dem die fremden Anmeldedaten übertragen werden. Welche Anmeldedaten verloren gehen, hängt von der speziellen Behandlung des fehlenden Parameters „host“ im credential.helper ab. Das Hauptproblem besteht darin, dass leere Felder in der URL von vielen credential.helper-Handlern als Anweisungen interpretiert werden, alle Anmeldedaten, die zur aktuellen Anfrage passen, zu verwenden. Somit kann der credential.helper die Anmeldedaten, die für einen anderen Server gespeichert sind, an den im URL angegebenen Angreifer-Server senden.
Das Problem tritt bei Operationen wie „git clone“ und „git fetch“ auf, ist aber am gefährlichsten bei der Verarbeitung von Submodulen — bei der Ausführung von „git submodule update“ werden automatisch die in der .gitmodules-Datei des Repositories angegebenen URLs verarbeitet. Als Workaround für das Blockieren des Problems sollte credential.helper bei Zugriff auf öffentliche Repositories nicht verwendet und „git clone“ im „—recurse-submodules“-Modus mit nicht überprüften Repositories vermieden werden.
In den neuen Git-Versionen vorgeschlagen wird der Aufruf von credential.helper für URLs, die enthalten (zum Beispiel bei Angabe von drei Schrägstrichen anstelle von zwei – „http:///host“ oder ohne Protokollschema – „http::ftp.example.com/“). Das Problem betrifft die Handler store (integrierten Git-Anmeldeinformationsspeicher), cache (integrierten Cache für eingegebene Anmeldeinformationen) und osxkeychain (Speicher für macOS). Der Git Credential Manager (Speicher für Windows) ist von dieser Schwachstelle nicht betroffen.
Updates von Paketen in den Distributionen können auf den Seiten verfolgt werden , , , , , , , .
Quelle: opennet.ru
