Executando verificação de segurança...
2

Como o DNSSEC soluciona as falhas de segurança dos endereços na Internet

O DNSSEC é uma configuração avançada do DNS que adiciona uma camada extra de segurança aos domínios. Ele valida as informações do endereço IP sempre que alguém tenta acessar um domínio. Isso garante a autenticidade do endereço entregue e previne um tipo de ataque hacker, o envenenamento de cache do DNS.

  1. Por que o DNSSEC é importante?

Quando mandamos um e-mail para alguém ou acessamos um site, nosso computador precisa ter certeza de que estamos falando (I) com a pessoa certa e (II) em um canal sigiloso.

Para garantir o primeiro fundamento usamos o DNSSEC, a extensão de segurança do DNS, tema deste artigo. Para garantir o segundo fundamento usamos o protocolo DANE, explicado aqui.

Apesar de importantíssimos para autenticação e segurança de sites e comunicação via e-mail, muitas organizações ainda desconhecem sua aplicação.

Em poucas palavras, o registro DNSSEC previne um tipo específico de ataque hacker: o envenenamento de cache de DNS, uma forma de redirecionar o usuário de um endereço legítimo para um falso.

  1. O que é o DNSSEC?

O DNSSEC é uma especificação avançada do DNS que adiciona uma camada extra de segurança aos domínios que a utilizam. Ela possibilita a verificação de informações frente ao DNS sempre que alguém tentar acessar um domínio.

Para realmente entendermos como isso ocorre, vamos explicar o que significa DNS e cache.

  1. DNS: Sistema de Nomes de Domínio

DNS significa Sistema de Nomes de Domínio em português, ou seja, é a lista telefônica da internet: pública, transparente e acessível. Por exemplo, o site Registro.br é um serviço de hospedagem de domínio onde encontramos o DNS.

Quando queremos acessar um site, nós simplesmente digitamos seu nome de domínio no Google Chrome, como meudomínio.com, e chegamos a ele. Porém as máquinas não entendem o nome de modo direto.

O DNS converte o nome “melhorempresa.com.br” em um número ou endereço IP (Protocolo de Internet) e só assim você é levado ao site.

No email, o domínio corresponde à parte após o @ e também tem um IP próprio. Por exemplo, em [email protected], o domínio é “melhorempresa.com.br”.

Curiosidade: todo o site tem um número IP. Mas nem todo o site possui um e-mail associado ao seu domínio.

  1. O que significa cache?

Como estamos o tempo todo acessando um conjunto mais ou menos constante de páginas, nosso computador armazena os endereços mais usados em uma parte do seu sistema operacional.

O cache do computador é o conjunto de endereços IPs armazenados na máquina a fim de agilizar uma segunda consulta, caso necessária.

  1. O que é DNS Recursivo e Autoritativo?

DNS Recursivo é o sistema de domínio dos servidores de Internet (Vivo, Claro, etc) responsável por encontrar o IP para a página que você quer junto ao DNS onde ele está efetivamente registrado.

Assim como o seu computador pessoal, o DNS recursivo mantém uma série de endereços em cache para diminuir o tempo de busca. Lembre-se que quando entramos em páginas do exterior (sem o “.br”), estamos acessando informações registradas em outro continente.

O DNS Autoritativo é o sistema no qual o domínio está associado ao número IP. São eles que realmente informam: “o nome ‘x’ corresponde ao número ‘y’”. Podemos considerá-lo a verdadeira “lista telefônica grande e pública” da internet.

Curiosidade: existem vários DNS Autoritativos na rede.

Em suma, seu computador pede o IP para o DNS do provedor (seta “zero”), e este pede o IP para o DNS do registro (setas 1-3), caso não esteja “anotado” no cache.

Imagem 03 - A seta sem número corresponde ao pedido frente ao DNS Recursivo. As setas 1-3 à solicitação junto ao DNS Autoritativo. A seta 4 mostra o site sendo acessado.

De tempos em tempos, seu computador limpa o cache, ou seja, deixa a lista em branco. Por isso, mais cedo ou mais tarde sua máquina vai solicitar um endereço ao DNS Recursivo e este vai fazer o mesmo com o DNS Autoritativo.

Na etapa de solicitação, um ataque é possível.

  1. Envenenamento de cache de DNS

