Wie sicher ist ein SSH-Tunnel oder eine SSH-Verbindung?

20

Ich habe Leuten oft geraten, einen SSH-Tunnel zu verwenden, um ihr Surfen auf offenen WIFIs oder in anderen unsicheren Situationen zu sichern.
Ich wurde kürzlich von einem Freund gefragt, wie sicher ein SSH-Tunnel ist, nachdem ich vorgeschlagen hatte, SSH zu tunneln. Ich stolperte ein bisschen und wiederholte "es ist sicher".

Obwohl er mit dieser Antwort zufrieden war, störte es mich ein bisschen, dass ich nicht vollständig antworten konnte.
Also die Frage geht an euch:

"Wie sicher ist ein SSH-Tunnel?"

Madmaze
quelle
Kurzer Kommentar; Wenn ein SSH-Tunnel verwendet wird, ist die Sicherheit dieser Verbindung nur so gut wie ihre Endpunkte. Das bedeutet, dass, wenn jemand / etwas einen niedrigen Zugriff auf das Betriebssystem oder das Netzwerk hat, es möglich ist, sich in den Träger einzuhängen und den Inhalt des Tunnels zu lesen.
Mogget

Antworten:

31

Ich möchte hier nur ein wenig aus Wikipedia zitieren:

Selbst wenn eine symmetrische Chiffre derzeit durch Ausnutzen struktureller Schwächen in ihrem Algorithmus unzerbrechlich ist, ist es möglich, den gesamten Schlüsselraum in einem sogenannten Brute-Force-Angriff zu durchlaufen. Da längere symmetrische Schlüssel exponentiell mehr Arbeit für die Brute-Force-Suche erfordern, macht ein ausreichend langer symmetrischer Schlüssel diese Angriffslinie unpraktisch.

Bei einem Schlüssel der Länge n Bits gibt es 2 n mögliche Schlüssel. Diese Zahl wächst sehr schnell, wenn n zunimmt. Nach Moores Gesetz verdoppelt sich die Rechenleistung ungefähr alle 18 bis 24 Monate, aber selbst dieser Verdopplungseffekt lässt die größeren symmetrischen Schlüssellängen, die derzeit als akzeptabel angesehen werden, außer Reichweite. Die große Anzahl von Operationen (2 128), die erforderlich sind, um alle möglichen 128-Bit-Schlüssel auszuprobieren, gelten auf absehbare Zeit als für herkömmliche digitale Computertechniken unerreichbar. Es werden jedoch alternative Formen der Computertechnologie erwartet, die eine überlegene Verarbeitungsleistung als klassische Computer haben können. Wenn ein geeignet dimensionierter Quantencomputer verfügbar wird, auf dem der Algorithmus von Grover zuverlässig ausgeführt werden kann, wird ein 128-Bit-Schlüssel auf 64-Bit-Sicherheit reduziert, was in etwa einem DES-Äquivalent entspricht. Dies ist einer der Gründe, warum AES eine Schlüssellänge von 256 Bit unterstützt. Weitere Informationen finden Sie in der Diskussion zum Zusammenhang zwischen Schlüssellängen und Quantencomputerangriffen am Ende dieser Seite.

Ein 128-Bit-Schlüssel hätte also 340.282.366.920.938.463.463.374.607.431.768.211.456 mögliche Permutationen. Stellen Sie sich vor, Sie gehen alle durch. Selbst ein leistungsfähiger Desktop-Computer kann nur einige wenige pro Sekunde testen.

Obwohl es theoretisch möglich ist, einen SSH-Stream mit Brute-Force-Methoden zu entschlüsseln, wären bis zur Entschlüsselung des Schlüssels durch den leistungsstärksten Computer, den man sich vorstellen kann, zwei Dinge passiert:

  1. Der Schlüssel wäre von SSH geändert worden
  2. Wir wären alle gestorben und die Sonne explodierte und zerstörte die Erde.
