¿Quieres realizar tu TFG o TFM sobre un reto tecnológico tutorizado nuestros expertos? II Edición del Programa TUTORÍA

Área de Innovación y Laboratorio de ElevenPaths    24 noviembre, 2020
¿Quieres realizar tu TFG o TFM sobre un reto tecnológico tutorizado nuestros expertos? II Edición del Programa TUTORÍA

Un año más lanzamos nuestro programa TUTORÍA: Tutorización Universitaria para la Transferencia y Observatorio de Retos de Innovación Avanzada. Coordinado por ElevenPaths y destinado al asesoramiento, ayuda y orientación de universidades para la realización de proyectos de desarrollo científico-técnicos que responden a necesidades reales de mercado. Una iniciativa creada para ofrecer retos a estudiantes que están terminando su máster o grado y necesitan realizar sus respectivos trabajos finales.

Este programa, dirigido a la Red de Cátedras de Telefónica, ofrece más del doble de retos que la edición anterior, hemos aumentado la diversidad y cantidad de categorías propuestas y además estrenamos nueva web. Por si fuera poco, esta edición también ofrecemos varios retos procedentes de la unidad global de Consumo Digital (CDCO-Chief Digital Consumer Officer), en concreto vinculados al Hogar Digital, por lo que extendemos los horizontes de nuestro programa ampliando la oferta a muchas otras carreras y estudios que pueden participar en estos nuevos tipos de propuestas.

En la edición anterior se realizaron 12 retos que han demostrado el potencial que posee esta iniciativa por el encaje, resultados obtenidos y know-how compartido entre tutores y alumnos que ha sido aprovechado por ambas partes. Los resultados hablan mejor del programa que describir su filosofía por lo que a lo largo de una serie de entradas de blog pondremos en valor los diferentes logros obtenidos en cada uno. Comenzaremos con retos vinculados a la generación de Indicadores de Compromiso (IoCs) cuya aplicabilidad en ElevenPaths mejora las áreas de Threat Intelligence y Vulnerability Risk Management. En este caso cada alumno cuenta su experiencia en cada reto a continuación.

Web scraping (of Telegram) for IOCs generation

Este reto ha sido realizado por Jordi Varela Lomas en su Trabajo Fin de Grado en Ingeniería de Redes de Telecomunicación de la Universidad Pompeu Fabra (UPF), dirigido por el tutor académico Miquel Oliver de dicha universidad junto a Pablo San Emeterio y Marcos Arjona como tutores industriales en ElevenPaths.

El preámbulo de este reto surge por la necesidad de detectar malware y las posibilidades que ofrece Telegram para atacantes. El enfoque para el estudio de amenazas consiste en extraer indicadores de compromiso (IOCs) que se extienden a través de dicha red social. Estos son una serie de parámetros muy sencillos y fáciles de trabajar y modificar, con la finalidad principal de permitir un intercambio rápido de información sobre las amenazas en la red en una comunidad de analistas de ciberseguridad de SOCs, grupos de Red/Blue Teams o equipos de hackers éticos.

Este proyecto centra su objetivo en el desarrollo de un scrapper que extrae información sobre grupos públicos de la red social Telegram. En estos grupos se comparten diversos tipos de ficheros que podrían contener, según la índole de cada uno, de potenciales amenazas. Una vez extraídos, analizados y categorizados mediante un discriminador de actividad creado específicamente para este reto, se procede a extraer archivos y usuarios que residen en estos grupos y canales. Es necesario entender que tanto el fichero, como la información de quién la comparte, así como el canal donde se produce es información relevante para procesos de análisis posteriores. Y todo ese cúmulo de información posibilitará determinados procesos forense o de ciberinteligencia en el caso que dicho IoC forme parte de alguna investigación en curso.

Con esta información recopilada, se continúa analizando uno a uno estos archivos extraídos mediante herramientas de análisis de vulnerabilidades, como Diario, el detector de malware de ElevenPaths o Hybrid analysis entre otras. Con estos nuevos datos y a partir de los análisis se obtienen conclusiones y se crean los respectivos IOCs.

