git schließt fünf Sicherheitslücken und führt tiefgehende Abwehrmechanismen ein

Ein git-Update schließt eine Reihe teilweise kritischer sowie hoher Sicherheitslücken und bringt ein neues Defense-in-Depth-Konzept.

In Pocket speichern vorlesen Druckansicht 8 Kommentare lesen
Stilisiertes Bild: Software-Update auf Laptop

Updates sind verfügbar.

(Bild: Bild erstellt mit KI in Bing Designer durch heise online / dmk)

Lesezeit: 3 Min.

Mit Version 2.45.1 beseitigt git fünf Sicherheitslücken in den Clients und führt tiefgreifende Schutzmechanismen ein. Gefährdet sind alle Betriebssysteme: Windows, macOS, Linux-Distributionen oder BSDs. Die Lücken betreffen das Klonen von Repositories; eine wird als kritisch eingestuft, zwei als hoch. Folglich rät das git-Team zum sofortigen Update und, „wenn ihr nicht sofort aktualisieren könnt, seid bitte vorsichtig, von wo ihr Repositories klont.“

Nachdem in letzter Zeit eine Reihe von Angriffen auf Repository-Dienste bekannt wurden, veröffentlicht git nun ein Sicherheitsupdate, das allerdings nicht den Dienst betrifft, sondern die Clients. Anwenderinnen und Anwender sollten sowohl die Standalone-Programme als auch die Plugins in den Entwicklungsumgebungen aktualisieren. Visual Studio updatet automatisch, während Nutzer von VS Code die neue git-Version im Terminal eigenständig installieren müssen:

git update-git-for-windows

Die behobenen Schwachstellen im Einzelnen:

  • CVE-2024-32002 (kritisch; Windows und macOS): Bösartige Repos mit Untermodulen können git-Clients dazu verwenden, Daten beim Klonen statt ins zugehörige Arbeitsverzeichnis in den Ordner .git/ abzulegen. Das gelingt über manipulierte symbolische Links. Der Angreifer kann dort Hooks (automatisch startende Skripte) im laufenden git-Betrieb ausführen lassen.
  • CVE-2024-32004 (hoch; Mehrbenutzerrechner): Ein Angreifer kann ein lokales Repository als vermeintlich partiellen Klon ohne Objekt modellieren, das beim Klonen beliebigen Code beim Klonenden mit dessen Rechten ausführen kann.
  • CVE-2024-32465 (hoch; alle Konfigurationen): Das Klonen von Repos aus Zip-Dateien umgeht Schutzmaßnahmen, sodass Angreifer unsichere Hooks einschleusen können.
  • CVE-2024-32020 (niedrig; Mehrbenutzerrechner): Nicht vertrauenswürdige Benutzer können Hardlinks in der Objektdatenbank des geklonten Repos auf derselben Festplatte ändern.
  • CVE-2024-32021 (niedrig; Mehrbenutzerrechner): Angreifer können beim Klonen eines lokalen Repos mit symbolischen Links git dazu missbrauchen, im Verzeichnis objects/ Hardlinks anzulegen. Darüber schreiben die Angreifer Dateien jenseits von git ins Dateisystem.

Anwenderinnen und Anwender von VS Code sollten git zügig im Terminal von Hand updaten.

(Bild: iX)

Neben dem Fixen konkreter Schwachstellen führt git neue Sicherheitsmechanismen ein, um Bedrohungen wie den beschriebenen entgegenzuwirken. Ein besser Umgang mit symbolischen Links beim Klonen soll verhindern, dass git Dateien an falscher Stelle schreiben kann. Hooks werden nun genauer geprüft, um nicht autorisierten Code zu stoppen. Die Hook-Konfiguration des git-Vorlagenverzeichnis ist nun vor versehentlichen oder böswilligen Änderungen geschützt. Außerdem warnt git jetzt vor symbolischen Links auf das Verzeichnis .git/. Besonders misstrauische Nutzerinnen und Nutzer können vorgeben, dass git diese Warnungen als Fehler behandelt.

Noch ein Hinweis des git-Teams: Der neue Defense-in-Depth-Schutz verursacht einen Fehler beim Klonen von Large-File-Storage-Repos. Abhilfe schafft der Schalter git lfs pull im neuen Klon.

(who)