Filtrar respostas de DNS encaminhadas com ligação

3

Quais opções eu tenho para bloquear respostas de consultas DNS que contêm um endereço IP ou um intervalo específico?

Estou lendo os ataques de religação de DNS e imaginando como posso bloqueá-los.

Quando um invasor tentar um ataque de religação, ele tentará enganar o navegador para que ele acredite que o conteúdo mal-intencionado foi exibido em 127.0.0.1 ou em um endereço da minha LAN. Eles fazem isso configurando seu servidor DNS para servir o endereço fraudulento (quando consultado no script malicioso). Gostaria de evitar isso bloqueando todas as respostas a consultas DNS encaminhadas que resultem em um endereço local ou de rede local.

Eu uso uma zona Bind9 para minha rede local e uso encaminhadores para resolver endereços externos.

A caixa Bind é um servidor Debian por trás do meu roteador NAT. Ele executa o UFW para firewall e permite TCP / UDP pela porta 53.

    
por Frank Thomas 17.01.2018 / 01:47

1 resposta

0

É possível obter o Bind para filtrar os endereços retornados usando o recurso deny-answer-addresses . Para usar isso, adicione o seguinte à seção options do arquivo de configuração /etc/bind/named.conf.options :

deny-answer-addresses { 192.0.2.0/24; } except-from { "example.net"; };

Isso impedirá que qualquer endereço 192.0.2.x seja retornado em resposta a qualquer consulta DNS, exceto no domínio example.net hospedado localmente.

O manual do Bind também recomenda a filtragem de aliases com:

deny-answer-aliases { "example.net"; };

Um conjunto sugerido de filtros que encontrei no link parece cobrir os ataques de religação de DNS mais comuns com base no meu próprio teste:

deny-answer-addresses {
    // Unconfigured
    0.0.0.0;
    // RFC 1918
    10.0.0.0/8;
    172.16.0.0/12;
    192.168.0.0/16;
    // RFC 3927
    169.254.0.0/16;
    // IPv6
    // :: to ::ffff:ffff:ffff.
    // Includes ::, ::1, IPv4-Compatible IPv6 Addresses ::/96,
    // and IPv4-mapped IPv6 addresses ::ffff:0:0/96
    ::/80;
    // IPv6 Link local
    fe80::/10;
    // RFC 6052
    64:ff9b::/96;
} except-from { "Your.Domain"; };
deny-answer-aliases { "Your.Domain"; };

Provavelmente, não é uma boa ideia excluir 127.0.0.0/8 , pois é frequentemente usado por serviços como listas de bloqueio de spam.

    
por 20.06.2018 / 12:42