Información de Malware. ¿A través de DNS?

Estándar

Hola a tod@s!

Hoy día, y debido a que cada año crece más todo lo relativo a vías de infección, han proliferado muchos servicios de consulta de Malware, y todo lo relacionado con la muestra.

Servicios como VirusTotal y ThreatExpert son buenas referencias a tener en cuenta, en tanto y cuanto a un auditor, le caiga el “marrón” de analizar un “bicho”.

A la hora de analizarlo, y viendo como está el mercado, en cuanto a horas reales y cuantificables que se dedican a un proyecto, a un auditor le puede solucionar la papeleta el consultar este tipo de servicios, a día de hoy imprescindibles y para mi gusto perfectos, para que le den una visión global sobre qué dicen las principales casas de antivirus sobre el mismo.

Buscando proyectos relacionados con el análisis dinámiso de muestras de manera online, y habiéndome leído la gran entrada de HackPlayers sobre análisis de Malware, me encontré con un proyecto en OWASP bastante interesante. Consulta de Malware en base a un MD5 o SHA1. Si miramos esta última frase con ojo crítico, pensaremos, nada nuevo no?

La solución que se aloja en OWASP, la cual puede consultarse de manera ONLINE, permite que puedas realizar consultas en base a un MD5 o SHA1 de algún fichero “sospechoso”, pero en vez de consultar a una Web, las consultas las realizas a través de peticiones DNS, adjuntando al final del MD5 o SHA1 un sufijo DNS.

La idea en sí es simple. Tener un repositorio de HASHES relacionados con ficheros maliciosos. Pero la ejecución cambia totalmente al ser consultas a través de DNS.

Desde un punto de vista “corporativo”, las consultas DNS se permitirán, casi por obligación. Como segundo punto es la información que obtenemos al realizar las consultas. Esta información va desde el supuesto tamaño de fichero que coincide con el HASH, así como información relativa al estatus de este. Si es Malware, desconocido, bueno, etc… Una de las respuestas más curiosas, es la relativa a la certeza. En la respuesta, dan un grado, en tanto por ciento, de lo cierto de que ese HASH sea Malware o no, en función del estatus, y de lo analizado.

Según el servicio, esta base de datos es mantenida con regularidad, y analizan bastantes muestras de ficheros maliciosos.

Para realizar una consulta, lo único que necesitamos es un cliente nslookup o dig.

Si lo que necesitamos es consultar si el HASH se encuentra incluido en la base de datos, se puede realizar una consulta de tipo A. La respuesta que obtendremos, en el caso de que el HASH se encuentre en la BBDD, es de 127.0.0.11.

En el caso de que se necesite extraer la información relativa al HASH, habrá que realizar la consulta, pero esta vez de tipo TXT, y añadiendo un sufijo específico, hash.sapao.net.

Imagen 1.- Consulta de HASH malicioso a través de DNS

Aunque desconocía por completo que se pudiesen realizar consultas de HASH a través de DNS, en la página del proyecto, existen enlaces a sitios y comunidades que ofrecen lo mismo. En el caso de Team Cymru’s, ofrecen el mismo servicio de consultas de HASH a través de DNS, operando de la misma manera que la anterior.

SANS, por su parte, tiene otro servicio muy similar, que, aunque no tan potente como los anteriores, tienen algo que lo hace bueno, y es que mantienen una base de datos de ficheros catalogados en WhiteList, por lo que, si se realizan consultas, se puede cotejar si un fichero es malicioso, o por el contrario se encuentra en una lista blanca.

Realizando una prueba con el MD5 un fichero, SANS me informa de que se encuentra listado en varias ocasiones. ¿Colisión? Por la pinta del tamaño, y viendo que son ficheros en texto plano, no sé, no sé…..

Imagen 2.- Consulta realizada en NIST Hash Database

Si realizamos esta consulta, pero a través de NSLOOKUP, la respuesta que obtendríamos sería la siguiente:

Imagen 3.- Consulta de HASH a través de NSLOOKUP en SANS

