News for hackers. Stuff that matters.
Re:“This is why I use ad blockers and a pi-hole server” by zie on Thursday January 23, 2020 @12:00PM (#22129215)
Not really, as HTTPS doesn't currently encrypt the HTTP host header. It might someday, but even that wouldn't be foolproof.
Re:“This is why I use ad blockers and a pi-hole server” by mathgladiator on Thursday January 23, 2020 @01:11PM (#22130025)
I thought https was just http over a socket with ttls? Os, is it the certificate handshake where host header is leaked?
Re:“This is why I use ad blockers and a pi-hole server” by zie on Thursday January 23, 2020 @01:48PM (#22130433)
It's sent un-encrypted in the very first handshake setup so the server knows which public key to return. Details here[0].

There is, as you can see from Wikipedia[0], an encrypted version(esni), but that only sort of solves the problem. See [1] for more details on those.

The high level overview is, perfect secrecy of who you are talking to is a very hard problem on the Internet, and while some of these new features might help, there are a LOT of leaks to plug, so if someone is able to watch your traffic go by, chances are they can tell who you are talking to, but they maybe can't figure out what you are saying. Which may or may not matter, depending on your security threat(s).

0: https://en.wikipedia.org/wiki/Server_Name_Indication

1: https://tools.ietf.org/html/draft-ietf-tls-esni-05#section-7

Re:“This is why I use ad blockers and a pi-hole server” by Sohcahtoa82 on Thursday January 23, 2020 @01:39PM (#22130330)
> is it the certificate handshake where host header is leaked?

Yes, because of SNI [0].

In short, the ClientHello message sent by your browser as the first step of TLS negotiation (After the TCP connection is made, obviously) includes the hostname of the server you are trying to connect to unencrypted so that the server knows which certificate to present in the case of multiple sites being served on one IP/port combo.

[0] https://en.wikipedia.org/wiki/Server_Name_Indication

Re:“This is why I use ad blockers and a pi-hole server” by tremon on Thursday January 23, 2020 @01:38PM (#22130319)
SNI requires the host header to be sent unencrypted, as the server needs to know which certificate to offer for the TLS session.
Re:“This is why I use ad blockers and a pi-hole server” by wrboyce on Thursday January 23, 2020 @02:47PM (#22131091)
No. The SNI is transmitted in plain text as part of the ClientHello but TLS does not care about application implementation details. The HTTP Host header is encrypted along with the rest of the request.