Los códigos maliciosos son programas, compuestos por secciones, módulos, funciones y que en su mayoría se compilan antes de que los cibercriminales comiencen sus campañas de propagación. Conocer el origen de un código malicioso puede ser una tarea complicada, pero existen otros datos que podemos conocer con cierta facilidad. Hoy vamos a ver cómo un análisis de los horarios de compilación de las amenazas nos puede dar una idea de su origen y las acciones realizadas por sus creadores.
La idea que formuló el post que están leyendo, surge la información provista por un white paper publicado durante la última semana con el análisis de Snake por BAE Systems. Esta amenaza, es un rootkit avanzado capaz de mantenerse invisible para extraer información confidencial y que ha estado activo desde hace ya algún tiempo. En el marco de esta investigación se presentó un análisis de las horas de generación de las diferentes amenazas que se utilizaron, demostrando que se habrían creado durante horas laborales. Este pequeño dato llevó a la conclusión de que habrían sido creadas por una agencia de inteligencia, para leer el informe completo pueden acceder aquí.
La amenaza que se presenta en el informe es detectada por ESET como Win32/Turla.N, y en los últimos días se la asoció a casos de ciberespionage. Si bien el informe es bastante interesante, para nosotros representa en este caso, solo la mitad de la historia.
Los ataques dirigidos tienen un fin, un objetivo claramente definido, que puede ser una persona, una institución, empresa u organismo gubernamental. Este tipo de acciones buscan generar algún daño, robar información, acceder a un recurso en particular, tirar abajo un servidor o un sistema completo. Por otro lado, existe lo que se conoce como ataques oportunistas, que son los más comunes, y que hoy en día se ven en cantidades industriales. En estos casos, un atacante cuenta con una amenaza, por ejemplo un bot, o un trojan downloader, y comienza diferentes campañas de propagación. Aquellas personas infectaron sus sistemas con este tipo de amenazas, quedan ahora bajo el control del cibercriminal.
Pero, ¿los cibercriminales crean sus amenazas en horarios particulares? ¿Existe un patrón que nos permita relacionar sus acciones? Estas preguntas son las que vamos a responder en los siguientes párrafos.
Para lograr nuestro cometido, nos vamos a ayudar con un script en Python para leer la información del file_header de los ejecutables y obtener el valor de TimeDateStamp. Para evitar tener que hacer todo a mano, podemos usar un módulo de Python más que útil para el análisis y manipulación de archivos ejecutables, pefile. Listamos la información y comenzamos a analizar los patrones más comunes entre una muestra de 140 amenazas diferentes que se propagaron a través de la región.
Según la información que se extrajo, el 47% de las amenazas fueron compiladas durante el 2014, solo el 13% durante el 2013 y un 15% durante el 2012. Como pueden observar en el gráfico con toda la información hay muestras que se recibieron durante el 2014, pero sin embargo fueron compiladas hace ya algún tiempo, o en casos particulares los cibercriminales se encargaron de alterar la información para ocultarlas:
En asociación con los datos en el informe de Snake, los horarios de compilación de las amenazas correspondían al GMT + 4, correspondiente a Rusia y en horarios laborales. En nuestro análisis, los presentamos en GMT 0, y podemos corroborar que no existen una tendencia para el caso de malware más genérico. Además, queda claro que observando los días de la semana en que se compilaron las amenazas, los cibercriminales no tienen días Laborales. También arman sus ataques durante los fines de semana:
Es observable que el día de la semana que menos amenazas se compilan es los sábados, la gran actividad de los domingos y a mitad de semana parecen tener relación con las fechas de actividad de campañas que hemos visto anteriormente, como el caso del gusano de Skype, Rodpicom. Además, si tenemos en cuenta que en Latinoamérica, los usos horarios varían entre GMT-2 y GMT-5, la mayor cantidad de muestras se compilan fuera del horario laboral habitual. ¿Qué conclusiones obtienen ustedes de este análisis?
Como ustedes se podrán imaginar, es difícil establecer un patrón entre diferente amenazas que se usaron a lo largo de toda la región, pero una cosa quedó clara, los cibercriminales no tienen horarios laborales. Con el objetivo de atemorizar a los usuarios, infectar sus sistemas y acceder a su información crean sus amenazas en horarios laborales y no laborales. En un futuro veremos qué pasa cuando hacemos este mismo análisis a campañas realizadas por un mismo atacante o un mismo grupo de cibercriminales.
Pablo Ramos
Coordinador del Laboratorio