Curiosa forma de consultar por ficheros maliciosos no?

No sólo de la password vive el HASH!

Saludos a tod@S!

 

 

Blogs.update(“Unlearning Security”)

Estándar

Hola a tod@s!

Llevaba este post (y unos cuantos más) medio escrito en los borradores que tengo. Y hoy he dicho… Cojones! De hoy no pasa!

Comenzar algo casi siempre es bonito. Muchas veces lo hacemos con miedo, otras con ilusión, otras porque no quedan más cojones, y otras… Pues porque sí.

A todo el que me conoce un poco, y me pregunta por el blog, siempre le comento lo mismo. Que utilicé el blog para no tener que acordarme de ciertas cosas que me parecían y parecen interesantes. La cosa llegó a más y hoy, años después, todavía estamos aquí. Me gusta almacenar cosas! Soy muy 1.0!!

Hoy día lanzo la vista atrás, y la de gente que he tenido el honor de conocer gracias a este blog ha sido inmensa. Si no hubiese tenido ese pensamiento 1.0, donde andaría!

Es por ello, que cuando alguien “se atreve” a exponer al mundo sus ideas y conocimientos, hay que aplaudirlo. Y más aún cuando lo que publicas es bueno. Y ese es el caso de mi compañero y amigo Daniel Romero.

Lo conocí en la guarida de I64, y desde aquel día, no he parado de aprender de él. Un tío que se atreve con todo en materia de seguridad, pero en especial por las auditorías Web. Gracias a él, he llevado con éxito alguna auditoría que otra, y siempre que le he pedido ayuda, tanto en lo profesional como en lo personal, ha estado ahí para echarme un cable.

Aunque a simple vista no os suene de mucho, él fue el desarrollador de la primera versión de Marmita, por ejemplo. Testigo que han cogido los Monstruos (y no de feos) Francisco Oca y Manu Fernández, creadores de la FOCA, entre otras herramientas públicas y privadas.

Pues bien, Dani abrió un blog no hace mucho, y como no podía ser de otra forma, no ha parado de crecer, gracias a su contenido, y su continente. Artículos perfectamente redactados (no como los míos jaja) y bajo un contexto de formación, dan salida a verdaderas “joyas en materia de seguridad”, como los artículos dedicados a la explotación de vulnerabilidades, o los artículos dedicados a la ingeniería inversa en arquitecturas basadas en X86. Estos artículos, han dado pie a que se publiquen en packetstormsecurity. Como diríamos en mi tierra…. FITE!!!

Así que nada, actualizar los RSS, y aplaudamos a otro “grande”.

Gracias por compartir tus conocimientos Dani!

Saludos a tod@s!!

A la caza del mutante, parte IV

Estándar

Parte I

Parte II

Parte III

Parte V

Hola a tod@s!

En esta penúltima parte, vamos a realizar la búsqueda de MUTANT (MUTEX), a través de la herramienta volatility, y realizando para ello un análisis forense offline.

Para poder realizar esta búsqueda con éxito, el gran Andreas Schuster implementa un módulo para volatility, a través del cual,  y resumido en pocas palabras, realiza una búsqueda de la cadena Mut? En memoria paginada y no paginada.

Imagen 1.- Búsqueda de cadena Mut?

 El resultado es increíble, extrayendo no sólo la dirección de memoria y el nombre del Mutant, si no también información interesantísima, como por ejemplo el identificador de proceso (Client ID) que lo tiene referenciado.

Imagen 2.- Aplicación del módulo MutantScan en Volatility

En la próxima y última entrega, analizaremos la memoria offline, e intentaremos buscar evidencias, partiendo de los mismos principios que el estudio de Andreas Schuster. Lo único que vamos a cambiar esta vez, será la herramienta. En vez de utilizar Volatility Framework, se utilizará la herramienta WinDBG (Debugging Tools for Windows), y realizando las consultas de forma manual.

Saludetes!!

Referencias

Searching for Mutants

_KMUTANT Structure

Poolfind (MDSN)