SSH für Lateral Movement erkennen: der Pfad durch gemischte Umgebungen

Kurzfassung: SSH ist der Pfad der seitlichen Bewegung in gemischten Umgebungen - und längst auch auf Windows, wo OpenSSH ab Werk mitläuft. Mit gestohlenem Schlüssel oder Passwort springt ein Angreifer von Host zu Host, oft unter dem Radar Windows-fokussierter Teams. Drei Stellen verraten ihn: die eingehende Sitzung, die als Shell endet, ein neu eingetragener Schlüssel in authorized_keys und ein SSH-Tunnel zum Pivot. Drei sigma-cli-validierte Sigma-Regeln, Härtung und der Test im Lab. Serie "Angriff erkennen".

Dieser Beitrag schließt den Lateral-Movement-Teil der Welle ab. Nach den Windows-Remote-Services - RDP, SMB, WinRM, DCOM und dem Session-Hijacking - fehlt der Weg, der quer durch gemischte Umgebungen führt: SSH. Lange galt es als reines Linux-Thema, doch seit OpenSSH fester Bestandteil von Windows ist, verbindet SSH Windows-Clients, Linux-Server und Netzwerkgeräte gleichermaßen. Genau diese Brücke nutzen Angreifer, und oft fällt sie durch das Raster, weil das Monitoring auf die Windows-Seite konzentriert ist. Der Beitrag bleibt auf der Verteidigerseite und bleibt konzeptionell.

Einordnung in ATT&CK: Die Technik ist Remote Services: SSH (T1021.004) in der Taktik Lateral Movement (TA0008). Sie setzt gültige Zugangsdaten voraus - ein Passwort oder, häufiger, einen privaten Schlüssel.

Was der Angreifer tut

Seitliche Bewegung über SSH läuft auf der Ebene des Prinzips, nicht als Anleitung, in wenigen Schritten ab:

  • Zugangsdaten beschaffen. Der Angreifer sammelt Passwörter oder - wertvoller - private SSH-Schlüssel, die auf kompromittierten Hosts oft ungeschützt herumliegen.
  • Zur nächsten Station verbinden. Mit diesen Daten baut er eine SSH-Sitzung zum nächsten Host auf und führt dort Befehle aus.
  • Den Zugang absichern. Ein eigener öffentlicher Schlüssel in authorized_keys sorgt für dauerhaften, passwortlosen Zugang - eine leise Dauerkarte.
  • Tiefer vordringen. Über Port-Weiterleitung und Tunnel pivotiert er von einem erreichbaren Host zu Systemen, die sonst abgeschottet wären.

Für die Erkennung ist entscheidend: Jeder dieser Schritte berührt eine beobachtbare Stelle - die eingehende Sitzung, die Schlüsseldatei und die Tunnel-Schalter des Clients.

Welche Logquellen die Technik zeigt

  • Prozess-Telemetrie. Event 4688 und Sysmon Event 1 zeigen unter Windows die eingehende SSH-Sitzung als Kindprozess von sshd sowie den SSH-Client mit Tunnel-Schaltern.
  • Datei-Telemetrie. Sysmon Event 11 (FileCreate) zeigt Änderungen an authorized_keys und an der administrators_authorized_keys - dafür muss Sysmon Dateiereignisse erfassen, siehe Sysmon einrichten.
  • Die Linux-Seite. Auf Linux liefern auditd, journald und die sshd-Logs das Gegenstück - Anmeldungen, Schlüsselnutzung und gestartete Prozesse. Mehr dazu im Linux-Sicherheitsmonitoring.
  • Netzwerk-Telemetrie. Zeek sieht die SSH-Verbindungen auf Port 22 und deckt ungewöhnliche Host-zu-Host-Paare und Tunnel auf, die ein einzelner Host nicht erkennt.

Das Muster im Log

Das klarste Signal auf der Windows-Seite ist sshd als Elternprozess einer Shell: Eine eingehende SSH-Sitzung, die eine cmd.exe oder PowerShell öffnet, ist Fernausführung und auf einem Arbeitsplatz ohne SSH-Verwaltung sehr auffällig. Eine neue Zeile in authorized_keys ist ebenso verräterisch, weil sie passwortlosen Dauerzugang schafft. Der SSH-Client mit den Schaltern für Port-Weiterleitung verrät den Pivot - harmlos im Alltag einzelner Administratoren, verdächtig von einem Host, der sonst nie tunnelt. Wie bei den anderen Remote Services gilt: Eine Host-zu-Host-Verbindung, die nicht ins normale Bild passt, ist der Kern des Verdachts - und in gemischten Umgebungen gehört dazu zwingend auch die Linux-Seite.

