Fünf Sicherheitsanfälligkeiten in Git, darunter eine kritische und zwei gefährliche

Korrigierte Versionen des verteilten Quellsystemverwaltungsprojekts Git 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2 und 2.39.4 wurden veröffentlicht, in denen fünf Sicherheitsanfälligkeiten behoben wurden. Die schwerwiegendste Sicherheitsanfälligkeit (CVE-2024-32002), die als kritisch eingestuft wurde, ermöglicht einem Angreifer die Ausführung von Code, wenn der Befehl „git clone“ für ein vom Angreifer kontrolliertes Repository ausgeführt wird.

Die Sicherheitsanfälligkeit tritt nur in Dateisystemen auf, die die Groß- und Kleinschreibung der Zeichen nicht unterscheiden und symbolische Links unterstützen, wie sie standardmäßig in Windows und macOS verwendet werden. Der Angriff erfolgt durch das Erstellen eines Submoduls mit einem Verzeichnis und einem symbolischen Link, die sich nur durch die Groß- und Kleinschreibung der Zeichen unterscheiden, was es ermöglicht, Dateien im Verzeichnis .git/ anstelle des Arbeitsverzeichnisses des Submoduls zu schreiben. Wenn der Angreifer Schreibzugriff auf .git/ erhält, kann er die Hook-Aufrufe über .git/hooks überschreiben und die Ausführung willkürlichen Codes während der Ausführung des „git clone“-Befehls erreichen.

Weitere Sicherheitsanfälligkeiten:

  • CVE-2024-32004 – In einer Mehrbenutzersystem kann ein Angreifer ein speziell gestaltetes lokales Repository vorbereiten und die Ausführung von Code beim Klonen erreichen. Insbesondere kann der Angreifer ein lokales Repository erstellen, das wie ein Teilklon aussieht, in dem ein bestimmtes Objekt fehlt. Das Klonen dieses Repositories führt zur Ausführung von Code mit den Rechten des Benutzers, der die Klonoperation ausführt.
  • CVE-2024-32465 – Das Klonen aus ZIP-Archiven, die ein vollständiges Git-Repository enthalten, einschließlich Hooks im Verzeichnis .git/, führt zur Ausführung dieser Hooks.
  • CVE-2024-32020 – Das Erstellen lokal geklonter Repositories auf demselben Laufwerk in einem Mehrbenutzersystem ermöglicht es anderen Benutzern, die Dateien zu ändern, für die harte Links verwendet werden.
  • CVE-2024-32021 – Das Klonen eines lokalen Repositorys mit symbolischen Links kann genutzt werden, um harte Links auf beliebige Dateien im Verzeichnis objects/ zu erstellen.

Neben der Behebung von Schwachstellen in neuen Versionen wurden auch mehrere Änderungen vorgeschlagen, die darauf abzielen, den Schutz vor Schwachstellen zu erhöhen, die zu einer Remote-Code-Ausführung führen und symbolische Links beim Klonen manipulieren. Zum Beispiel gibt Git jetzt eine Warnung aus, wenn symbolische Links im .git/-Verzeichnis vorhanden sind. Die Pfade zu Submodulen dürfen nur echte Verzeichnisse enthalten. Bei der Überschneidung von symbolischen Links und Verzeichnissen werden Verzeichnisse behandelt. Beim Ausführen von „git clone“ wurde der Schutz gegen das Ausführen von Hooks während des Klonens verstärkt, und die Überprüfung des Parameters core.hooksPath wurde verschärft.

Quelle: opennet.ru

60GB SSD 8Gb DDR4