Pese a que la intencionalidad intrínseca de DNS (Domain Name Service) no es la de servir a los propósitos de la forensia y el análisis de actividades sospechosas, es posible valerse de este servicio para la vigilancia de redes.
Los investigadores Antoine Schonewille y Dirk-Jan van Helmond, de la Universidad de Amsterdam, proponen un interesante paper sobre cómo emplear DNS para monitorizar badware en una red. Lo han titulado The Domain Name Service as an IDS. How DNS can be used for detecting and monitoring badware in a network.
Curioso término este badware, que se une a la larga lista de términos «ware» que habitualmente manejamos en el argot. Yo suelo hablar de malware, pero otras corrientes hablan de badware. Eso por no citar otros términos como el scumware o el ramsonware. Quizás un día me anime y publique un diccionario sobre «wares» con el fin de discernir qué es cada cosa, ya que cada acepción nueva dificulta más el entendimiento de cada rama de actividad.
Volviendo al documento, que es una pequeña fracción de un trabajo de investigación mayor realizado para SURFnet, los autores nos cuentan con bastante detalle cómo dotar a DNS de esta orientación de monitorización, a lo largo de 24 explicativas páginas, en las que encontramos explicación a cómo detectar bots y anomalías en la red a partir de la información que arrojan los logs DNS, para complementar así otros sistemas de detección que tengamos operativos en red.
Métodos de recolección y análisis de datos
Especialmente interesante la parte en la que se teoriza sobre el minado de datos necesario, y donde se proponen dos métodos, lógicamente serán la monitorización al vuelo y la monitorización pseudodinámica:
- Transportar los querylogs del DNS a una base de datos.
- Efectuar escuchas en vivo (Eavesdropping)
Para el análisis de los datos, los autores proponen varios criterios:
- Consultas para resolver nombres de dominios maliciosos. El método más adecuado, a priori, en el que se casa la información de los logs con listas negras de dominios maliciosos, disparándose un trigger determinado en caso de concordancia.
- Métodos estadísticos, en los que se monitorizan con frecuencia horaria parámetros top, como peticiones por hora, consultas por hora a un determinado dominio, etc.
- Monitorización de máquinas sospechosas, con los datos de flujo procedentes de nfdump.
- Consultas anómalas, sobre todo las relativas a nuevos dominios no registrados previamente.
- Monitorización de consultas qtype poco frecuentes (MX/AXFR)
- Baselining, comparando redes «sucias» cuyo comportamiento anómalo conocemos con redes «limpias».
- Monitorización startup, en la que se analizan los cambios inmediatos tras un reinicio de máquina (los típicos de un bot contactando a su controlador maestro)
La verdad, tras una primera lectura, puedo argumentar que es uno de los mejores documentos de investigación que he leído últimamente. Os lo recomiendo :)
Un pensamiento en “Usando DNS como sistema de detección de intrusos”
Comentarios cerrados.