O SSL também criptografa o endereço DNS?

5

Se eu fizer uma solicitação HTTP para:

https://hello.domain.com

a conexão também criptografará o endereço de domínio ( hello.domain.com )? Portanto, farejar o tráfego ainda torna impossível adivinhar qual é o endereço DNS solicitado.

Observação: estou falando sobre o endereço DNS, não sobre o endereço IP resolvido.

    
por Mark 11.11.2012 / 23:34

4 respostas

11

Não.

Para que o navegador da Web determine o endereço IP de algum host, digamos example.com , ele deve procurar isso no DNS e essa conexão separada não é criptografada.

O SSL / TLS, portanto, não protege completamente contra ISPs maliciosos. Esse invasor ainda pode determinar qual site o navegador deseja acessar, mesmo que não possa ler os dados reais.

Além disso, as implementações atuais do TLS sempre enviarão o nome de domínio totalmente qualificado do servidor em texto não criptografado para suportar Indicação do nome do servidor . Assim, um ISP mal-intencionado nem precisa olhar para suas consultas DNS.

    
por 11.11.2012 / 23:41
4

Não, o endereço IP não será criptografado.

Eu ia escrever um exemplo simples usando a versão da agência postal / envelope, mas percebi que apenas para DNS / HTTPS isso se tornou mais confuso.

Você pode ver o link para entender o encapsulamento.

Na imagem abaixo, usando o seu exemplo, somente a mensagem de camada superior seria criptografada. Todas as outras camadas são não criptografadas.

    
por 12.11.2012 / 00:18
1

O SSL / TLS transmite o nome do host (não a URL) não criptografado durante o handshake. A URL ( link bla bla ...) é criptografada.

Mas um sniffer sempre será capaz de obter informações sobre IP e porta. Porque sem isso, o seu pacote não pode ser entregue.

Se você quiser criptografia completa, você deve considerar o uso de um túnel VPN com a configuração adequada de dns. Isso irá pelo menos proteger você do sniffer em sua rede local.

    
por 11.11.2012 / 23:37
1

Uma solicitação http é assim:

GET /index.html HTTP/1.1
Host: www.domain.com

Para enviar uma solicitação, o navegador deve primeiro resolver um nome de domínio (nesse caso, deve obter o endereço IP de www.domain.com), conectar-se ao endereço IP e enviar a solicitação. Se você estiver usando https, o conteúdo da solicitação será criptografado e não poderá ser detectado. No entanto, a consulta ao servidor dns não será criptografada, por isso é possível detectar quais sites você está navegando. Se você estiver navegando em sites HTTP usando um proxy HTTP ou uma VPN, seu navegador não enviará consultas de DNS, por isso não será possível dizer quais sites você está navegando ou farejando seu tráfego.

    
por 12.11.2012 / 00:11