Ataque de DDoS baseado em amplificação NTP

Um ataque volumétrico de DDoS tira proveito de uma vulnerabilidade do protocolo NTP com o objetivo de inundar um servidor com tráfego UDP.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Defina um ataque de DDoS por amplificação NTP
  • Explique como funciona um ataque de amplificação NTP
  • Entenda as diversas estratégias de mitigação para esse tipo de ataque de DDoS

Conteúdo relacionado


Quer saber mais?

Assine o theNET, uma recapitulação mensal feita pela Cloudflare dos insights mais populares da internet.

Consulte a política de privacidade da Cloudflare para saber como coletamos e processamos seus dados pessoais.

Copiar o link do artigo

O que é um ataque por amplificação NTP?

Um ataque por amplificação NTP é um ataque volumétrico de negação de serviço distribuída (DDoS) baseado em reflexão, no qual um invasor explora uma funcionalidade de Protocolo de Tempo para Redes (NTP) do servidor de modo a sobrecarregar uma rede ou servidor visados com uma quantidade amplificada de tráfego UDP, tornando o alvo e a infraestrutura que o circunda inacessíveis para o tráfego normal.

Como funciona um ataque de amplificação NTP?

Todos os ataques de amplificação exploram uma disparidade no custo de largura de banda entre um invasor e o recurso web visado. Quando a disparidade de custo é ampliada por muitas solicitações, o volume de tráfego resultante pode interromper a infraestrutura de rede. Ao enviar consultas breves que resultam em longas respostas, o usuário malicioso consegue obter mais com menos. Ao multiplicar essa ampliação fazendo com que cada bot de uma botnet faça solicitações semelhantes, o invasor tanto se mantém encoberto e imune à detecção quanto colhe os benefícios de um tráfego de ataque intensamente aumentado.

Os ataques de inundação de DNS são diferentes dos ataques de amplificação de DNS. Diferentemente das inundações de DNS, os ataques de amplificação de DNS refletem e amplificam o tráfego proveniente de servidores de DNSnão protegidos de modo a ocultar a origem do ataque e aumentar sua eficácia. Os ataques de amplificação de DNS usam dispositivos com conexões de largura de banda inferior para fazer inúmeras solicitações a servidores de DNS não protegidos. Os dispositivos fazem muitas pequenas solicitações de registros DNSmuito grandes, mas, ao fazer as solicitações, o invasor forja o endereço de retorno de modo que seja o da vítima pretendida. A amplificação permite que o invasor derrube alvos maiores usando apenas recursos de ataque limitados.

Como ocorre com a amplificação de DNS, a amplificação NTP pode ser pensada no contexto de um adolescente malicioso que liga para um restaurante e diz, “Quero todos os itens do seu cardápio, um de cada. Agora me ligue de volta e repita todo o meu pedido”. Quando o restaurante pergunta para qual telefone deve retornar, o número fornecido é o da vítima visada. Em seguida, a vítima recebe uma ligação do restaurante com um monte de informações que não solicitou.

O Protocolo de Tempo para Redes foi projetado para permitir que os dispositivos conectados à internet sincronizem seus relógios internos e cumpre uma função importante na arquitetura da internet. Ao explorar o comando monlist ativado em alguns servidores NTP, um invasor consegue multiplicar o tráfego de sua solicitação inicial, o que resulta em uma resposta muito grande. Nos dispositivos mais antigos, esse comando é habilitado à revelia e responde com os endereços IP de origem das últimas 600 solicitações que foram feitas ao servidor NTP. A solicitação monlist de um servidor com 600 endereços em sua memória será 206 vezes maior do que a solicitação inicial. Isso significa que um invasor com 1 GB de tráfego da internet consegue produzir um ataque de +200 gigabytes — um aumento gigantesco do tráfego de ataque resultante.

Um ataque de amplificação NTP pode ser dividido em quatro etapas:

  1. O invasor usa uma botnet para enviar pacotes UDP com endereços de IP falsificados a um servidor NTP com seu comando monlist habilitado. O endereço de IP falsificado em cada pacote aponta para o endereço IP real da vítima.
  2. Cada pacote UDP faz uma solicitação ao servidor NTP, usando seu comando monlist, que resulta em uma grande resposta.
  3. Em seguida, o servidor responde ao endereço falsificado com os dados resultantes.
  4. O endereço IP do alvo de ataque recebe a resposta e a infraestrutura de rede circundante fica sobrecarregada com a avalanche de tráfego, resultando em uma negação de serviço.
