Der Internet-Standard SSH bietet sicheren Zugang zu Netzwerkdiensten. Ein Forscherteam von der Ruhr-Universität Bochum hat nun eine neue Angriffstechnik vorgestellt, die die Integrität von SSH-Verbindungen infrage stellen kann.
Die als Terrapin bezeichnete Attacke basiert auf gezielten Anpassungen von TCP-Sequenznummern beim SSH-Handshake. Eine TCP-Sequenznummer ist ein wesentliches Element des Transmission Control Protocol (TCP). Jedes TCP-Paket, das über ein Netzwerk gesendet wird, enthält eine Sequenznummer, die dazu dient, die korrekte Reihenfolge der gesendeten Daten zu gewährleisten. Da Datenpakete auf verschiedenen Wegen und zu unterschiedlichen Zeiten am Ziel ankommen können, hilft die Sequenznummer dem Empfänger, die ursprüngliche Reihenfolge der Pakete wiederherzustellen. Sequenznummern tragen darüber hinaus zu einer zuverlässigen Kommunikation bei, indem sie Datenverluste, Duplikate und andere Fehler erkennen und korrigieren helfen.
Die Forscher fanden nun heraus, dass ein Angreifer durch geschickte Manipulation der Sequenznummern SSH-Nachrichten entfernen kann, die Clients oder Server beim Aufbau eines sicheren Kanals austauschen, ohne dass die Teilnehmer dies bemerken. Dazu zählen auch Nachrichten für die Extension-Vereinbarung (»EXT_INFO«-Nachricht). Die Extension-Vereinbarung beim SSH-Handshake ist ein Mechanismus, der es Client und Server ermöglicht, zusätzliche Funktionen und Erweiterungen auszuhandeln, die über den Standard-SSH-Protokollrahmen hinausgehen. Das erfolgt während des Handshake-Prozesses, der die Verbindung initialisiert und sichert.
Nachdem die grundlegenden Parameter wie Schlüsselaustausch und Authentifizierung festgelegt wurden, haben beide Parteien die Möglichkeit, über die Extension-Vereinbarung zusätzliche Fähigkeiten und Protokollerweiterungen zu kommunizieren und zu aktivieren. Diese Erweiterungen können verschiedene Verbesserungen umfassen, zum Beispiel striktere Sicherheitsmechanismen, Leistungsoptimierungen oder spezielle, für bestimmte Anwendungsfälle oder Umgebungen angepasste Funktionen. Dieser Mechanismus macht SSH flexibel und erlaubt, das Protokoll an sich ändernde Anforderungen und technologische Entwicklungen anzupassen. Ein Entfernen der Extension-Vereinbarungsnachrichten ist kritisch, weil ein Angreifer dadurch eine weniger sichere Client-Authentifizierungsmethode erzwingen kann.
Der Angreifer muss dazu allerdings Zugriff auf das Netzwerk haben, insbesondere auf den TCP/IP-Verkehr zwischen Client und Server. Es handelt sich also um eine typische Man-in-the-Middle-Attacke. Der Angriff klappt nur bei per Chacha20-Poly1305 oder Encrypt-then-MAC im CBC-Modus verschlüsselten Verbindungen. Laut dem Forscherteam ist diese Konfiguration allerdings gar nicht so selten: Nicht weniger als 77 Prozent der von ihnen untersuchten Internet-Systeme wurden in dieser Konfiguration betrieben.
In ihrer Publikation [1] beschreiben die Forscher im Detail den Angriff, der die Sicherheit einer SSH-Verbindung verringert. Die Auswirkungen der Attacke hängen in der Praxis stark von den unterstützten Erweiterungen ab. Am häufigsten beeinträchtigt sie die Sicherheit der Client-Authentifizierung, wenn ein öffentlicher RSA-Schlüssel zum Einsatz kommt. Bei der Verwendung von OpenSSH 9.5 kann der Angreifer via Terrapin bestimmte Gegenmaßnahmen gegen Angriffe auf die Tastatureingabezeit deaktivieren.
Die Forscher stellen einen Netzwerkscanner bereit, der SSH-Server auf die Schwachstelle hin untersucht. Terrapin betrifft zahlreiche SSH-Implementierungen, darunter OpenSSH, PuTTY und AsyncSSH sowie die Bibliotheken Libssh und Libssh2. Für viele der betroffenen Werkzeuge gibt es bereits Patches. Zur Behebung des Problems müssen sowohl die Clients als auch die Server aktualisiert werden. Alternativ können Administratoren auf nicht betroffene Verschlüsselungsalgorithmen wie AES-GCM umsteigen. (jcb)
Infos
- Beschreibung der Attacke: https://terrapin-attack.com/TerrapinAttack.pdf






