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.
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.
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.
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.