Die Korrekturausgaben des verteilten Versionskontrollsystems Git 2.35.2, 2.30.3, 2.31.2, 2.32.1, 2.33.2 und 2.34.2 wurden veröffentlicht, in denen zwei Sicherheitsanfälligkeiten behoben wurden:
- CVE-2022-24765 — In Multibenutzersystemen mit gemeinsam genutzten Verzeichnissen wurde die Möglichkeit identifiziert, einen Angriff durchzuführen, der zur Ausführung von Befehlen führt, die von einem anderen Benutzer definiert wurden. Der Angreifer kann ein Verzeichnis „.git“ an Orten erstellen, die mit anderen Benutzern überlappen (z. B. in gemeinsam genutzten Verzeichnissen oder in Verzeichnissen mit temporären Dateien) und darin eine Konfigurationsdatei „.git/config“ mit Einstellungen für Handler ablegen, die bei der Ausführung bestimmter Git-Befehle aufgerufen werden (zum Beispiel kann der Parameter core.fsmonitor verwendet werden, um die Codeausführung zu organisieren).
Die in „.git/config“ definierten Handler werden mit den Rechten eines anderen Benutzers aufgerufen, wenn dieser Benutzer Git in einem Verzeichnis verwendet, das eine Ebene höher als das vom Angreifer erstellte Unterverzeichnis „.git“ liegt. Der Aufruf kann auch indirekt erfolgen, zum Beispiel durch die Verwendung von Code-Editoren mit Git-Unterstützung, wie VS Code und Atom, oder durch die Anwendung von Erweiterungen, die „git status“ ausführen (z. B. Git Bash oder posh-git). In der Version Git 2.35.2 wurde die Sicherheitsanfälligkeit durch Änderungen in der Logik zur Suche nach „.git“ in untergeordneten Verzeichnissen blockiert (das Verzeichnis „.git“ wird jetzt nicht berücksichtigt, wenn es einem anderen Benutzer gehört).
- CVE-2022-24767 — Eine plattformspezifische Sicherheitsanfälligkeit für Windows, die die Ausführung von Code mit SYSTEM-Rechten bei der Durchführung einer Deinstallationsoperation (Uninstall) des Programms Git for Windows ermöglicht. Das Problem tritt auf, weil das Deinstallationsprogramm in einem temporären Verzeichnis ausgeführt wird, das für Schreibzugriffe von Benutzern des Systems verfügbar ist. Der Angriff erfolgt durch das Platzieren von ersetzenden DLLs in dem temporären Verzeichnis, die beim Starten des Deinstallationsprogramms mit SYSTEM-Rechten geladen werden.
Quelle: opennet.ru
