In che modo un certificato di fiducia ONE può compromettere tutto ciò che faccio online?

17

Non sono sicuro di aver capito come funziona correttamente TLS. Per quanto mi riguarda, la fiducia in un determinato certificato di un sito Web è basata sulla fiducia in quel sito o meno, ma le domande sottostanti suggeriscono che fidarsi di un certificato metterebbe a rischio tutto ciò che fai online.

Il mio college mi costringe a installare il loro certificato SSL. Come proteggere la mia privacy?

I non è possibile accedere ai siti Web che utilizzano HTTPS, ricevendo invece il messaggio "la tua connessione non è privata"!

Mi sono fidato dei certificati autofirmati più di una volta da molti siti Web perché semplicemente non possono permettersi di pagare un certificato. Questo significa che tutto ciò che faccio è vulnerabile a MitM?

    
posta Ulkoma 28.03.2016 - 13:57
fonte

5 risposte

12

Sfortunatamente, la parola certificato si riferisce a cose diverse in contesti simili. Anche all'interno di TLS / SSL, può significare (almeno):

  • Un server / certificato di dominio
  • Un certificato CA (Certificate Authority)
  • Un certificato client

Molto probabilmente non hai mai usato un certificato client. Questi sono installati nel tuo browser e autenticano il browser su un determinato server. Al contrario, tutti i siti Web utilizzano le password per adempiere a questa funzione.

Un certificato del server autentica un determinato server sul tuo browser - fa sì che il tuo browser sia sicuro che stia parlando con il server corretto, e non con un server imitatore. Ogni server o dominio di solito utilizza un certificato diverso, quindi un certificato del server è valido solo lì. Poiché ci sono molti milioni di server e domini su Internet, il tuo browser non può essere spedito con certificati a tutti loro. Chiunque può generare qualsiasi certificato (autofirmato) per qualsiasi dominio è necessario un altro modo per stabilire la fiducia. È qui che arrivano le CA.

Le CA agiscono come terze parti attendibili : hanno ampia autorità per affermare l'identità (certificati server) di tutte le domini internet. Questa autorizzazione è concessa dagli sviluppatori del browser, che spediscono i loro certificati incorporati nei browser

Ora che conosciamo un po 'di più sui certificati TLS, possiamo rispondere alle tue domande:

the questions below suggest that trusting ONE certificate would put everything you do online at risk.

Questo è vero se è un certificato CA - non un certificato server. La procedura per installarli varia. Poiché una CA è in grado di identificare QUALSIASI dominio su Internet, se si installa una CA "cattiva", tutte le comunicazioni basate su browser possono essere immediatamente compromesse.

I have trusted self-signed certificates more than once from many websites because they simply can't afford to pay for a certificate. Does this mean everything I do is vulnerable to MitM?

No. Questi sono certificati server , sono validi solo per i domini a cui sono rilasciati. È possibile visualizzare queste informazioni se si ispezionano i dettagli del certificato. Il tuo browser potrebbe effettivamente accettare il certificato come valido per il dominio che stai visitando anche se è diverso dai domini elencati nel certificato, ma non ha alcun effetto sugli altri domini.

    
risposta data 28.03.2016 - 22:57
fonte
16

Affidarsi a un certificato non attendibile di un sito (autofirmato o palesemente non valido) potrebbe compromettere la connessione a quel particolare dominio, tuttavia si è comunque sicuri per altri siti, tranne nel caso raro in cui gli altri siti incorporano il contenuto di quel sito con il certificato non attendibile. Per i certificati autofirmati l'unico pericolo è la fiducia iniziale che hai inserito nel certificato, poiché non hai modo di verificare se stai parlando con un server legittimo rispetto a un MITM. Una volta che ti fidi del certificato la prima volta che il tuo browser controlla ancora se la cert è la stessa sulle connessioni successive (se un MITM dovesse apparire la prossima volta non verrai posseduto a meno che non ti fidi anche del loro stesso certificato). Per quanto riguarda la crittografia, il tipo di certificato non ha incidenza su quali suite di crittografia saranno utilizzate e HTTPS con un certificato autofirmato non è più facile da interrompere rispetto a HTTPS con un certificato attendibile.

L'incubo inizia quando inizi a fidarti del certificato CA di qualcuno (scaricando manualmente il certificato e importandolo), in tal caso stai dicendo al computer "lascia che quell'entità garantisca qualsiasi sito web che incontri" e da lì tu " re dando a tale CA il potere di comunicare al tuo computer se qualsiasi sito che visiti è considerato affidabile, dal momento che qualsiasi sito che ha una firma firmata da tale CA (sia per motivi legittimi che per il proprietario della CA MITM) viene ora automaticamente fidato dal tuo browser.

    
risposta data 28.03.2016 - 14:06
fonte
10

