Gostaria de compartilhar com vocês um script [1] que escrevi para checar se um servidor DNS é suspeito. Tem havido uma crescente onda de ataques internos e externos a roteadores sem fio, modems ADSL etc, sobre a qual fiz um post [2] na última sexta-feira aí achei que um pouco de shell poderia ajudar analistas e sysadmins.
O script pega uma série de domínios que atacantes possam estar interessados e compara a resolução do seu DNS atual e o do Google (8.8.8.8), ou de um servidor DNS que você queria testar e o do Google. Para checar se o DNS da máquina que está rodando o script tem algum comportamento suspeito então, basta fazer:
$ ./checkdns.sh
Ou se quiser testar um servidor DNS específico (este exemplo é com um malicioso mesmo):
./checkdns.sh -v 188.138.102.XXX
Mon Jun 1 08:02:57 EDT 2015 [188.138.102.XXX] Querying A record for
itau.com.brMon Jun 1 08:02:58 EDT 2015 [188.138.102.XXX] oddly resolved
itau.com.br to 198.11.253.XXX
Mon Jun 1 08:02:58 EDT 2015 [188.138.102.XXX] Querying A record for
bradesco.com.brMon Jun 1 08:02:59 EDT 2015 [188.138.102.XXX] oddly resolved
bradesco.com.br to 198.11.253.XXX
Mon Jun 1 08:02:59 EDT 2015 [188.138.102.XXX] Querying A record for
hsbc.com.brMon Jun 1 08:03:00 EDT 2015 [188.138.102.XXX] oddly resolved
hsbc.com.br to 198.11.253.XXX
Mon Jun 1 08:03:00 EDT 2015 [188.138.102.XXX] Querying A record for
bb.com.br
-vv pra imprimir mais detalhes de execução. ;)
Qualquer feedback para melhorar o script é bem vindo. Pull requests no Github são mais bem vindos ainda! :)
Grande abraço!