Ataque de DDoS por amplificação NTP

Como resultado de um tráfego de ataque que parece ser tráfego legítimo, vindo de servidores válidos, a tarefa de mitigar esse tipo de tráfego de ataque sem bloquear os servidores NTP reais da atividade legítima fica dificultada. Devido ao fato de que os pacotes UDP não exigem handshake, o servidor NTP enviará grandes respostas ao servidor visado sem verificar se a solicitação é autêntica. Somado a um comando incorporado que, por padrão, envia uma resposta grande, isso faz com que os servidores NTP constituam uma excelente fonte de reflexão para ataques de amplificação de DDoS.

Como um ataque de amplificação NTP é mitigado?

Para um indivíduo ou empresa acessando um site ou um serviço, as opções de mitigação são limitadas. Isso decorre do fato de que, embora possa ser o alvo, não é o servidor do indivíduo que sofre os efeitos principais de um ataque volumétrico. Devido à alta quantidade de tráfego gerada, a infraestrutura que rodeia o servidor sente o impacto. O Provedor de Internet (ISP) ou outros provedores de infraestrutura upstream podem não ser capazes de lidar com o tráfego de entrada sem ficarem sobrecarregados. Como resultado, o provedor poderá encaminhar o tráfego para o endereço de IP da vítima visada como em uma filtragem blackhole, derrubando o site da vítima e se protegendo enquanto isso. Além dos serviços de proteção externos como a proteção contra DDoS da Cloudflare, as estratégias de mitigação consistem, principalmente, em soluções preventivas de infraestrutura de internet.

Desabilitar o monlist: reduz o número de servidores NTP compatíveis com o comando monlist.

Uma solução simples para corrigir a vulnerabilidade monlist é desabilitar o comando. Todas as versões do software NTP anteriores à versão 4.2.7 são vulneráveis por padrão. Ao atualizar um servidor NTP para a versão 4.2.7 ou superior, o comando é desabilitado, corrigindo a vulnerabilidade. Se não for possível atualizar, seguir as instruções da US-CERT permitirá que o administrador de um servidor faça as alterações necessárias.

Verificação do IP de origem: impede que pacotes falsificados saiam da rede.

Devido ao fato de que as solicitações UDP sendo enviadas pela botnet do invasor precisam ter um endereço de IP de origem falsificado para o endereço de IP da vítima, um componente crucial para reduzir a eficácia dos ataques de amplificação baseados em UDP é que os provedores de internet (ISPs) rejeitem qualquer tráfego interno com endereços de IP falsificados. Se um pacote for enviado de dentro da Rede com um endereço de origem que o faça parecer como originado fora da Rede, trata-se provavelmente de um pacote falsificado que pode ser abandonado. A Cloudflare recomenda fortemente que todos os provedores implementem a filtragem do tráfego de entrada e, às vezes, poderá entrar em contato com ISPs que, sem saber, participam de ataques de DDoS (em violação à BCP38), ajudando-os a perceber sua vulnerabilidade.

A combinação entre desabilitar o monlist nos servidores NTP e implementar a filtragem do tráfego de entrada em redes que atualmente permitam a falsificação de IPs é uma maneira eficaz de deter esse tipo de ataque antes que alcance a rede pretendida.

Como a Cloudflare mitiga os ataques de amplificação NTP?

Com um firewall configurado corretamente e uma capacidade de Rede suficiente (o que nem sempre é fácil de encontrar, a menos que você seja do tamanho da Cloudflare), torna-se trivial bloquear ataques de reflexão como os ataques de amplificação NTP. Embora o ataque tenha como alvo um único endereço de IP, nossa Rede Anycast irá dispersar todo o tráfego do ataque até o ponto em que deixe de ser disruptivo. A Cloudflare consegue usar nossa escala a nosso favor de modo a distribuir o peso do ataque entre vários data centers, balanceando a carga para que o serviço nunca seja interrompido e o ataque nunca sobrecarregue a infraestrutura do servidor visado. Recentemente, nosso sistema "Gatebot" de mitigação de DDoS detectou 6.329 ataques de reflexão simples durante um período de seis meses (o que equivale a um a cada 40 minutos) e nossa Rede conseguiu mitigar todos eles com sucesso. Saiba mais sobre a proteção avançada contra DDoS da Cloudflare.