Majenko
quelle
9
+1 In nur 12 Sekunden habe ich erfahren, dass ich und jeder, den ich kenne, sterben und die Sonne explodieren wird.
MetaGuru
1
@ioSamurai Meh ... nein, die Sonne wird nicht explodieren, es ist weitaus komplexer.
Cilan
Sie sagen, Sie müssten 340 durchgehen ... (die riesige Zahl), aber das setzt voraus, dass es der letzte Schlüssel ist, den Sie versuchen, der der gute ist, nicht wahr? Ich gehe davon aus, dass die Wahrscheinlichkeit, dass der Schlüssel in der ersten Milliarde liegt, zumindest etwas niedriger ist
Ced
Die Wahrscheinlichkeit, dass der Schlüssel in der ersten Milliarde liegt, liegt bei 1 zu 2 ^ 98. Immer noch eine riesige Zahl.
Elkvis
2
Pandas ... denke ich ...?
Majenko
4

<Haftungsausschluss: kein Experte für Kryptographie>

SSHv2 verwendet meist die gleichen Algorithmen wie TLS / SSL:

  • DH , kürzlich ECDH oder RSA für Schlüsselaustausch;
  • RSA , DSA oder ECDSA für die Serverauthentifizierung (und sehr häufig für die Clientauthentifizierung).
  • AES für symmetrische Verschlüsselung (der gesamte Datenstrom wird mit einem zufällig generierten Schlüssel verschlüsselt).

Alle von ihnen sind weit verbreitet und für den täglichen Gebrauch als sicher erwiesen.

In jedem Protokoll hängt die Sicherheit jedoch davon ab, dass Sie wissen, dass Sie mit dem richtigen Server kommunizieren. Bei SSH (Standardkonfiguration) müssen Sie beim ersten Herstellen einer Verbindung zum Server den Fingerabdruck überprüfen . (Bestätigen Sie dies nicht einfach, ohne es tatsächlich zu überprüfen, wie dies viele tun.) Beim nächsten Mal wird der Schlüssel des Servers anhand einer zwischengespeicherten Kopie überprüft, um Man-in-the-Middle-Angriffe zu verhindern - allerdings nur, wenn der richtige Schlüssel zwischengespeichert wurde an erster Stelle.

(Im Vergleich dazu behandelt TLS / SSL die oben genannten Probleme mithilfe von X.509-Zertifikaten, die von bekannten Behörden ausgestellt wurden und denen vertraut wird, dass sie keine gefälschten Zertifikate signieren.)

Grawity
quelle
-1

Das eigentliche Problem der SSH-Sicherheit sind Zertifikate. Viele Unternehmen werden sichere Schlüssel für SSH-Verbindungen herausgeben, und es ist nicht das erste Mal, dass die Datenbanken, die diese Schlüssel enthalten, gehackt werden. Die beste Lösung, um sicher zu sein, besteht darin, ein eigenes Schlüsselpaar zu generieren. Dies ist jedoch ein Aufwand, auf den wir uns verlassen können die Onces in der Datenbank ..

Michel Kuipers Chaosje
quelle
2
Das Erstellen eines Schlüsselpaars für SSH ist kein Problem: Sie klicken auf eine Schaltfläche oder geben einen Befehl ein und warten einige Sekunden. Ich habe noch nie von jemandem gehört, der einen SSH-Schlüsselgeneratordienst eines Drittanbieters verwendet. Sie sollten sich niemals darauf verlassen, dass jemand anderes einen privaten Schlüssel für Sie generiert.
Wyzard
Gab es vor ein paar Jahren nicht eine große Sache, bei der ein Unternehmen auf ALLEN Servern dieselben Schlüssel verwendet hatte, auf einem der Server alle Schlüssel zum Herunterladen zur Verfügung standen und der ursprüngliche Schlüssel von einem Mitarbeiter verwendet wurde, den Sie nicht hatten Ich habe ungefähr 10 Jahre lang nicht für die Firma gearbeitet, also wusste niemand, dass sein Schlüssel verwendet wurde, geschweige denn, dass er noch aktiv war.
Phill Healey