Meu servidor DNS está empurrando 20mbps, por quê?

22

Estou executando um servidor DNS no EC2, e ele estava empurrando cerca de 20mbps ontem quando eu chequei meu painel de faturamento e encontrei 1,86 TB de dados usados este mês. Essa é uma grande fatura para o meu pequeno laboratório de projetos. Eu nunca notei quedas no desempenho e não me preocupei em configurar limites de tráfego antes, mas agora, já que isso me custou US $ 200 + em taxas de largura de banda.

Parece que alguém usou meu servidor DNS como parte de um ataque de amplificação, mas não sei como.

A configuração está abaixo.

// BBB.BBB.BBB.BBB = ns2.mydomain.com ip address

options {
        listen-on port 53 { any; };
//      listen-on-v6 port 53 { ::1; };
        directory "/var/named";
        dump-file "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-transfer { BBB.BBB.BBB.BBB; };
        allow-query-cache { BBB.BBB.BBB.BBB; };
        allow-query { any; };
        allow-recursion { none; };

        empty-zones-enable no;
        forwarders { 8.8.8.8; 8.8.4.4; };

        fetch-glue no;
        recursion no;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};

zone "mydomain.com" IN {
        type master;
        file "zones/mydomain.com";
        allow-transfer { BBB.BBB.BBB.BBB; localhost; };
};

Tendo em conta esta configuração, eu não deveria estar respondendo a qualquer pergunta para a zona que eu não hospedo localmente, certo? Este servidor é o SOA para alguns domínios, mas não é usado para procurar qualquer coisa pelos meus outros servidores (todos resolvem o OpenDNS ou o Google). Que diretriz tenho errado aqui, ou estou esquecendo? Meus logs (63MB +) estão cheios disso:

client 58.215.173.155#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 58.215.173.155#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 58.215.173.155#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 58.215.173.155#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 58.215.173.155#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 58.215.173.155#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 218.93.206.228#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 218.93.206.228#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 218.93.206.228#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 218.93.206.228#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 218.93.206.228#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 218.93.206.228#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 50.19.220.154#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 50.19.220.154#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 50.19.220.154#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 50.19.220.154#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 50.19.220.154#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 50.19.220.154#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 123.207.161.124#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 123.207.161.124#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 123.207.161.124#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 123.207.161.124#4444: query (cache) 'cpsc.gov/ANY/IN' denied
client 123.207.161.124#4444: query (cache) 'cpsc.gov/ANY/IN' denied
    
por Russell Anthony 14.12.2016 / 20:00

1 resposta

19

Mesmo que o seu servidor esteja configurado para responder somente a consultas autoritativas como a sua, ainda é possível que ele seja usado para um ataque de amplificação - ANY consultas contra a raiz de uma zona podem acionar uma resposta UDP bastante pesada, a raiz da região tende a ter um número de registros, particularmente com SPF / DKIM / DNSSEC.

É provável que isso aconteça no seu sistema - use tcpdump para confirmar. Se eles estiverem usando seus registros autorizados em um ataque de amplificação, suas melhores opções serão simplesmente passar para um novo IP e esperar que eles não sejam seguidos, alterar seus registros de raiz de zona para torná-lo um vetor de amplificação menos eficaz ou implementar limite de taxa de resposta (se o seu BIND for compatível).

    
por 14.12.2016 / 20:57