A cosa si riferiscono queste domande è l'installazione di un certificato radice (autorità di certificazione). A differenza dei certificati regolari che vengono inviati dal sito Web visitato, il certificato di origine deve essere installato in modo amministrativo nell'archivio certificati / vault del computer client.

I certificati regolari sono usati per confermare l'autenticità di un sito web che lo presenta. Con l'autofirmato questa responsabilità è dalla parte dell'utente.

I certificati radice vengono utilizzati per determinare la validità dei certificati presentati dai siti Web attraverso un percorso di certificazione. Questo è il motivo per cui non è necessario convalidare ogni certificato di qualsiasi sito che visiti individualmente.

Ciò che le aziende fanno, è quello di installare automaticamente (ad esempio MSIE) o chiedere agli utenti l'installazione manuale (ad esempio Firefox) di un certificato di root per il loro proxy. Poi:

  • L'utente apre un browser e naviga verso un sito https://example.com .
  • La connessione viene reindirizzata a un proxy (usiamo BlueCoat ad esempio) che cattura la richiesta.
  • Per stabilire una comunicazione crittografata con il browser, il proxy deve presentare la propria chiave pubblica, quindi inviarlo al browser. La chiave è firmata con un certificato per il dominio https://example.com firmato con il certificato radice BlueCoat.
  • Normalmente un browser si lamenterebbe che il percorso del certificato non porta a una CA radice attendibile. Tuttavia, se l'utente ha installato il certificato radice di un proxy, il browser si fida dei certificati firmati da esso e consente la connessione senza avvisare l'utente.
  • Proxy avvia la comunicazione con il server di destinazione e trasmette tutte le comunicazioni crittografando / decifrando tra sé e il sito Web di destinazione, oltre a crittografarlo / decrittografarlo tra sé e il browser.

Ciò consente al proxy di acquisire un'intera comunicazione.

Installando un certificato di root sui propri computer, gli utenti non vedranno gli avvisi che i certificati inviati dal proxy non sono validi (cioè la comunicazione tra il browser e il sito di destinazione non è crittografata end-to-end). Gli utenti possono controllare e vedere che per ogni https:// di connessione il certificato è stato firmato dal proxy BlueCoat.

Il metodo sopra non consente Convalida estesa , quindi i siti che utilizzano questi tipi di certificati verranno visualizzati nel browser come regolari https-encrypted.

    
risposta data 28.03.2016 - 14:18
fonte
1

Il certificato non ti dice che il sito web è affidabile; ti dice che probabilmente sei connesso al sito web che pensi di essere (potrebbe aver rubato la loro chiave privata).

I certificati autofirmati non hanno alcun controllo da parte di una terza parte, ma anche un certificato CA non fornisce alcuna garanzia su ciò che il sito Web fa con i dati che gli dai, come un indirizzo email, nome utente o password usi in più di un posto.

Il modello CA è abbastanza imperfetto, dal momento che qualsiasi CA potrebbe (ma non dovrebbe) rilasciare certificati a chiunque per qualsiasi sito web. L'installazione di una nuova CA radice o intermedia aumenta il rischio. DANE e Certificate Pinning tentano di mitigarlo.

    
risposta data 28.03.2016 - 17:15
fonte
-2

Devi dare uno sguardo approfondito al certificato di cui ti fidi. Ogni certificato ha il proprio contrassegno di "uso permesso" - e dovresti esaminarlo attentamente. Prendi un'ulteriore lettura qui e there - ti darà tutta l'idea dei tipi di certificato.

AGGIORNAMENTO: è necessario sospettare le capacità di questo certificato: può essere solo autofirmato da un server Web, oppure può essere una CA con funzionalità complete e può firmare altri certificati. Il vettore di attacco quando stai dando a qualcuno il tuo certificato da fidarsi non è solo farglielo credere, ma permetti di alterare ulteriormente i loro trust attraverso quel certificato una volta che è considerato affidabile. Questo è il mio punto.

Ad esempio, puoi ottenere un certificato HTTPS autofirmato su un sito web, finora così buono, ma anche con funzionalità CA : così ti stai fidando e assicurando la tua connessione, ma quando cercherete di andare, diciamo per esempio, gmail.com per controllare la vostra posta, si può tentare un attacco MitM con un certificato identico ai valori di testo con quello originale di GMail, ma firmato con quello stesso certificato di un sito web e perché ci si è appena fidati. Il tuo browser non mostrerà alcun avviso, perché è stato convalidato correttamente.

    
risposta data 28.03.2016 - 23:08
fonte

Leggi altre domande sui tag