O que é DNSSEC?

Saiba o que é DNSSEC e como você pode usá-lo para adicionar uma camada extra de proteção para os usuários de seus websites e aplicações.

Rafael Rigues - Technical Researcher
O que é DNSSEC?

DNSSEC (Domain Name System Security Extensions) é um conjunto de extensões da especificação DNS original. Ele adiciona recursos de segurança a um serviço que é uma das pedras fundamentais da internet, tornando mais difícil executar ataques que podem prejudicar os usuários, sejam eles indivíduos ou empresas.

Mas antes de explicarmos o que é DNSSEC, precisamos entender o que é DNS, sua importância e quais os motivos para nos preocuparmos com sua segurança.

O que é DNS?

Quando você abre seu navegador e digita o endereço de um site, muita coisa acontece nos bastidores. Todos os computadores conectados à internet se comunicam usando o Protocolo IP (Internet Protocol), onde cada máquina tem um identificador conhecido como “endereço IP”.

Para que um computador possa estabelecer uma conexão com outro, o endereço IP é usado. No caso da versão 4 do protocolo IP (IPv4), esse endereço é representado por uma sequência numérica de até 12 dígitos, como 192.168.1.102.

Na versão 6 (IPv6) do protocolo, o endereço é uma sequência hexadecimal de até 32 caracteres, como fe80::1c4a:8111:b690:bf18. Isto torna possível um número muito maior de endereços, algo necessário, dado o número cada vez maior de dispositivos conectados à internet.

E aqui está o problema: nós, humanos, não somos muito bons em memorizar sequências numéricas. Números de telefone são um bom exemplo disso: muitas pessoas teriam dificuldade em lembrar os números das cinco pessoas com quem mais falam. Imagine memorizar sua lista de contatos inteira, ou os endereços IP de todos os seus sites favoritos!

Para resolver isso, inventamos a lista telefônica. Estes catálogos impressos contém o nome e o número de telefone de todos os assinantes da companhia telefônica em uma cidade ou região, em ordem alfabética pelo sobrenome, facilitando a busca.

Para descobrir o número de telefone da “Padaria do Silva” basta abrir a lista na página do “S” e buscar por “Silva, Padaria do”. Atualmente as listas telefônicas caíram em desuso, mas a lista de contatos em seu smartphone tem uma função similar.

O DNS é a “lista telefônica” da internet

O Sistema de Nomes de Domínio (DNS, Domain Name System) é uma estrutura hierárquica que funciona como uma “lista telefônica” da internet. Servidores DNS mantém registros com os endereços IP de computadores conectados à rede, associados a um nome de domínio fácil de lembrar, e convertem entre as duas formas.

Quando você digita o domínio www.google.com em um navegador, seu computador faz um pedido para o servidor DNS de seu provedor de internet, que retorna uma resposta dizendo que os endereços IP correspondentes são, por exemplo, 142.250.218.4 (IPv4) ou 2800:3f0:4001:811::200 (IPv6). Agora seu navegador sabe com quem deve estabelecer uma conexão para solicitar o conteúdo do site.

Exemplo do processo normal de resolução de um endereço IP em um domínio

Durante o processo normal de resolução de DNS, um cliente envia uma URL para o servidor (1), que retorna um endereço IP (2) usado para estabelecer uma conexão (3).
Imagem: Azion Technologies.

Além de mais conveniente para os humanos, o sistema tem outras vantagens práticas: uma mudança no endereço IP de um servidor é invisível para os usuários: o nome de domínio permanece o mesmo, e os servidores DNS só precisam ser atualizados com o novo endereço.

Da mesma forma, múltiplos endereços IP podem responder por um mesmo domínio, com um servidor DNS indicando o mais adequado para o usuário considerando fatores como a distância geográfica ou o tempo de resposta, no que é conhecido como Intelligent DNS1.

Podemos confiar nas respostas de um servidor DNS?

