Servidor DNS: DNSSEC e Ciberataques DNS (Parte 4/6)

AGRADEÇA AO AUTOR COMPARTILHE!

Leia também o primeirosegundoterceiro artigo desta série!

Como muitos protocolos da Internet, o sistema DNS também não foi projetado com a segurança necessária e contém várias limitações de design. Essas limitações, combinadas com os avanços na tecnologia, tornaram fácil para os invasores sequestrar uma pesquisa de DNS para fins maliciosos, como enviar um usuário a um site fraudulento que possa distribuir malware ou coletar informações pessoais.

 “O DNS Security Extensions (DNSSEC) é um protocolo de segurança criado para atenuar esse problema. O DNSSEC protege contra ataques assinando dados digitalmente para ajudar a garantir sua validade. Para garantir uma pesquisa segura, a assinatura deve acontecer em todos os níveis do processo de pesquisa de DNS. Este processo de assinatura é semelhante a alguém que assina um documento legal com uma caneta; essa pessoa assina com uma assinatura única que ninguém mais pode criar, e um perito judicial pode verificar essa assinatura e verificar se o documento foi assinado por essa pessoa. Essas assinaturas digitais garantem que os dados não foram adulterados.”

O DNSSEC implementa uma política de assinatura digital hierárquica em todas as camadas do DNS. Por exemplo, no caso de uma consulta “google.com.br”, um servidor DNS raiz assinaria uma chave para o servidor de nomes .COM e o servidor de nomes .COM assinaria uma chave para o servidor de nomes autoritativo do google.com.

Embora a segurança aprimorada seja sempre preferida, o DNSSEC foi projetado para ser compatível com versões anteriores para garantir que as pesquisas de DNS tradicionais ainda sejam resolvidas corretamente, embora sem a segurança adicional. O DNSSEC foi criado para funcionar com outras medidas de segurança, como SSL / TLS, como parte de uma estratégia holística de segurança na Internet.

Além disso, o DNSSEC cria um “trem” de confiança pai-filho que percorre todo o caminho até a zona de raiz. Essa cadeia de confiança não pode ser comprometida em nenhuma camada de DNS, caso contrário, a solicitação se tornará aberta a um ataque man-in-the-middle.

 Para fechar a cadeia de confiança, a própria zona de raiz precisa ser validada (comprovadamente livre de falsificação ou fraude), e isso é realmente feito usando intervenção humana. Curiosamente, no que é chamado de Cerimônia de Assinatura da Zona Raiz, indivíduos selecionados de todo o mundo se encontram para assinar a raiz DNSKEY RRset de maneira pública e auditada.

Caso queira explorar mais sobre o DNSSEC busque aqui

Alguns ataques mais comuns envolvendo o DNS

O DNSSEC é um poderoso protocolo de segurança, mas infelizmente não é adotado universalmente. Essa falta de adoção, juntamente com outras vulnerabilidades potenciais, além do fato de que o DNS é parte integrante da maioria das solicitações da Internet, torna o DNS um dos principais alvos de ataques mal-intencionados. Os invasores encontraram várias maneiras de segmentar e explorar os servidores DNS, eis alguns dos mais comuns:

DNS spoofing / envenenamento de cache (DNS spoofing/cache poisoning): esse é um ataque em que dados DNS forjados são introduzidos no cache de um resolvedor de DNS, resultando no retorno de um endereço IP incorreto para um domínio. Em vez de ir ao site correto, o tráfego pode ser desviado para uma máquina mal-intencionada ou em qualquer outro lugar que o invasor desejar; muitas vezes, essa será uma réplica do site original usada para fins maliciosos, como distribuição de malware ou coleta de informações de login.

Encapsulamento de DNS(DNS tunnelling): este ataque usa outros protocolos para encapsular por meio de consultas e respostas de DNS. Os atacantes podem usar SSH, TCP ou HTTP para passar malware ou informações roubadas em consultas DNS, não detectadas pela maioria dos firewalls.

Sequestro de DNS(DNS hijacking) no sequestro de DNS, o invasor redireciona as consultas para um servidor de nome de domínio diferente. Isso pode ser feito com malware ou com a modificação não autorizada de um servidor DNS. Embora o resultado seja semelhante ao do spoofing de DNS, esse é um ataque fundamentalmente diferente, pois segmenta o registro DNS do site no servidor de nomes, em vez do cache de um resolvedor.