Drei Sigma-Regeln

Die Regeln sind mit sigma-cli geprüft und über alle Backends sauber übersetzbar. Die erste nutzt die eingehende Sitzung, die zweite die Schlüsseldatei, die dritte die Tunnel-Schalter. Die ersten beiden sind die tragenden, weil sie konkrete Fernausführung und dauerhaften Zugang anzeigen.

1. Eingehende SSH-Sitzung startet eine Shell (T1021.004). sshd als Elternteil einer Kommandozeile. Die Regel steht auf level: high.

Sigma
title: Eingehende SSH-Sitzung startet eine Shell
id: 3a8c1f52-6b47-4d09-9e21-7c4a2b8d65e3
status: experimental
description: |
  Erkennt eine Shell oder einen Skript-Host, dessen Elternprozess sshd ist. Unter Windows
  OpenSSH laeuft jede eingehende SSH-Sitzung im Dienst sshd; ein daraus gestarteter Befehl
  ist Fernausfuehrung ueber SSH. Auf Hosts, die keine SSH-Fernverwaltung erwarten, ist das
  ein deutliches Zeichen fuer seitliche Bewegung.
references:
  - https://attack.mitre.org/techniques/T1021/004/
author: blue-team.net
tags:
  - attack.lateral-movement
  - attack.t1021.004
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    ParentImage|endswith: '\sshd.exe'
    Image|endswith:
      - '\cmd.exe'
      - '\powershell.exe'
      - '\pwsh.exe'
      - '\wscript.exe'
      - '\cscript.exe'
  condition: selection
falsepositives:
  - Legitime SSH-Fernverwaltung; bekannte Verwaltungshosts und Konten als Baseline ausnehmen
level: high

2. Änderung an authorized_keys (T1021.004). Ein neu eingetragener Schlüssel für passwortlosen Zugang. Ebenfalls level: high.

Sigma
title: Aenderung an authorized_keys fuer SSH-Zugang
id: 9f2d7b41-5a38-4c60-8b19-3e6a1c4d92b7
status: experimental
description: |
  Erkennt das Anlegen oder Veraendern einer authorized_keys-Datei. Wer einen eigenen
  oeffentlichen Schluessel hier eintraegt, verschafft sich passwortlosen SSH-Zugang zum
  Konto - ein beliebter Weg, um seitliche Bewegung dauerhaft abzusichern. Auch die
  administrators_authorized_keys unter Windows OpenSSH gehoert dazu.
references:
  - https://attack.mitre.org/techniques/T1021/004/
author: blue-team.net
tags:
  - attack.lateral-movement
  - attack.t1021.004
logsource:
  product: windows
  category: file_event
detection:
  selection:
    TargetFilename|endswith:
      - '\.ssh\authorized_keys'
      - '\administrators_authorized_keys'
  condition: selection
falsepositives:
  - Legitime Schluesselverteilung durch Administration oder Automatisierung; bekannte Konten ausnehmen
level: high

3. SSH-Client mit Tunnel (T1021.004). Port-Weiterleitung als Pivot-Signal. level: medium, weil Administratoren Tunnel auch legitim nutzen.

Sigma
title: SSH-Client mit Port-Weiterleitung oder Tunnel
id: 1c6e4b90-7a28-4d35-b0f2-5a9c3e7d81b4
status: experimental
description: |
  Erkennt den SSH-Client mit Schaltern fuer Port-Weiterleitung oder Tunnel. Mit lokaler,
  entfernter oder dynamischer Weiterleitung baut ein Angreifer ueber einen erreichbaren
  Host einen Pivot zu Systemen auf, die sonst nicht erreichbar waeren. Als Admin-Werkzeug
  kommt ssh auch legitim vor, die Weiterleitungs-Schalter sind aber das Pivot-Signal.
references:
  - https://attack.mitre.org/techniques/T1021/004/
