
Ouvi falar de um novo tipo de DDOS ondentp é usado para reflexão.
Minhas perguntas são muito simples:
Você pode fornecer detalhes sobre como eles funcionam e esclarecer? Como o ntp é executado no UDP, suponho que deve haver algum tipo de pacote forjado em algum lugar.
Como é possível verificar exaustivamente se alguns servidores NTP estão vulneráveis (e não podem estar envolvidos em nenhum ataque)?
Se algum dia nos tornarmos alvo de tal ataque, haverá alguma maneira de mitigar?
Como esse tipo de ataque foi amplamente utilizado em 2014, aqui vão mais alguns detalhes:
- Você pode encontrar mais informações sobre issocve.
- "Ontem à noite, 30/01/2014, a partir das 22:15 CET, a rede Witbe em Paris foi seriamente afetada por um ataque de negação de serviço distribuída (DDOS) usando amplificação NTP."
- Ai, 350 Gpbs, isso dóihttp://www.itnews.com.au/News/372033,worlds-largest-ddos-strikes-us-europe.aspx
- O comportamento genérico sobre ddos pode ser encontrado aqui:Estou sob DDoS. O que posso fazer?
- BBC fala sobre ataques NTP:http://www.bbc.com/news/technology-26662051
- Mais uma pergunta: se eu gravar corretamente, o openntpd escuta por padrão em 127.0.0.1 e o ntpd escuta em 0.0.0.0 - não tenho certeza se todos os servidores ntp envolvidos na reflexão ddos precisavam cumprir o tempo publicamente - apenas, acho que alguns administradores de sistemas não qualificados instalaram o ntp para sincronizar a hora localmente e deixaram os arquivos de configuração padrão.
Uma maneira simples de prevenir e mitigar esse tipo de problema seria escutar em 127.0.0.1 por padrão? Eu acho que isso é verdade para qualquer serviço (bind9, mysql, ...)?
Responder1
Esses ataques já existem há muito tempo e só se tornaram populares novamente nos últimos meses. Eles funcionam como qualquer ataque de amplificação normal: um host falsifica uma consulta para que o endereço IP de origem pareça ser o host alvo. O servidor NTP envia sua resposta para o endereço falsificado. Como a resposta para tipos de consulta específicos pode ser bastante grande e geralmente é UDP, isso pode rapidamente se tornar um problema para o host alvo: ele está sendo inundado com pacotes NTP.
Infelizmente, esta não é uma vulnerabilidade nos servidores NTP, é apenas um recurso que está sendo abusado. Uma coisa a considerar é se você precisa executar servidores NTP que podem ser consultados em toda a Internet. Se isso não for necessário, crie uma lista de acesso ou uma política de firewall para bloquear consultas provenientes de fontes não confiáveis. Então, o que você pode fazer para verificar se seus servidores NTP estão vulneráveis é fazer consultas NTP de fontes não confiáveis e verificar se obtém uma resposta. Mas, infelizmente, há um grande número de servidores NTP que são públicos intencionalmente (por exemplo, todos os servidores em pool.ntp.org
). Se precisar executar um servidor NTP público, você pode considerar a implementação da limitação de taxa de consulta para reduzir o impacto no host de destino em caso de abuso.
Outra parte mais genérica da solução é que as redes precisam implementarBCP38, que lhes diz para filtrar o tráfego que sai de suas redes, de forma que o envio de pacotes falsificados seja impossível. Infelizmente, ainda existe um grande número de redes que não implementam este tipo de filtragem, pelo que todos os ataques com pacotes de origem falsificados (utilizando qualquer protocolo como NTP, DNS ou chargen) ainda são possíveis.
O que você pode fazer para mitigar esse ataque depende um pouco da sua rede e das ferramentas disponíveis, mas uma coisa que você deve considerar é bloquear pacotes NTP recebidos de fontes não confiáveis (portanto, verifique quais servidores NTP você está usando). Claro, isso não ajuda se o seu uplink estiver congestionado. Nesse caso, você precisará pedir ajuda ao seu ISP para filtrar o tráfego.
Responder2
Minhas respostas:
- Os ataques usam comandos monlist (que serão exibidos como ntpv2 reservado no tcpdump). Esses comandos não são limitados pela taxa normal. Monlist (e outros comandos de monitoramento) funcionarão apenas em IPs que têm permissão para 'consultar' seu servidor, então adicione 'noquery' aos seus padrões.
- Tente um ntpdc -nc monlist yourip de um IP externo para ver se o seu servidor responde.
- Ratelimite seu tráfego NTP de entrada. Não no próprio ntpd, mas antes de chegar ao daemon. Como configurar isso no Linux é discutido em"minha configuração de limitação de taxa" na lista de discussão do pool NTP
Responder3
- Você pode fornecer detalhes sobre como eles funcionam e esclarecer? Como o ntp é executado no UDP, suponho que deve haver algum tipo de pacote forjado em algum lugar.
O US-CERT tem uma ótima descrição deste ataque em "Alerta (TA14-017A) Ataques de amplificação baseados em UDP" e "Alerta (TA14-013A) Ataques de amplificação NTP usando CVE-2013-5211".
TA14-013A diz melhor:
Descrição
O UDP, por design, é um protocolo sem conexão que não valida endereços IP de origem. A menos que o protocolo da camada de aplicação utilize contramedidas como o início da sessão, é muito fácil forjar o datagrama do pacote IP para incluir um endereço IP de origem arbitrário [7]. Quando muitos pacotes UDP têm seu endereço IP de origem forjado para um único endereço, o servidor responde a essa vítima, criando um ataque de negação de serviço (DoS) refletido.
Recentemente, descobriu-se que certos protocolos UDP têm respostas específicas a determinados comandos que são muito maiores do que a solicitação inicial. Onde antes os invasores eram limitados linearmente pelo número de pacotes enviados diretamente ao alvo para conduzir um ataque DoS, agora um único pacote pode gerar dezenas ou centenas de vezes a largura de banda em sua resposta. Isso é chamado de ataque de amplificação e, quando combinado com um ataque DoS reflexivo em grande escala, torna relativamente fácil conduzir ataques DDoS.
O gráfico incluído sobre “fator de amplificação de largura de banda (BAF)” mostra que o NTP apresenta o pior comportamento. Como o NTP é um protocolo extremamente comum e muitos sistemas operacionais Linux são fornecidos com um servidor NTP ativo, esse problema é particularmente grave.