HJck

Ataque NXDOMAIN: Este é um tipo de ataque de inundação de DNS em que um invasor inunda um servidor DNS com solicitações de registros que não existem, em uma tentativa de causar uma negação de serviço para o tráfego legítimo. Isso pode ser feito usando ferramentas de ataque sofisticadas que podem gerar subdomínios exclusivos para cada solicitação. Os ataques NXDOMAIN também podem segmentar um resolvedor recursivo com o objetivo de preencher o cache do resolvedor com solicitações de lixo eletrônico.

Ataque a domínio fantasma(Phantom domain attack): um ataque de domínio fantasma tem um resultado semelhante a um ataque NXDOMAIN em um resolvedor de DNS. O invasor configura vários servidores de domínio “fantasmas” que respondem a solicitações muito lentamente ou não respondem de maneira alguma. O resolvedor é então atingido com uma enxurrada de pedidos para esses domínios e o resolvedor fica amarrado à espera de respostas, levando a um desempenho lento e negação de serviço.

Ataque por subdomínio aleatório(Random subdomain attack): nesse caso, o invasor envia consultas DNS para vários subdomínios aleatórios e inexistentes de um site legítimo. O objetivo é criar uma negação de serviço para o servidor de nomes autoritativo do domínio, impossibilitando a consulta do site a partir do servidor de nomes. Como um efeito colateral, o provedor que atende o invasor também pode ser afetado, pois o cache de seu resolvedor recursivo será carregado com solicitações incorretas.

Ataque de bloqueio de domínio(Domain lock-up attack): os criminosos cibernéticos orquestram essa forma de ataque configurando domínios e resolvedores especiais para criar conexões TCP com outros resolvedores legítimos. Quando os resolvedores de destino enviam solicitações, esses domínios enviam de volta fluxos lentos de pacotes aleatórios, atrapalhando os recursos do resolvedor.

Ataque CPE baseado em botnet: Esses ataques são realizados usando dispositivos CPE (Customer Premise Equipment, hardware fornecido por provedores de serviços para uso por seus clientes, como modems, roteadores, caixas de cabo, etc.). Os invasores comprometem as CPEs e os dispositivos se tornam parte de uma botnet, usada para executar ataques de subdomínio aleatórios em um site ou domínio.

Qual é a melhor maneira de se proteger contra ataques baseados em DNS?

Além do DNSSEC, um operador de uma zona DNS deve tomar medidas para obter uma infraestrutura de provisionamento excessivo muito além do trafego esperado, assim mitigará ataques DDoS, reduzindo as chances de sobrecarga de recursos.

O roteamento Anycast é outra ferramenta útil que pode atrapalhar os ataques DDoS, pois permite que vários servidores compartilhem um único endereço IP, portanto, mesmo que um servidor DNS seja desligado, ainda haverá outros funcionando e funcionando. Outra estratégia popular para proteger servidores DNS é um firewall DNS.

A segurança e a ciência dos ataques cibernéticos é extremamente relevante nos dias de hoje. Agora que matamos este ponto, vamos seguindo. Em breve publicaremos a quinta parte da minissérie de artigos sobre o DNS Cloudflare DNS 1.1.1.1.

Leia também o primeirosegundo e terceiro artigo desta série!

AGRADEÇA AO AUTOR COMPARTILHE!

Renan Saisse

Mais artigos deste autor »

Cientista de Dados atuante na área de desenvolvimento de canal varejo na Oi S.A, Pesquisador Blockchain na Comunidade Blockchain Brasil, Membro do Grupo de Estudos em Aplicações Blockchain de Interesse Público do ITS Rio e IRIS BH, tendo atuado anteriormente como Analista de Sistemas, Auditor de Tecnologia/Operações e Gerente de Projetos de Tecnologia nas áreas de Faturamento/Co-Faturamento, Fraude, Revenue Assurance e Roaming Internacional. Graduado em Análise e Desenvolvimento de Sistemas (UniverCidade); Pós-Graduado em CiberCrime, CberSegurança e em Perícia Forense Aplicada à Informática (ambas pela Faculdade Unyleya); Acadêmico do curso de Bacharel em Direito (UFRJ); Possui cursos de Extensão em Ciência Política (USP), Direito Digital (EMERJ) e Linguagem de Programação Python (Harvard); Certificado em ITILV3 e Cobit V4.1.


Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">