author: blue-team.net
tags:
  - attack.lateral-movement
  - attack.t1021.004
logsource:
  product: windows
  category: process_creation
detection:
  sel_img:
    Image|endswith: '\ssh.exe'
  sel_flags:
    CommandLine|contains:
      - ' -L '
      - ' -R '
      - ' -D '
      - ' -w '
  condition: sel_img and sel_flags
falsepositives:
  - Administratoren, die SSH-Tunnel fuer legitime Zwecke nutzen; bekannte Konten und Ziele ausnehmen
level: medium

Härtung: der Angriff, der ins Leere läuft

  • Schlüssel schützen. Private Schlüssel mit Passphrase versehen, zentral verwalten und authorized_keys auf unerwartete Einträge überwachen.
  • SSH einschränken. Den SSH-Dienst nur dort aktivieren, wo er gebraucht wird, und den Zugang per Firewall und Konfiguration auf Verwaltungsquellen begrenzen.
  • Tunnel unterbinden. Port-Weiterleitung in der sshd-Konfiguration abschalten, wo sie nicht gebraucht wird, damit Pivoting ins Leere läuft.
  • Die Linux-Seite mitnehmen. Server und Netzwerkgeräte genauso überwachen wie Windows - der blinde Fleck entsteht genau dort, siehe Linux-Sicherheitsmonitoring.

Der Test

Die Erkennung lässt sich im Lab gefahrlos prüfen, auf isolierten Systemen mit aktivem Sysmon und laufendem OpenSSH:

  • Für Regel 1 von einem Testhost aus per SSH einen harmlosen Befehl auf einem Windows-Ziel ausführen. sshd muss als Elternteil der Shell in Event 4688 erscheinen.
  • Für Regel 2 einen Testschlüssel in eine authorized_keys-Datei eintragen. Sysmon Event 11 muss die Änderung zeigen.
  • Für Regel 3 den SSH-Client mit einer Port-Weiterleitung starten. Event 4688 muss die Kommandozeile mit dem Schalter zeigen. Breiter wird der Test mit den Fällen zu T1021.004 aus Atomic Red Team.

Fehlalarme und Tuning

  • Legitime SSH-Verwaltung. In gemischten Umgebungen ist SSH Alltag. Regel 1 nach Verwaltungshosts und -konten als Baseline ausnehmen.
  • Schlüsselverteilung. Automatisierung trägt manchmal Schlüssel ein. Für Regel 2 die bekannten Verteilkonten dokumentieren und filtern.
  • Admin-Tunnel. Einzelne Administratoren nutzen Port-Weiterleitung legitim. Für Regel 3 nach Konto und Ziel ausnehmen, statt die Regel zu entschärfen.
  • Korrelation schlägt Einzelregel. Wer eingehende Sitzung, Schlüsseländerung und Tunnel über Windows- und Linux-Telemetrie hinweg verknüpft, trennt Administration und echten Angriff zuverlässiger als jede Einzelregel.

Fazit

SSH ist die Brücke, die gemischte Umgebungen verbindet - und deshalb der Pfad der seitlichen Bewegung, der Windows-fokussierten Teams am leichtesten entgeht. Die verlässlichen Signale sind die eingehende Sitzung als Shell-Starter, der neue Schlüssel in authorized_keys und der SSH-Tunnel zum Pivot. Die wirksamste Härtung schützt die Schlüssel, begrenzt den SSH-Zugang und bezieht die Linux-Seite konsequent ins Monitoring ein. Damit ist der Lateral-Movement-Teil der Welle abgeschlossen - von RDP über SMB, WinRM, DCOM und Session-Hijacking bis SSH. Verwandt sind der RDP-Missbrauch und die Pass-the-Hash-Technik, beide ebenfalls auf gestohlene Zugangsdaten angewiesen. Weitere Techniken dieser Taktik sammelt das Lexikon nach Taktik unter Lateral Movement.

NH

$ whoami

Norbert Hofmann

Cyber Defense Analyst im Security Operations Center eines Managed Security Service Providers. Red und Blue Teaming, Malware-Analyse, Incident Response und Security-Awareness-Trainings. Finalist bei „Deutschlands bester Hacker“ 2022, mehrere CVE-Einträge für WordPress-Plugins.