My boss is asking me to prove that HTTPS really encrypts the information. How can I do that?
A livello base, puoi usare un ispettore pacchetto o un semplice proxy di port forwarding. Forse Wireshark controllerà i pacchetti abbastanza facilmente.
Dovresti essere in grado di scoprire rapidamente che il traffico HTTP è di testo normale, mentre l'HTTPS è un linguaggio binario senza senso. (ad eccezione del nome host)
Tuttavia, questo dimostra solo che la connessione è offuscata. Non dimostra crittografia o sicurezza. Specificamente non fa nulla per mostrare l'immunità a MiTM.
Fortunatamente, il browser fa tutto questo per te. Se un browser moderno tenta di connettersi a una pagina Web HTTPS, verificherà quanto segue:
- Algoritmi di hash abbastanza forti per i certificati coinvolti.
- Algoritmi di crittografia sufficientemente potenti. (cioè è effettivamente crittografato)
- Catena di certificati emessa da Autorità di certificazione attendibili (ad esempio, CA che verifica la proprietà del dominio prima di emettere i certificati)
- Non scadenza dei certificati.
- La corrispondenza dei valori hash significa che non ci sarà il MiTM.
Mentre il tuo capo può come per vedere l'incomprensione di wireshark tra HTTP e HTTPS, un test più strong è semplicemente visitare il sito HTTPS con un browser moderno.
Assicurati che il browser non sia stato preconfigurato per ignorare l'avviso. (cioè test da più computer e smartphone)
Se prevedi di continuare a utilizzare HTTPS in modo permanente (quale dovresti), una precauzione saggia sarebbe quella di forza reindirizza tutte le visite HTTP al sito HTTPS , perché non puoi garantire che tutti i visitatori includano il prefisso https://
quando visitano il tuo sito.