• IT-Karriere:
  • Services:

Sicherheitslücke: Zeilenumbruch ermöglicht Ausleiten von Git-Zugängen

Ein Fehler im URL-Parsing des Git-Clients ermöglicht unter Umständen eine Sicherheitslücke. Die Entwickler verteilen Updates.

Artikel veröffentlicht am ,
Der Zeilenvorschub (Linefeed, LF) stammt aus der Zeit der Schreibmaschinen. Und sorgt in URLs für Sicherheitslücken.
Der Zeilenvorschub (Linefeed, LF) stammt aus der Zeit der Schreibmaschinen. Und sorgt in URLs für Sicherheitslücken. (Bild: Kolossos/Wikimedia/CC-BY-SA 2.5)

Die Git-Entwickler haben Updates für ihre aktuell noch unterstützten Versionen des Werkzeugs veröffentlicht, um eine Sicherheitslücke (CVE-2020-5260) in Git zu schließen. Das betrifft alle Versionen ab Git 2.17 bis zum aktuellen Git-Zweig 2.26. Der Fehler könnte es Angreifern über eine speziell manipulierte URL ermöglichen, von Anwendern Zugangsdaten für andere Host-Server auszuleiten, die zur einfacheren Nutzung hinterlegt wurden.

Stellenmarkt
  1. BAM Corporate Services GmbH, Frankfurt am Main
  2. BGN Berufsgenossenschaft Nahrungsmittel und Gastgewerbe, Mannheim

Gefunden hat die Lücke der Forscher Felix Wilhelm für Googles Bug-Jäger des Project Zero. In dem dazugehörigen und nun öffentlichen Bug-Report beschreibt Wilhelm detailliert den Fehler. Die Ursache ist demnach ein fehlerhafter Umgang mit dem Zeichen für einen Zeilenumbruch (LF, 0A, \n), der in einer URL untergebracht werden kann. Setzen Nutzer auf sogenannte Credential Helpers, also Hilfsfunktionen zum Speichern von Zugangsdaten, konnte das in die URL geschmuggelte Kontrollzeichen zur ungewollten Ausgabe der Daten führen.

Denn zusätzlich zu dem eigentlich angeforderten Host interpretierte der Git-Client den zusätzlichen URL-Bestandteil ?%0ahost=github.com so, dass dann ?\nhost=github.com in der Konfiguration der Hilfsfunktion landete. Diese hat dann eben auch die Zugangsdaten für den hier beispielhaft aufgeführten Host Github.com mit ausgegeben, zusätzlich zu dem eigentlich angefragten Host.

Interessant an dem Fehler ist vor allem, dass dieser auf den URL-Parser von Git zurückzuführen ist, der, wie Wilhelm schreibt, eine Eigenimplementierung des Git-Projekts ist. Dieser habe schlicht alles bis zu einem Slash als Teil des Hostname angenommen und keine weitere Überprüfung der Daten vorgenommen. Darüber hinaus hatte auch schon das Curl-Projekt in der Vergangenheit ähnliche Fehler, bei denen Zeilenumbrüche in der URL zu Sicherheitslücken führen konnten. Bis Version 7.62 der Curl-Bibliothek sei dies laut Wilhelm etwa auch noch für Nutzernamen so gewesen. Zwar müssten damit dann gezielt bekannte Nutzernamen angegriffen werden, diese Art Angriff ließe sich aber auch über Redirects ausnutzen.

Wilhelm hat als Teil seines Bug-Reports Beispielcode zum Ausnutzen der Lücke veröffentlicht. Nutzer sollten ihre Clients aktualisieren.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Top-Angebote
  1. 51,90€ (Bestpreis!)
  2. (u. a. Kingston Traveller USB-Stick 128GB für 9,99€, MS Office 365 Personal für 51,19€, MSI...
  3. (u. a. Philips Ambilight 65OLED804 für 1.899€, Philips Ambilight 65OLED934/12 OLED+ für 2...
  4. 213,47€

Folgen Sie uns
       


Drohnenflug am Strand mit Google Earth Studio - Tutorial

Wir zeigen im kurzen Tutorial, wie man in Earth Studio eine einfache Animation erstellt.

Drohnenflug am Strand mit Google Earth Studio - Tutorial Video aufrufen
    •  /