Quando um servidor DNS não tem um registro correspondente a um domínio, ele consulta outros servidores DNS, de forma recorrente, até que obtenha uma resposta. Essa resposta é armazenada em cache, para acelerar consultas futuras.

E aqui está uma falha crucial no sistema DNS: por design, as respostas dos servidores não são validadas. Um agressor pode “enganar” um servidor DNS, se passando por outro servidor legítimo em uma posição mais alta na hierarquia, e entregar uma resposta com dados falsos sobre um domínio, como um endereço IP sob seu controle.

Diagrama mostra como um agressor pode se interpor entre um servidor DNS legítimo e um cliente, entregando uma resposta manipulada que levará a vítima a um servidor sob seu controle

Durante um ataque, o cliente envia uma URL (1) e o servidor retorna um endereço IP (2). Entretanto, um criminoso pode interceptar os dados e retornar uma resposta fraudulenta com um IP diferente (3), levando o cliente a um servidor sob seu controle (4).
Imagem: Azion Technologies.

Com isso, todo o tráfego dos usuários do servidor enganado para aquele domínio será redirecionado para o endereço controlado pelo malfeitor. E de lá, ele pode entregar conteúdo malicioso ou roubar dados. Este tipo de ataque é conhecido como “DNS Spoofing”.

DNS Spoofing, uma ameaça real

Em 2018, usuários de mais de 70 modelos de roteadores de marcas populares no Brasil foram vítimas de um malware conhecido como GhostDNS, que modifica as configurações dos aparelhos para que usem um servidor DNS malicioso.

Ao acessar os sites de grandes bancos, os usuários eram redirecionados para endereços IP sob controle dos criminosos, com sites falsos onde suas credenciais de acesso eram roubadas.

Na época, uma pesquisa da Netlab2 determinou que quase 100 mil roteadores no Brasil estavam infectados e redirecionavam o tráfego dos 50 sites mais populares no país, incluindo bancos e grandes portais de e-commerce.

A solução: DNSSEC

DNSSEC é um conjunto de extensões da especificação DNS original. Ela fornece um mecanismo de autenticação das respostas de servidores DNS compatíveis, que são assinadas com uma chave criptográfica.

Ao comparar assinaturas, é possível validar uma resposta, o que torna difícil manipular ou falsificar informação e conduzir ataques como o DNS Spoofing. Um ponto importante é que o DNSSEC foi projetado para manter compatibilidade com servidores DNS legados, que não suportam suas extensões.

Vale mencionar que DNSSEC não implementa criptografia de dados, eles continuam a circular em “texto puro”. Uma analogia é um documento com firma reconhecida em cartório: sozinha, a assinatura garante a autenticidade do documento, mas não faz nada para proteger o conteúdo.

Além de ser uma ameaça para os usuários domésticos, o DNS Spoofing também pode colocar em perigo sua infraestrutura corporativa. Um servidor comprometido poderia redirecionar o tráfego de uma aplicação, permitindo que seja interceptada ou modificada por malfeitores antes que alcance seu destino.

Os riscos variam do vazamento de informações dos usuários, o que viola a legislação, como a Lei Geral de Proteção de Dados (LGPD) no Brasil ou a General Data Protection Regulation (GDPR) na União Européia, até ameaças à continuidade de seu negócio.

Ao habilitar DNSSEC no processo de resolução de DNS de sua infraestrutura, você a protege contra ameaças como DNS Spoofing, elevando o nível de segurança oferecido aos seus usuários e à sua organização.

A Plataforma de Edge da Azion oferece DNSSEC gratuitamente com nosso serviço Intelligent DNS, adicionando uma camada extra de proteção para os usuários finais dos websites e aplicações dos nossos clientes. Para mais detalhes sobre como habilitar este recurso, consulte nossa documentação ou contate nossos especialistas.

Referências

Intelligent DNS

Roteadores infectados desviam tráfego de clientes do Itaú, Bradesco, BB e outros bancos

Inscreva-se na nossa Newsletter