SSH-Entwickler Tatu Ylönen über mangelndes Key Management Ohne Verwaltung der SSH-Schlüssel keine Sicherheit

Autor / Redakteur: Tatu Ylönen, SSH Communications Security / Stephan Augsten

Secure Shell, kurz SSH, ermöglicht authentifizierte und verschlüsselte Verbindungen über ein unsicheres Netzwerk. Doch mit der Verschlüsselung allein ist es nicht getan, wie SSH-Erfinder Tatu Ylönen weiß: Ein schlechtes Key-Management kann sich schnell zum Sicherheitsproblem auswachsen.

Anbieter zum Thema

Nur mit einem ausgefeilten Key-Management sind Verbindungen über das SSH-Protokoll wirklich sicher.
Nur mit einem ausgefeilten Key-Management sind Verbindungen über das SSH-Protokoll wirklich sicher.
(Bild: photobank.kiev.ua - Fotolia.com)

Zu meiner Zeit als studentischer Netzwerk-Administrator an der Universität Helsinki war Telnet das Standard-Protokoll, um Dateien im Netzwerk zu übermitteln. Doch obwohl Telnet zweckdienlich war, so hatte es doch eine Schwäche: Es war nicht verschlüsselt, so dass böswillige Personen den Datenverkehr beobachten konnten.

Dieses theoretische Sicherheitsproblem wurde mit einem Mal real, als ich im Universitätsnetz einen Packet Sniffer entdeckte, der es auf Passwörter abgesehen hatte. Im Gegenzug entwickelte ich ein Programm, das die im Netzwerk übermittelten Daten verschlüsselte.

Heute kennt man diese Schöpfung unter dem Namen Secure ShellProtocol oder kurz SSH. Das Protokoll hat Telnet weitestgehend abgelöst; es schützt in Bewegung befindliche Daten (data in transit) und erlaubt Administratoren, ihre Systeme sicher aus der Ferne zu verwalten. In nahezu jeder größeren Netzwerkumgebung findet SSH Verwendung, selbst in Behörden, Großunternehmen und Finanzinstituten.

SSH generiert ein kryptographisches Schlüsselpaar – einen Schlüssel für den Server und einen für den Anwender –, um die zwischen den Endpunkten transferierten Daten zu schützen. Dabei kann es sich um alle erdenklichen Informationen handeln, seien es Logins, Finanzdaten, Krankenakten oder andere sensible Informationen.

Leider haben die meisten Unternehmen und Organisationen keinen Prozess entwickelt, um die verwendeten Schlüssel zu ändern, zu löschen und zu verwalten. Deshalb werden tausende Schlüssel recht unorganisiert im Netzwerk verbreitet, ohne sie jemals wieder lokalisieren oder entfernen zu können. Diese Lotterwirtschaft führt zu erheblichen Sicherheitsanfälligkeiten, da man unauffindbare Hintertüren für den Zugriff auf sensible Daten öffnet.

Verloren im Schlüssel-Dschungel

Dieses Problem hat eine enorme Tragweite. Studien in Großunternehmen haben gezeigt, dass diese im Schnitt acht bis gut einhundert SSH-Schlüssel verwenden, um einen Zugriff auf Unix- bzw. Linux-Server zu ermöglichen. Einige dieser Schlüssel gewähren weitreichende, administrative Rechte.

Dürftig verwaltete SSH-Schlüssel ermöglichen es, sämtliche Mechanismen fürs Privileged Access Management oder Session Auditing zu umgehen. Ein Mitarbeiter mit Risikopotenzial – sei es nun ein ehemaliger Administrator, ein Berater oder jedwede Person mit Zugang zu alten Backups oder ausgemusterter Hardware – könnte also beispielsweise direkt auf Produktionsserver zugreifen.

Dieses Problemfeld ist weitestgehend unerforscht, weil es ebenso technisch wie undurchsichtig ist und in den Arbeitsbereich der Systemadministratoren fallen würde. Diese sind sollen sich im Unternehmen aber meist nur um einen kleinen Teil der IT-Umgebung kümmern, so dass es ihnen oft an der nötigen Weitsicht mangelt.

Risiken mangelnder SSH-Schlüsselverwaltung

Verschlimmert wird die Lage dadurch, dass IT-Führungskräfte sich des Problems möglicherweise bewusst sind; oft können sie aber gar nicht die Zeit aufbringen, das Problem selbst oder die daraus resultierenden Konsequenzen zu analysieren.

