Quanto è sicuro un tunnel o una connessione SSH?


20

Ho spesso consigliato alle persone di utilizzare un tunnel SSH per garantire la loro navigazione su WIFI aperti o in altre situazioni non sicure.
Un amico mi ha chiesto recentemente quanto sia sicuro un tunnel SSH dopo aver suggerito il tunneling SSH. Sono inciampato un po 'e ho ribadito "è sicuro".

Anche se era soddisfatto di questa risposta mi ha infastidito un po 'che non potevo rispondere completamente.
Quindi la domanda va a voi ragazzi:

"Quanto è sicuro un tunnel SSH?"


Breve commento; Se si utilizza un tunnel SSH, la sicurezza di tale connessione è valida solo quanto i suoi endpoint. Ciò significa che se qualcuno / qualcosa ha un accesso di basso livello al sistema operativo o alla rete, è possibile agganciarsi al corriere e leggere il contenuto del tunnel.
Mogget

Risposte:


31

Vorrei solo citare un po 'da Wikipedia qui:

Anche se una cifra simmetrica è attualmente indistruttibile sfruttando le debolezze strutturali del suo algoritmo, è possibile attraversare l'intero spazio delle chiavi in ​​quello che è noto come un attacco di forza bruta. Poiché chiavi simmetriche più lunghe richiedono un lavoro esponenzialmente maggiore per la ricerca della forza bruta, una chiave simmetrica sufficientemente lunga rende impraticabile questa linea di attacco.

Con una chiave di lunghezza n bit, ci sono 2 n chiavi possibili. Questo numero cresce molto rapidamente all'aumentare di n. La legge di Moore suggerisce che la potenza di calcolo raddoppia all'incirca ogni 18-24 mesi, ma anche questo effetto di raddoppio lascia le lunghezze di chiave simmetrica più grandi attualmente considerate accettabilmente ben fuori portata. Il gran numero di operazioni (2 128) richiesto per provare tutte le possibili chiavi a 128 bit è ampiamente considerato fuori portata per le tecniche di elaborazione digitale convenzionali per il prossimo futuro. Tuttavia, sono previste forme alternative di tecnologia informatica che possono avere una potenza di elaborazione superiore rispetto ai computer classici. Se fosse disponibile un computer quantistico di dimensioni adeguate in grado di eseguire in modo affidabile l'algoritmo di Grover, ridurrebbe una chiave a 128 bit fino a una sicurezza a 64 bit, all'incirca un equivalente DES. Questo è uno dei motivi per cui AES supporta una lunghezza della chiave di 256 bit. Vedi la discussione sulla relazione tra le lunghezze delle chiavi e gli attacchi di calcolo quantico in fondo a questa pagina per ulteriori informazioni.

Quindi una chiave a 128 bit avrebbe 340.282.366.920.938.463.463.374.607.431.768.211.456 possibili permutazioni. Immagina di passare attraverso tutti questi. Anche un potente computer desktop può provare solo pochi al secondo.

Quindi, sebbene teoricamente sia possibile decodificare la forza bruta in un flusso SSH, quando la chiave è stata decifrata dal computer più potente che si possa immaginare due cose sarebbero successe:

  1. La chiave sarebbe stata cambiata da SSH
  2. Saremmo tutti morti e il sole sarebbe esploso e avrebbe distrutto la terra.

9
+1 In soli 12 secondi ho appreso che io e tutti quelli che conosco moriremo e il sole esploderà.
MetaGuru,

1
@ioSamurai Meh ... no, il sole non esploderà, è molto più complesso di così.
Cilan,

Dici che dovresti passare attraverso 340 ... (il numero enorme) ma questo presuppone che sia l'ultima chiave che provi, qual è quella buona, vero? Suppongo che la probabilità che la chiave sia nel primo miliardo è almeno un po 'più bassa
Ced

La probabilità che la chiave sia nel primo miliardo è di circa 1 su 2 ^ 98. Ancora un numero enorme.
Elkvis,

2
Panda .... Penso ...?
Majenko,

4

<disclaimer: non un esperto di crittografia>

SSHv2 utilizza principalmente gli stessi algoritmi di TLS / SSL:

  • DH , recentemente ECDH o RSA per lo scambio di chiavi;
  • RSA , DSA o ECDSA per l'autenticazione del server (e molto spesso, l'autenticazione client).
  • AES per crittografia simmetrica (l'intero flusso di dati viene crittografato utilizzando una chiave generata casualmente).

Tutti sono ampiamente utilizzati e dimostrati sicuri per l'uso quotidiano.

Tuttavia, in qualsiasi protocollo, la sicurezza dipende dal sapere che si sta comunicando con il server giusto. Nel caso di SSH (configurazione standard), la prima volta che ci si connette al server è necessario verificarne l' impronta digitale . (Non solo confermarlo senza effettivamente controllare, come fanno molte persone.) La prossima volta, la chiave del server verrà verificata rispetto a una copia cache per impedire attacchi man-in-the-middle - ma solo se la chiave giusta è stata memorizzata nella cache innanzitutto.

(In confronto, TLS / SSL gestisce quanto sopra usando i certificati X.509 emessi da autorità ben note che si fidano di non firmare certificati fasulli.)


-1

Il vero problema della sicurezza SSH sono i certificati. Molte aziende forniranno chiavi sicure per le connessioni SSH, e non è la prima volta che i database contenenti queste chiavi vengono hackerati. Quindi la migliore soluzione per essere sicuri è generare la tua coppia di chiavi, ma questa è una seccatura, e questo è il motivo per cui contiamo su queste aziende ... Fino a quando non vengono hackerati e non lo facciamo; dobbiamo controllare 340.282.366.920.938.463.463.374.607.431.768.211.456 chiavi ma solo le onces nel database ..


2
Generare una coppia di chiavi per SSH non è certo una seccatura: fai clic su un pulsante o digiti un comando e attendi qualche secondo. Non ho mai sentito parlare di nessuno che utilizza un servizio di generatore di chiavi SSH di terze parti. Non dovresti mai fare affidamento su qualcun altro per generare una chiave privata per te.
Wyzard

Un paio d'anni fa non c'era una cosa importante in cui qualche azienda avesse usato le stesse chiavi su TUTTI i loro server, le chiavi erano tutte disponibili per il download su uno dei server e la chiave iniziale usata era quella di un dipendente che non avevi Ho lavorato per la compagnia per circa 10 anni, quindi nessuno sapeva che la sua chiave fosse usata e tanto meno ancora attiva.
Phill Healey,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.