/ / Le terze parti possono leggere l'URL completo durante la navigazione tramite HTTPS?

Terze parti possono leggere l'URL completo durante la navigazione tramite HTTPS?


Quando visiti in modo sicuro un sito Web tramite https:// i dati inviati tra il server e il browser sono crittografati, ma per quanto riguarda gli URL che stai visitando all'interno del sito? Il tuo ISP o altro osservatore di terze parti può vedere quello che stai guardando?

La sessione di domande e risposte di oggi ci viene fornita da SuperUser, una suddivisione di Stack Exchange, un raggruppamento di siti Web di domande e risposte guidato dalla community.

La domanda

Un lettore SuperUser anonimo vuole sapere se le loro sessioni di navigazione sono completamente sicure:

Sappiamo tutti che HTTPS crittografa la connessionetra il computer e il server in modo che non possa essere visualizzato da terzi. Tuttavia, l'ISP o una terza parte possono vedere il link esatto della pagina a cui l'utente ha effettuato l'accesso?

Ad esempio, visito:

https://www.website.com/data/abc.html

L'ISP saprà che ho effettuato l'accesso a * / data / abc.html o saprà semplicemente di aver visitato l'IP di www.website.com?

Se lo sanno, allora perché Wikipedia e Google hanno HTTPS quando qualcuno può semplicemente leggere i log di Internet e scoprire il contenuto esatto che l'utente ha visualizzato?

Una domanda interessante che ha certamente implicazioni per la privacy personale. Investighiamo.

La risposta

Collaboratore di SuperUser Grawity offre una panoramica molto concisa di come viene elaborato l'URL completo lungo il percorso:

Da sinistra a destra:

Il schema https: è, ovviamente, interpretato dal browser.

Il nome del dominio www.website.com viene risolto in un indirizzo IP tramite DNS. Il tuo ISP vedremo la richiesta DNS per questo dominio e la risposta.

Il sentiero /data/abc.html viene inviato nella richiesta HTTP. Se si utilizza HTTPS, esso sarà crittografato insieme al resto della richiesta e risposta HTTP.

Il stringa della domanda ?this=that, se presente nell'URL, viene inviato nella richiesta HTTP, insieme al percorso. Quindi è anche crittografato.

Il frammento #there, se presente, non viene inviato da nessuna parte - è interpretato dal browser (a volte da JavaScript nella pagina restituita).

In breve, tutto a destra del nome del dominio viene crittografato dalla sessione HTTPS e rimane invisibile al tuo ISP o a chiunque dia una occhiata alle tue attività.


Hai qualcosa da aggiungere alla spiegazione? Suona nei commenti. Vuoi leggere altre risposte da altri utenti esperti di Stack Exchange? Dai un'occhiata al thread completo di discussione qui.