Das Risiko eines großen Sicherheitsvorfalls, bei dem SSH eine Rolle spielt, steigt Tag für Tag. Für Malware-Entwickler ist es beispielsweise ein Leichtes, SSH-Schlüssel als Angriffsvektor zu nutzen – es erfordert nur wenige hundert Zeilen Code. Hat sich ein Virus einmal in einer IT-Umgebung festgesetzt, könnte er herumliegende SSH-Schlüssel dazu nutzen, von einem Server zu einem anderen zu wandern.

Schlüsselbasierte Zugriffe sind mittlerweile so tief im Netzwerk verwoben, dass der Schadcode höchstwahrscheinlich alle Server eines Unternehmens kompromittieren kann; erst recht, wenn er zusätzlich dazu in der Lage ist, sich einen Root-Zugriff bzw. administrative Rechte auf dem Ursprungssystem zu sichern.

Vor diesem Hintergrund sind insbesondere Desaster-Recovery- oder Backup-Systeme gefährdet, die in der Regel jeweils mit SSH-Schlüsseln arbeiten. Ausgestattet mit den entsprechenden Funktionen ließen sich auf diesem Weg Unmengen sicherheitsrelevanter Daten löschen.

Je mehr Schlüssel im Netzwerk herumgeistern desto höher ist die Wahrscheinlichkeit, dass die Malware innerhalb von Minuten oder Sekunden sämtliche Server infiziert. Im schlimmsten Fall wäre es denkbar, dass sie sich über die physischen Firmengrenzen hinaus über das gesamte WAN ausbreitet oder gar den Weg ins Internet schafft.

Compliance-Faktoren berücksichtigen

Lassen wir die IT-Sicherheit einmal außen vor, so besteht auch anderweitig Gefahr: Eine unzureichende Verwaltung von SSH-Schlüsseln führt dazu, dass Unternehmen gegen gesetzliche oder industrielle Sicherheitsvorgaben verstoßen. Verschiedene Regularien legen beispielsweise fest, dass ein Unternehmen die Server-Zugriffe kontrollieren und Sitzungen notfalls terminieren können muss.

Glücklicherweise sind all die genannten Risiken nicht auf Schwächen im SSH-Protokoll selbst zurückzuführen. Vielmehr liegt die Gefahr im Zusammenspiel organisatorischer Faktoren: in der Fehleinschätzung der Konsequenzen, der fehlenden Zeit und mangelnden Ressourcen sowie im Widerwillen der Auditoren, Problemfelder zu benennen, auf die sie selbst keinen Einfluss haben.

Best Practices fürs Key Management

Um ein Projekt zu beginnen, das die Fehler der Vergangenheit aus der Welt schafft, benötigt man zum einen die Befürwortung und volle Unterstützung der Führungsebene. Darüber hinaus muss man verschiedene IT-Teams bilden, um den folgenden Handlungsempfehlungen nachzukommen:

  • Das kontinuierliche Überwachen (Monitoring) der IT-Umgebung hilft dabei, aktuell in Benutzung befindliche Schlüssel zu identifizieren und unbenötigte zu entfernen.
  • Dabei sollte genau analysiert werden, welche Berechtigungen jeder Schlüssel umfasst und von wo aus er genutzt werden darf.
  • Ebenso gilt es, alle Vertrauensverhältnisse zu bestimmen (Wer darf auf was zugreifen?).
  • Ein Schlüsselwechsel, beispielsweise ein regelmäßiger Austausch der Schlüsselpaare, sorgt dafür, dass kompromittierte (i.d.R. kopierte) Schlüssel nicht mehr arbeiten.
  • Alle Prozesse – von der Schlüssel-Erstellung bis hin zu ihrer Löschung – sollten sauber und konsistent ablaufen.
  • Im Idealfall werden Schlüssel automatisiert erstellt und wieder entfernt. Auf diesem Weg reduziert man die Anzahl potenzieller Administratoren auf Null und schließt menschliche Fehlerquellen aus.

Fazit

Jedem Unternehmen sollte klar sein, dass man die Verwaltung der SSH-Schlüssel nicht auf die lange Bank schieben darf. Nichtsdestotrotz weisen die SSH-Umgebungen nahezu aller Fortune-500-Firmen und vieler Behörden gravierende Sicherheitsmängel auf.

Das Thema Key Management sollte bei allen Sicherheitsverantwortlichen und Risikobeauftragten in der IT höchste Priorität genießen. Ohne Auditing und Controlling bleibt einem Unternehmen letztlich keine andere Sicherheitsoption, als den SSH-basierten Zugriff auf IT-Systeme und Daten komplett zu unterbinden. Es wird noch Jahre dauern und abertausende IT-Experten erfordern, dieses Problem aus der Welt zu schaffen.

Über den Autor

Tatu Ylönen ist der Gründer und Geschäftsführer von SSH Communications Security.

(ID:39466140)