Questa è in realtà una domanda vaga. Ecco perché. Quando si accede a un server https, http (qui si vede che https è semplicemente http su TLS) è uno strato superiore rispetto a TLS che viene eseguito al di sotto. La prima cosa che viene fatta è negoziare le impostazioni TLS, come la suite di crittografia, le chiavi, l'handshake, ecc. Ciò avviene sulla porta https, ma non ci sono ancora dati http. Quindi il client o il server passa alla modalità di crittografia in cui tutto è crittografato.
Una volta terminata la negoziazione, si passa ai dati dell'applicazione che è semplicemente un vecchio protocollo HTTP come payload.
Ma questi dati sono crittografati quindi non vengono mostrati URL. Tuttavia, come è noto, l'indirizzo IP del server e del client NON è crittografato perché non viene utilizzato nel livello TLS ma è il livello IP che si trova sotto TLS e questo livello inferiore. TLS è il payload del pacchetto IP che contiene l'indirizzo IP, il numero di porta, il protocollo IP come tcp, ecc. Come intestazioni. Pertanto, poiché solo TLS è crittografato, questi elementi non sono crittografati.
Inoltre, l'intercettazione non è un problema, a condizione che il certificato del server o del client possa essere "collegato" all'autorità di root o che disponga di un certificato valido.
Infine vorrei dire che TLS e quindi HTTPS sono in realtà un framework e un algoritmo per negoziare il massimo livello di sicurezza, in base alle preferenze client e server e ai framework minimi supportati. In sostanza, TLS non definisce la crittografia effettiva utilizzata. Si tratta di suite di crittografia che sono in genere regolate in un'impostazione di tipo RFC separata rispetto al protocollo TLS. Pertanto, sulla base del solo HTTPS, non è sufficiente affermare la qualità della sicurezza nelle aree che fornisce. Si può presumere solo una minima sicurezza e difficoltà. La qualità effettiva delle suite di crittografia è una domanda complessa e specifica per ogni tipo, poiché molti si affidano a meccanismi completamente diversi.
Modifica
Inoltre è stato portato alla mia attenzione che l'estensione del TLS del Server Name Indicator (utilizzato per più server che condivide un indirizzo IP) di TLS rende facilmente a chiunque il nome di dominio del server a cui si accede. Solo nei primi messaggi inviati al server, un campo conterrà il testo ASCII del nome di dominio come "google.com". Quindi questa informazione è facilmente visibile da chiunque controlli il primo pacchetto. Questa è una scelta che è comune tra molti host di siti web in questi giorni. Ma nessun URL dovrebbe essere non protetto.
Infine dipende in realtà dai semi di crittografia, non sono tutti uguali, come la suite di crittografia predefinita che non è crittografia. Quindi chiunque vedrebbe semplicemente http se il browser e il sito Web sono configurati per supportare tali semi. Quindi, a seconda del browser Web e del server, ovunque solo dall'indirizzo IP, all'indirizzo IP e il nome del dominio (TLS con estensione SNI, a volte può essere elaborato anche altrove, che è meno facile), per tutto in altri casi a seconda dei punti di forza dei semi cifrari.