Perché non è possibile per una terza parte decodificare il traffico HTTPS? [duplicare]

4

Davvero non ne so molto di HTTPS. Ma sento sempre persone che dicono che è al 100% sicuro e a prova di proiettile.
La mia domanda è: è vero o addirittura possibile.

Voglio dire che ci sono molti strumenti che ti permettono di leggere il traffico internet di tutti gli altri dispositivi che si trovano nella stessa rete come te.
In che modo i certificati e la crittografia contribuiscono a rendere questa prova a prova di proiettile?

Non sarebbe sempre possibile decodificare i pacchetti HTTPS proprio come fa il client?
Voglio dire che ci deve essere un qualche tipo di chiave che entrambe le parti (Client e Server) devono conoscere per essere in grado di decodificare i dati correttamente, quindi chi crea la chiave deve inviarlo all'altra parte. Non dovrebbe uno sniffer di rete essere in grado di raccoglierlo?

    
posta Forivin 30.06.2014 - 16:15
fonte

3 risposte

1

Bene, nel mondo reale è effettivamente possibile eseguire un attacco uomo in mezzo su SSL, chiamato ssl stripping. Questo è l'esempio più semplice. Ciò dipende dal fatto che la maggior parte delle pagine di attraversamento di HTTPS avviene come risultato di un reindirizzamento da un HTTP non protetto semplice.

Questo è il tipo di attacco che stai descrivendo quando chiedi se sarebbe possibile decifrare un pacchetto come un client - la risposta è sì, mettendosi tra client e server e negoziando la tua connessione SSL con ciascuno di loro. mentre questo attacco è vecchio e facile da mitigare, è ancora molto pericoloso e diretto. Ecco il discorso in cui è stato presentato per la prima volta l'attacco: link

Una forma diversa di attacco MITM ma solo un esempio di come questo tipo di attacchi possa avere effetto su di me e su di te: link e link

Esistono anche un'intera serie di attacchi ai diversi componenti che costituiscono TLS / SSL, come il codice di flusso RC4. Maggiori informazioni qui: link

EDIT: per un'eccellente descrizione tecnica di come funziona effettivamente SSL, che mette tutto il mio post sopra nel contesto, vedi qui: Come funziona SSL / TLS?

EDIT: Sopra dove ho detto che era possibile mitigare MITM contro SSL, non ho dato una risorsa, facendo di questa una risposta cattiva :( Vedi qui per maggiori dettagli su come può essere reso più SSL robusto: Che cos'è il blocco dei certificati?

MODIFICA FINALE: questa è anche un'ottima risposta alla tua domanda originale link

    
risposta data 30.06.2014 - 16:37
fonte
1

Perché qualcuno non può decodificare il traffico HTTPS? Invia un segreto "segreto di crittografia" all'interno della "crittografia a chiave pubblica".

Quindi per rispondere alla tua domanda, devi capire

  1. crittografia
  2. Crittografia a chiave pubblica.

La maggior parte della crittografia deriva dall'innovazione del One Time Pad , che presenta limitazioni che verranno apprese come tu studi l'OTP. Ci sono molti modi per rendere un OTP "migliore", e ciascuno ha diversi costi e benefici.

Quindi devi familiarizzare con la crittografia a chiave pubblica. Il presupposto di questo è che utilizza una matematica molto, molto difficile che persino i migliori computer oggi non riescono a decifrare.

Uno dei problemi di matematica molto difficili attualmente in uso è chiamato RSA . Ci sono più formule tra cui scegliere, ma per saperne di più, puoi mantenerlo semplice con un esempio di penna e carta .

Quindi la risposta breve è che la matematica protegge la chiave di crittografia che viene inviata al destinatario. Se un osservatore di terze parti vedesse quella comunicazione, avrebbe bisogno di computer incredibilmente potenti per capire quella chiave ... e poi, ( in 30, 50 o più anni ) questa informazione è inutile.

    
risposta data 30.06.2014 - 16:53
fonte
0

La "chiave di cui entrambe le parti devono essere a conoscenza" (anche nota come chiave di sessione) deriva da un cosiddetto pre-master-secret (numero casuale) che viene scambiato utilizzando crittografia a chiave pubblica . Un certificato è solo una chiave pubblica con firma digitale con alcune informazioni aggiuntive. Con questa chiave pubblica, il client è in grado di crittografare i messaggi che solo il server può decodificare utilizzando la chiave privata corrispondente.

    
risposta data 30.06.2014 - 16:31
fonte

Leggi altre domande sui tag