Sicherheit

GitHub-Suchfunktion verrät SSH-Schlüssel

von - 28.01.2013
GitHub-Suchfunktion verrät SSH-Schlüssel
Der Open-Source-Hosters GitHub hat vergangene Woche eine neue Suchfunktion präsentiert. Doch die Freude währte nur kurz. GitHub musste die Funktion sperren, weil sie SSH-Schlüssel der Nutzer preisgibt.
GitHub ermöglichte es Entwicklern, den Quellcode ihrer Programm abzulegen und öffentlich abrufbar zu machen. Viele Programmierer bekannter OpenSource-Projekte nutzen den Dienst. Die öffentlichen Ordner sind Kopien von privaten Ordnern, die auf den Rechnern der Entwickler liegen. So kann jeder Entwickler an einer eigenen Teil-Version des Quellcodes arbeiten, und dann die Änderungen je nach Projekt in das öffentliche Repositorium zu übertragen.
Mit dem neuen Suchwerkzeug bietet GitHub Besuchern die Möglichkeit, gezielt nach Ordnern, Datensätzen, Code, Verzeichnissen und Mitgliedern zu suchen. Doch schon einen Tag nach Einführung warnen mehrere Softwareentwickler auf Twitter vor dem neuen Tool. Der Grund: Die Suchfunktion verrät auch sensible Dateien und private Schlüssel von einigen Nutzern. Dazu zählen SSH-Schlüssel und private Zugangsdaten für E-Mails und andere Kommunikationen mit Diensten wie GNUPG.
Das Problem basiert laut Guardin allerdings nicht auf einer Sicherheitslücke, sondern lässt sich ursächlich auf Fehlverhalten der betroffenen Nutzer zurückführen. Neu generierte SSH-Schlüssel werden grundsätzlich im root-Verzeichnis unter .ssh abgespeichert. Sie gelangen nur dann in das GitHub Repositorium, wenn Nutzer sie versehentlich gemeinsam mit anderen Dateien dahinein kopieren. Nur dadurch ist es Unbefugten möglich, die Schlüssel über das öffentliche GitHub abzufragen.
Die Suchfunktion offenbart also lediglich eine Gefahr, die im Prinzip schon die ganze Zeit über vorhanden war. Beispielsweise hätten Hacker bereits früher auf die Schlüssel zugreifen können und damit Schadcode in die einzelnen Projekte einschleusen, Quellcode ändern und Hintertüren in die Programme einbauen können. Da Angreifer über die offiziellen Programmierer-Schlüssel verfügt hätten, gäbe es nicht einmal einen offensichtlichen Hinweis für unbefugte Änderungen.
Dan Kaminsky, ein Forscher, hat auf dieses grundlegende Problem bereits vor einigen Jahren hingewiesen. Keiner könne sagen, dass GitHub die Entwickler nicht ausreichend gewarnt habe. Seiner Auffassung nach sei es nicht Aufgabe des Archivs, in den Daten herumzuschnüffeln und Sperrungen zu veranlassen. Andere sehen das auf Twitter jedoch anders. In einem Einzelfall könnte man davon ausgehen, dass es sich um den Fehler eines "Idioten" handelt. Wenn es wie in diesem Fall allerdings Hunderte betrifft, sei der Fehler nicht mehr nur beim Nutzer zu suchen.
Einige Entwickler schlagen nun vor, Verzeichnisse wie .ssh/ und .gnupg/ von der Suche auszuschließen. GitHub hat währenddessen zwar die Suchfunktion deaktiviert, aber nicht das grundsätzliche Problem beseitigt. Deshalb ist es immer noch möglich, die in den Repositorien gespeicherten SSH-Schlüssel aufzuspüren.
Verwandte Themen