Passive DNS

Llevo un par de semanas trabajando, montando una infraestructura para montar un Passive DNS y poder registrar todas las consultas DNS que realizan las muestras de malware que voy analizando, tanto manual como automáticamente.

Índice

¿Cuál sería la estructura del Passive DNS?

 

Passive DNS

 

Pues a grandes rasgos tendremos lo siguiente, un conjunto de máquinas que se encargarán de analizar malware, las máquinas pasarán por un gateway que registrará las peticiones y respuestas DNS y las almacenará en una base de datos.

El mismo escenario se puede diseñar usando un port-mirroring, por ejemplo. "Cada maestrillo tiene su librillo". En mi caso he instalado la estructura de mas arriba.

¿Para que sirve un passive DNS?

Pues en la disciplina de análisis de malware, el passive DNS registrará todas las peticiones DNS que realizan las muestras. Muchas muestras de malware, para actuar realizan una petición DNS hacia su C&C y si este responde con la IP que toca, el malware realiza las acciones pertinentes.

Se da el caso de que los criminales cambian la IP que resuelve el dominio por lo tanto es útil guardar un histórico para poder seguir una campaña entre otras cosas, útil no?

Hay muchos proyectos de passive DNS en GitHub o Code Google, escoged el que mas os guste,

¿Qué veremos en el LOG?


root@gateway:/home/marc/tools# tail -30 /var/log/passivedns.log
1375140572.834404||192.168.10.11||8.8.8.8||IN||d3d6wi7c7pa6m0.cloudfront.net.||A||54.230.63.104||60||6
1375176214.971610||192.168.10.11||8.8.8.8||IN||d3d6wi7c7pa6m0.cloudfront.net.||A||54.240.186.180||60||9
1375177560.825022||192.168.10.11||208.67.222.222||IN||mail.emailcampaigns.net.||A||216.27.11.70||60||3
1375171254.646965||192.168.10.11||8.8.8.8||IN||e6845.ce.akamaiedge.net.||A||23.38.85.163||20||20
1375177560.922126||192.168.10.11||208.67.220.220||IN||mx.rediffmail.rediff.akadns.net.||A||119.252.147.10||55||12
1375173867.405042||192.168.10.11||8.8.8.8||IN||mx.rediffmail.rediff.akadns.net.||A||202.137.234.30||53||1
1375177540.623902||192.168.10.11||8.8.4.4||IN||mail01.dridco.com.||A||190.221.0.21||300||1
1375177549.130308||192.168.10.11||8.8.4.4||IN||mail.dilos.com.||A||94.23.45.144||1026||1
1375177561.185202||192.168.10.11||8.8.8.8||IN||mta7.am0.yahoodns.net.||A||63.250.192.46||244||19
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||66.196.118.33||244||42
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||66.196.118.35||244||42
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||98.136.216.26||218||23
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||98.138.112.32||218||23
1375177561.185202||192.168.10.11||8.8.8.8||IN||mta7.am0.yahoodns.net.||A||63.250.192.45||247||27
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||98.138.112.37||247||49
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||66.196.118.36||247||49
1375177561.185202||192.168.10.11||8.8.8.8||IN||mta7.am0.yahoodns.net.||A||98.138.112.35||247||26
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||98.136.217.202||247||30
1375177561.538206||192.168.10.11||208.67.220.220||IN||mta7.am0.yahoodns.net.||A||98.136.217.203||247||30
1375173869.521861||192.168.10.11||4.2.2.1||IN||mta7.am0.yahoodns.net.||A||98.138.112.34||247||6
1375177561.185202||192.168.10.11||8.8.8.8||IN||mta7.am0.yahoodns.net.||A||98.136.216.25||247||27
1375173867.514481||192.168.10.11||198.153.194.1||IN||126mx02.mxmail.netease.com.||A||220.181.14.134||559||2
1375173867.514481||192.168.10.11||198.153.194.1||IN||126mx02.mxmail.netease.com.||A||220.181.14.133||559||2
1375177530.954715||192.168.10.11||208.67.222.222||IN||cphegtd2-itn02.egmont.com.||A||193.3.130.160||3570||1
1375177549.221149||192.168.10.11||4.2.2.1||IN||vmx.northstate.net.redcondor.net.||A||216.237.227.31||1645||1
1375177549.221149||192.168.10.11||4.2.2.1||IN||vmx.northstate.net.redcondor.net.||A||216.237.227.34||1645||1
1375177549.221149||192.168.10.11||4.2.2.1||IN||vmx.northstate.net.redcondor.net.||A||216.237.227.35||1645||1
1375177549.221149||192.168.10.11||4.2.2.1||IN||vmx.northstate.net.redcondor.net.||A||216.237.227.36||1645||1
1375177549.221149||192.168.10.11||4.2.2.1||IN||vmx.northstate.net.redcondor.net.||A||216.237.227.33||1645||1
1375177549.221149||192.168.10.11||4.2.2.1||IN||vmx.northstate.net.redcondor.net.||A||216.237.227.37||1645||1

Como veis se guarda la IP a la que resuelve cada dominio, significa que podremos consultar un histórico de que dominio resolvió a que IP.

Una de las cosas que podemos hacer es parsear listas públicas que sabemos que contienen listas de dominios maliciosos, podemos coger un lista que hay en:

http://www.nothink.org/sandbox_and_utilities.php

Podemos hacer una búsqueda de dominios maliciosos,

 Ejemplo


[*] |PassiveDNS Results| - /var/log/passivedns.log: 3050 total entries

[+] Found - host 'download-guru.com' matches
[+] Found - host 'download-instantly.com' matches
[+] Found - host 'goutil.com' matches
[+] Found - host 'okozo.com' matches
[+] Found - host 'powerpackdl.com' matches
[+] Found - host 'reportbox3.info' matches
[+] Found - host 'twonext.com' matches
--
[=] 7 of entries matched from malhosts.txt

El Passive DNS es útil para la recolección de información que luego podremos transformar en inteligencia, una vez que tratemos los datos para nuestras investigaciones.

También te puede interesar el siguiente post - http://dragonjar.org/reflection-attacks-dns-snmp-y-ahora-ntp.xhtml

Subir