Esta imagen muestra un gráfico relacionado con la cantidad de archivos (diferenciados por extensión) de una de las colecciones seleccionadas, que contiene los grupos y canales que el discriminador detectó que son activos. Como podemos observar, la gran mayoría de archivos que se mueven por Telegram son ejecutables de Android, facilitando tareas de inyección de malware a través de ellos ya que este tipo de archivos son instalados por los usuarios, con una errónea confianza y que puede provocar un gran impacto en los dispositivos. Es curioso el uso de ficheros de imágenes .dng en determinados grupos, que finalmente resultaron ser renombres de otros ejecutables maliciosos.

Los resultados finales indicaban que, en cada muestra de ficheros seleccionados, principalmente .pdf. dng y .apk, existía cierto ratio de elementos maliciosos, lo que podía servir de base para generar o enriquecer IoCs vinculados a dichos ficheros. Significando esto una PoC del uso que esta herramienta podría tener como sistema automatizado de extracción, categorización y generación de IoCs en una red social masiva como es Telegram. La figura siguiente representa los resultados de una de las muestras de 15 aplicaciones seleccionadas aleatoriamente como representante de todo el conjunto.

Xecode. Herramienta de rastreo web

Este reto ha sido realizado por Victor Pérez Sainz estudiante del Máster Universitario en ciberseguridad de la Universidad de Alicante, dirigida por Francisco José Mora Gimeno como tutor académico y por Marcos Arjona como tutor industrial en ElevenPaths.

El siguiente trabajo investiga la detección, mediante una herramienta de scraping, de código malicioso subido en repositorios públicos. Una vez recuperado, y mediante la identificación basada en unos IoCs aportados por ElevenPaths, detectamos el malware y clasificamos según su naturaleza. De esta manera, conseguiremos controlar e identificar las líneas de código maliciosas de las que no lo son y poner en “cuarentena” dicho código.

Para la realización de este ejercicio, se ha creado una aplicación modular en Python mediante el uso del framework Scrappy, que será el encargado de ejecutar los módulos y almacenará los resultados en la ubicación correspondiente. La idea de que sea modular nos garantiza que, mediante la programación de los diferentes módulos, poder ir aumentando la capacidad rastreadora puesto que no todas las webs son iguales e incluso se pueden crear módulos para que rastree un código concreto o un lenguaje de programación específico. Para ello contamos con unos analizadores de código que nos van a indicar que lenguaje se ha empleado puesto que no todas las webs obligan a indicarlo.

En el presente caso de estudio se ha creado una araña de rastreo para que obtenga el código de todas las subidas que se muestran en la URL principal de Pastebin. Una vez obtenido, se serializa el código HTML (previo estudio de la estructura de la web en cuestión) para su posterior análisis. Tras obtener el código, este pasa a través de un analizador para determinar si nos encontramos ante el lenguaje de programación VBA o no. Esto se realiza mediante una serie de comprobaciones utilizando diversas expresiones regulares. Posteriormente, el código es analizado nuevamente para comprobar si existen o no ciertos IoCs que nos avisarán si el código puede contener código sospechoso. Para ello, se han establecido los siguientes patrones de IoCs:

  • Cadenas de texto en formato hexadecimal
  • Cadenas de texto en formato base64
  • Comandos de VBA de auto ejecución
  • Patrones específicos: URL, ipv4, ipv6, email, dns, extensiones de ficheros, rutas de Windows/Linux
  • Código oculto con el algoritmo encontrado en Dridex
  • Palabras clave sospechosas que se corresponden con comportamiento específico de un malware
  • Comandos VBA para la escritura en memoria
  • Comandos VBA para la ejecución de instrucciones

Con esto ya podemos tener una clasificación que nos determine en qué medida puede ser peligroso dicho código. Toda la información se almacena en un fichero JSON para poder exportarla. Pero claro, analizar un fichero JSON puede ser un poco tedioso y es por ello que, como añadido al rastreador, se ha creado una aplicación web que nos muestra la información de forma mucho más visual.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *