Como evitar a falsificação de DNS para pesquisa de DNS

1

Eu estou tentando encontrar uma maneira de obter o endereço IP real para um nome de domínio. Estou trabalhando em um roteador que faz o traffic shaping com o uso de iptables e tc . Eu então preciso configurar as regras do iptables para marcar os pacotes vindos de certos domínios, usando seus endereços IP.

Em uma primeira vez, usei o comando dig , consultando o servidor de nomes do domínio, assim:

nbNameServer='$dig NS $url +short | wc -l'

# If there is NS for the given domain
if [ $nbNameServer -gt 0 ]; then

for i in $($dig NS $url +short $TOdig); do

    ipDom='$dig @$i $url +short $TOdig'

    # Ip found on the $i name server, no need to consult the others
    if [ -n "$ipDom" ]; then
        failed='echo -e "$ipDom" | egrep "no servers could be reached"'

         if [ ! -n "$failed" ]; then
             break
         else
             ipDom=""
         fi
    fi
    done
 fi

Se o roteador no arquivo /etc/resolv.conf tiver digamos 8.8.8.8 o DNS do google, existe uma maneira de um ip ou domínio não estar atualizado ou ser falsificado usando como eu fiz?

Na verdade, não sei se o roteador estará em um ambiente onde um servidor DNS local é usado ou não.

É possível realizar uma pesquisa de DNS segura com o comando host também?

A única coisa que quero ter certeza é que, para um determinado domínio mydomain.com, a pesquisa de DNS retornará todos os endereços IP (eu só preciso do registro A ou AAAA), atualizados.

Ainda estou um pouco confuso sobre todos os mecanismos de DNS, portanto, quaisquer comentários / observações / conselhos são obviamente bem-vindos.

    
por Mulot 01.01.2010 / 04:56

3 respostas

5

Na prática, é altamente improvável que os resultados obtidos em dig tenham sido falsificados. Se você quer algum tipo de garantia absoluta, porém, você está sem sorte - sem algo como o DNSSEC, o spoofing é totalmente possível.

    
por 01.01.2010 / 05:11
3

Desde que o DNSSEC não seja amplamente usado, a melhor maneira de proteger contra falsificação de DNS é usar a "randomização da porta de origem". Isto é especialmente importante desde o "Bug DNS Kaminsky" .

Você precisa ter certeza de que tanto a versão do DIG que você usa quanto o servidor DNS recursivo que você consulta implementaram a "randomização da porta de origem".

Teoricamente, ainda é possível falsificar a "randomização da porta de origem", mas isso levaria muito tempo e muito tráfego de rede.

    
por 02.01.2010 / 18:07
0

Então, se você fizer um dig + dnssec e procurar por 'ad' no campo flags, você sabe que não foi falsificado ... mas como o dnssec não está habilitado para muitas zonas, isso não vai dizer-lhe qualquer coisa na maioria dos casos.

    
por 01.01.2010 / 07:42