Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 374

Envenenamento de cache DNS

Revisado porCybersecurity entrepreneur & security researcher

O que é Envenenamento de cache DNS?

Envenenamento de cache DNSAtaque que insere registos forjados na cache de um resolver DNS para que as consultas seguintes devolvam endereços escolhidos pelo atacante até expirar o TTL.


O envenenamento de cache DNS visa os resolvers recursivos, induzindo-os a aceitar uma resposta forjada que passam então a armazenar e servir. Para ser considerada válida, uma resposta falsificada tem de corresponder ao nome da consulta, chegar na porta UDP correta e conter o identificador de transação (TXID) de 16 bits correto — por isso os ataques clássicos resumem-se a adivinhar ou vencer a corrida por esses campos antes de a resposta autoritativa genuína chegar.

A divulgação de Dan Kaminsky em 2008 (CVE-2008-1447) tornou isto viável na prática: ao forçar consultas a subdomínios aleatórios e inundar o resolver com tentativas de adivinhar o TXID de 16 bits, um atacante podia continuar a tentar sem esperar pela colocação em cache de uma resposta negativa, envenenando o registo NS do domínio-pai. A correção de emergência foi a aleatorização da porta de origem, que ampliou o espaço de tentativas de 16 para cerca de 32 bits. Em 2020, investigadores da UC Riverside e da Tsinghua apresentaram o SAD DNS (CVE-2020-25705): um canal lateral no contador global de limite de taxa do ICMP no Linux que permite a um atacante fora do caminho inferir a porta de origem efémera aberta, anulando esse ganho. O Linux corrigiu a falha aleatorizando o contador de limite de taxa do ICMP (kernel 5.10+).

flowchart TD
  A[Atacante despoleta consulta para random.bank.com] --> R[Resolver recursivo]
  R -->|"consulta UDP, TXID + porta de origem aleatórios"| NS[NS autoritativo real]
  A -.->|"inunda com respostas forjadas: adivinha TXID + porta"| R
  R --> M{A resposta forjada coincide<br/>em nome + porta + TXID<br/>antes da resposta real?}
  M -->|Sim| P[Registo envenenado em cache durante todo o TTL]
  M -->|Não| L[Resposta legítima em cache]
  P --> V[Todos os clientes do resolver redirecionados para o IP do atacante]

Defesas: DNSSEC (RFC 4033–4035) assina criptograficamente os registos, de modo que respostas forjadas falham na validação; a aleatorização de maiúsculas/minúsculas 0x20 e a minimização do nome da consulta acrescentam entropia; e os transportes cifrados (DoH/DoT) eliminam por completo a superfície de UDP em texto simples. TTL curtos e conservadores limitam o raio de impacto quando o envenenamento de facto ocorre.

Exemplos

  1. 01

    O ataque Kaminsky de 2008 (CVE-2008-1447), que explorava falhas de previsibilidade de portas nos principais resolvers.

  2. 02

    SAD DNS (CVE-2020-25705), que ressuscitou o envenenamento através de um canal lateral no limite de taxa do ICMP.

Perguntas frequentes

O que é Envenenamento de cache DNS?

Ataque que insere registos forjados na cache de um resolver DNS para que as consultas seguintes devolvam endereços escolhidos pelo atacante até expirar o TTL. Pertence à categoria Ataques e ameaças da cibersegurança.

O que significa Envenenamento de cache DNS?

Ataque que insere registos forjados na cache de um resolver DNS para que as consultas seguintes devolvam endereços escolhidos pelo atacante até expirar o TTL.

Como se defender contra Envenenamento de cache DNS?

As defesas contra Envenenamento de cache DNS costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.

Quais são outros nomes para Envenenamento de cache DNS?

Nomes alternativos comuns: Envenenamento de cache, Falsificação de DNS (cache).

Termos relacionados

Ver também