KeyTrap: como desativar um servidor DNS com um único pacote

Relatamos sobre o ataque DoS KeyTrap, que pode desabilitar servidores DNS com um único pacote malicioso que explora uma vulnerabilidade no DNSSEC.

Um grupo de pesquisadores representando várias universidades e institutos alemães descobriu uma vulnerabilidade no DNSSEC, um conjunto de extensões para o protocolo DNS projetado para otimizar a segurança, e principalmente para combater a falsificação de DNS.

Um ataque que eles denominaram KeyTrap, que explora a vulnerabilidade, pode desativar um servidor DNS enviando a ele um único pacote de dados malicioso. Continue lendo o artigo para saber mais sobre esse ataque.

Como o KeyTrap funciona e por que é perigoso

A vulnerabilidade do DNSSEC só se tornou conhecida recentemente, mas foi descoberta em dezembro de 2023 e registrada como CVE-2023-50387. Foi atribuída uma pontuação CVSS 3.1 de 7,5 e uma classificação de gravidade “Alta”. Informações completas sobre a vulnerabilidade e o ataque associado a ela ainda não foram publicadas.

Entenda como o KeyTrap funciona. O ator malicioso configura um servidor DNS que responde a solicitações de servidores DNS de armazenamento de cache, ou seja, aqueles que atendem diretamente às solicitações dos clientes, com um pacote malicioso. Em seguida, o golpista faz com que um servidor de cache solicite um registro DNS de seu servidor hackeado. O registro enviado como resposta é um assinado e criptografado maliciosamente . A forma como a assinatura é elaborada faz com que o servidor DNS atacado que tente verificá-la funcione com capacidade total da CPU por um longo período de tempo.

Segundo os pesquisadores, um único pacote malicioso desse tipo pode congelar o servidor DNS por um período que varia de 170 segundos a 16 horas, dependendo do software que ele executa. O ataque KeyTrap não apenas pode negar o acesso ao conteúdo da web a todos os clientes que usam o servidor DNS direcionado, mas também pode interromper vários serviços de infraestrutura, como proteção contra spam, gerenciamento de certificados digitais (PKI) e roteamento seguro entre domínios (RPKI).

Os pesquisadores se referem ao KeyTrap como “o pior ataque ao DNS já descoberto”. Curiosamente, as falhas na lógica de validação das assinaturas que tornam o KeyTrap possível foram descobertas em uma das primeiras versões da especificação do DNSSEC, publicada em 1999. Em outras palavras, a vulnerabilidade está prestes a completar 25 anos.

CVE-2023-50387 está presente na especificação do DNSSEC desde 1999.

As origens do KeyTrap podem ser rastreadas até o RFC-2035, a especificação do DNSSEC publicada em 1999.

Como se proteger do KeyTrap

Os pesquisadores alertaram todos os desenvolvedores de software de servidores DNS e os principais provedores públicos de DNS. Patchs e avisos de segurança para corrigir a CVE-2023-50387 já estão disponíveis para PowerDNS, NLnet Labs Unbound e Internet Systems Consortium BIND9. Se você é um administrador de um servidor DNS, está na hora de instalar as atualizações

No entanto, tenha em mente que as questões de lógica do DNSSEC que tornaram o KeyTrap possível são fundamentais e não são facilmente corrigidas. As patches lançadas pelos desenvolvedores de software de DNS podem ir apenas até certo ponto para resolver o problema, pois a vulnerabilidade faz parte do padrão, em vez de implementações específicas. “Se lançarmos [KeyTrap] contra um resolvedor com patch, ainda obtemos 100 por cento de uso da CPU, mas é possível que responda”, diz um dos pesquisadores.

A exploração prática da falha permanece uma possibilidade, com o resultado potencial mesmo que as falhas imprevisíveis. Caso isso aconteça, os administradores de redes corporativas fariam bem em preparar uma lista de servidores DNS de backup com antecedência, podendo alternar conforme necessário para manter a rede funcionando normalmente e permitindo que os usuários sigam executando suas atividades online sem interrupção.

Dicas