O que pode ocorrer é um hacker entregar um número IP falso antes que o servidor DNS Autoritativo tenha a chance de responder ao Recursivo com o endereço verdadeiro do domínio.

Ele faz isso mesmo sem decifrar a comunicação criptografada entre os dois, ele apenas chega antes e entrega um IP falso.

No final, o DNS Recursivo recebe o número 1.2.3.4, por exemplo, como endereço para o domínio exemplo.com.br. Isso se chama envenenamento do cache DNS (DNS cache poisoning).

Obs: É importante repetir que esse ataque não interfere na criptografia entre os DNS. Já o ataque homem-no-meio age assim, como veremos em outro artigo.

Então, suas mensagens serão redirecionadas para a caixa de entrada do endereço IP 1.2.3.4, ou seja, elas chegarão na caixa postal do hacker ao invés de serem entregues para [email protected].

Às vezes, isso gera uma mensagem do tipo “seu e-mail não pode ser entregue” na sua caixa de entrada, mas na realidade você foi vítima de um ataque.

O mesmo pode ocorrer com um site. Caso a resposta do roteador seja interceptada, um hacker pode redirecionar os dados que você colocou no site do seu banco para uma página dele, coletando assim informações como login e senha.

  1. Como funciona o DNSSEC na prática

A partir do momento em que o dono do domínio habilite o DNSSEC, toda vez que alguém solicitar o nome de domínio em questão ao DNS Autoritativo, ele será acompanhado de uma assinatura digital.

Em outras palavras, quando seu roteador te encaminha para um endereço e esbarra em um domínio com registro DNSSEC, ele faz uma série de consultas interativas para checar se ele recebeu de fato a resposta legítima do dono do domínio.

Como essa checagem é feita? Como o servidor sabe se a assinatura é legítima ou não?

Vamos dar um exemplo. Você envia um e-mail para [email protected]. Se existir o registro DNSSEC, então os dados vem com uma assinatura feita por um algoritmo que só o dono do domínio possui: a chave secreta.

O servidor do usuário então usa um outro algoritmo - a chave pública - para decifrar essa mensagem criptografada e conseguir uma sequência de números chamada hash.

Se a sequência de números presente na mensagem for a mesma gerada pela chave privada, então os dados vieram mesmo do servidor de exemplo.com.br.

Para deixar claro: inúmeros hash legítimos são produzidos a partir do algoritmo, não é um número fixo como a senha do seu banco.

Como o hacker não sabe a chave privada, ele não consegue hashs legítimos para assinar suas mensagens.

Porém qualquer pessoa pode verificar se uma assinatura em um endereço IP veio com um hash verdadeiro, basta existir uma chave pública no DNS Autoritativo. Como o nome já diz, a chave pública está disponível para qualquer um na internet.

Na imagem abaixo vemos como as assinaturas DS (“domain signature”) e RRSIG feitas pela chave privada. Elas correspondem à chave pública (DNSKEY).

É possível notar como cada parte do exemplo.com.br é checada separadamente e depois na sua totalidade. Esse processo é a verificação.

  1. O que fazer a seguir?

Se você faz parte de uma empresa ou organização, você precisa garantir total segurança a todos que acessem suas páginas na web, sobretudo ao preencherem formulários e logins.

E como ficou evidente, a extensão de segurança do DNS é uma das medidas - mas não a única - para proteger sua comunicação digital.

O próximo passo então é habilitar o DNSSEC no servidor DNS do seu domínio. Disponibilizamos aqui um guia gratuito do Registro.br caso queira começar.

Mas caso você precise de uma mãozinha com quem já lida com isso há muitos anos, a Agência Planner é a melhor opção para profissionalizar seu ambiente virtual.

Esperamos que tenha gostado do conteúdo e nos vemos em breve!

Artigos relacionados

https://www.draytek.net.br/faq/o-que-e-dns-security-dnssec-e-como-usa-lo/
https://registro.br/tecnologia/dnssec/dns-e-dnssec/domonios-dnssec-obrigatorio/
https://br.godaddy.com/help/o-que-e-dnssec-6135
https://wiki.brasilpeeringforum.org/w/DNSSEC_Seguranca_do_DNS

Carregando publicação patrocinada...