SSH Leistungen

SSH ist ein Netzwerkprotokoll und Teil der Internetstandards. Ich hatte das Glück, 3 Jahre für den Erfinder dieses Protokolls arbeiten zu dürfen: Der Firma SSH Communications Security Inc. In Finnland. Jedes Linux und Unix System auf der Welt nutzt dieses Protokoll für den Remote-Zugang.

Analog zur Passwort Policy ist es sinnvoll, eine eigene SSH Policy zu definierten. Es ist zwar möglich, ein Linux System mit einer zentralen LDAP Instanz zu verbinden, aber SSH Keys sind schlicht etwas anderes als Passwörter. Insbesondere bei automatisierten Prozessen (von Ansible bis Managed File Transfer) sind SSH Keys existentieller Bestandteil der Produktionsprozesse.

Abbildung: SSH Einsatz in der Produktion

 

SSH Policy

Hier ist ein Beispiel für eine SSH Policy:

  1. Jeder SSH Schlüssel ist bekannt und eindeutig
  2. Jeder SSH Schlüssel hat einen geschäftlichen Grund
  3. Jeder SSH Schlüssel ist ein Asset und hat damit einen eindeutigen Eigentümer
  4. Jeder private Schlüssel ist zu schützen
  5. Jeder nicht mehr benötigte SSH Schlüssel wird umgehend entfernt
  6. Das Management der SSH Schlüssel unterstützt sowohl natürliche Personen als auch automatisierte Prozesse
  7. Die Geschäftsprozesse für den spezifischen SSH Schlüssel sind bekannt und dokumentiert
  8. Jeder SSH Schlüssel ist auf den ihm zugewiesenen Einsatz beschränkt
  9. Die SSH Server und SSH Client Konfiguration ist bewusst konfiguriert und unterstützt eine zentrale Verwaltung der SSH Schlüssel
  10. Jeder Anmeldevorgang erfolgt personalisiert, kann nachvollzogen werden und die Log-Informationen werden regelmäßig nach Auffälligkeiten untersucht

Was passiert, wenn es keine SSH Policy gibt?

Das SSH Protokoll existiert seit mehr als 20 Jahren. Zu diesem Zeitpunkt gab es nur einzelne Unix Systeme und ein root-Administrator hat sein System verwaltet und verantwortet. Über die Jahre hat dies jedoch möglicherweise unangenehme Konsequenzen.

SSH Audit Ergebnisse

Abbildung: Ergebnisse aus einem SSH Audit

Was bedeuten diese "Gebilde"?

  1. Jeder Punkt repräsentiert einen Server. In Summe handelt es sich bei beiden Grafiken jeweils um 300 bis 500 Server. Größere Punkte repräsentiert Systeme mit vielen Verbindungen.
  2. Jede rote Linie repräsentiert den Zugang eines Administrators. Die privaten Zugangsschlüssel des SSH Protokolls liegen außerhalb der Analyse, z.B. auf einem Notebook eines Administrators.
  3. Jede schwarze Linie repräsentiert eine Verbindung zwischen zwei Servern, d.h. die Analyse hat sowohl den öffentlichen als auch den privaten SSH Schlüssel identifiziert.
  4. Die gezeigten Linien zeigen Verbindungen, die technisch möglich wären und ohne Passwort oder weitere Formen der Authentifikation genutzt werden können. Diese Grafiken geben noch keine Auskunft darüber, welche der Verbindungen aus Sicht der Geschäftsprozesse tatsächlich relevant sind und genutzt werden.
  5. Wenn es einem Angreifer gelingt, ein System aus der Mitte (einen größeren Punkt) zu übernehmen, ist dieser technisch innerhalb weniger Minuten (!) in der Lage, die gesamte Infrastruktur und damit alle Daten zu übernehmen. Dieser Angreifer muss keine weiteren Hürden überwinden.

Die spätere Analyse hat ergeben, dass

  • der überwiegende Teil der Zugänge mit privilegierten Rechten versehen war (root, Oracle, Software Entwickler, Cluster Steuerung, etc.)
  • ca. 80% alle Kommunikationsverbindungen sich nicht von Personen, sondern von automatisierten Prozessen ableiten lassen.
  • ca. 90% der identifizierten SSH Schlüssel nicht mehr relevant waren.
  • ca. 80 % der identifizierten SSH Schlüssel der Eigentümer nicht klar definiert war und die Schlüssel nicht als relevantes Asset verwalktet wurden.

Die meisten Benutzer, die Zugriff auf privilegierte Konten wie Verwaltungskonten und Servicekonten haben, tun dies, um ihre täglichen Aufgaben zu erledigen. Wie jeder andere Benutzer möchte auch der privilegierte Benutzer so effizient wie möglich arbeiten und neigt in puncto Sicherheit dazu, Abkürzungen zu nutzen.

Mit zunehmendem Wachstum der IT-Umgebungen kann sich die Zahl der Verwaltungs-, Service- und anderen Arten von privilegierten Konten ausbreiten. Unternehmen, die Netzwerke mit Tausenden oder Zehntausenden von Servern und Netzwerkgeräten betreiben, verfügen häufig nicht über eine genaue Bestandsaufnahme dieser Assets.

Wenn Sie Interesse an einem Audit oder der nachgelagerten Lösung haben, sprechen Sie mich bitte an. Ich unterstütze Sie gerne in folgenden Bereichen:

  • SSH Audit
  • SSH Policy
  • SSH Key Management
  • SSH Session Recording
  • Managed File Transfer