¿Cómo funciona un laboratorio de análisis de Malware?

Dos investigadores del laboratorio Stratosphere explicaron en una charla durante Ekoparty 2018 cómo funciona un laboratorio de análisis de malware, los principales retos para montarlo, cómo establecer una metodología de investigación y algunos de los requisitos técnicos.

Como parte del laboratorio de investigación de ESET Latinoamérica, una charla imperdible de la última edición de EkoParty 2018 fue la María José Erquiaga y sebastian garciaen la que no solo prometían contarnos como funciona su laboratorio de analisis de malwaresino también regalamos unos pendrives con herramientas para su análisis y algunas muestras para analizar.

Maria José es investigadora de la Universidad Nacional de Cuyo de Mendoza, Argentina; y además, ambos forman parte del Laboratorio Stratosphere de la Universidad Técnica Checa en Praga, donde en los últimos 4 años han analizado más de 600 capturas de malware de calidad, para luego compartir los resultados de forma gratuita con la comunidad. Además, en el caso de

Comprender el funcionamiento del malware es una parte fundamental del proceso de creación de medidas de protección contra las amenazas. Es por eso que la mayoría de las empresas de soluciones antivirus y de seguridad cuentan con sus propios laboratorios de análisis, donde ejecutan, analizan y estudian muestras de malware que luego se utilizan para mejorar el rendimiento de los productos de detección. Habitualmente crear entornos seguros para ejecutor archivos maliciosos suele ser una tarea costosa y compleja, ya que no solo es necesario tener los equipos adecuados sino también autorizaciones y metodologías que respaldan la investigación. Además, tal y como explica María José, capturar malware es muy difícil, especialmente cuando se busca tener un comportamiento “normal”. Es decir, lograr que el malware se comporte tal como lo haría en el equipo de la víctima infectada. En la mayoría de los casos, las muestras fallan o cambian su forma de ejecución si detectan que están en un entorno controlado (como un sandbox) o si están siendo analizados por algún dispositivo de seguridad como un proxy o IDS.

Entonces, ¿qué tiene de diferente el laboratorio Stratosphere?

En primer lugar, según dijo Sebastián, en este laboratorio el malware puede hacer 'lo que quiera'. El hecho de tener ningún tipo de restricciones permite observar mejor el comportamiento del código malicioso.

Según la muestra analizada en laboratorio se realizan 3 tipos de ejecuciones:

La cartilla es simplemente ejecutar el malware y no tocar nada más, dejar que termine todas las rutinas y observar el comportamiento.

La segunda son capta “normales”, es decir, de la función normal de un equipo, tal como lo utilizaría el usuario. Lo cual incluye tener a personas normales haciendo uso de los equipos durante varios días tal como lo harían en casa (viendo las redes sociales, consultando mail, escuchando música o incluso trabajando).

Por último, las capturas mixtas, donde primero recrean y capturan las condiciones normales lo más exactas posibles y luego se infecta el equipo y se captura la información de la infección. De esta forma, pueden capturar la información del momento anterior a la infección y luego compararla con la captura infectada para encontrar las diferencias.

La otra gran diferencia es el tiempo de ejecución de cada muestra, que suele oscilar entre 1 y 8 semanas, pero que, en algunas muestras concretas, ha superado el año. El hecho de que cada muestra se ejecute durante largos periodos de tiempo no solo es algo difícil de conseguir, sino que es fundamental para comprender el comportamiento del código malicioso a lo largo del tiempo y analizar también las mutaciones que se pueden producir.

En los últimos 4 años, el laboratorio ha logrado elaborar más de 370 capturas de malware real a largo plazo, y en 110 de estas capturas lograron interceptar tráfico encriptado (HTTPS) del mismo. También, cuentan con 38 análisis de muestras capturadas en entornos normales de ejecución y 10 casos de malware capturados en víctimas reales. Además, cuentan con más de 300 casos de códigos maliciosos para dispositivos IoT, y 90 capturas de sus propios dispositivos (cámaras IP, Raspberry, etc.) en las que incluso detectaron nuevas muestras que no se habían visto anteriormente. Todos estos informes están publicados en el sitio web del proyecto, disponibles para toda la comunidad.

Si bien ejecutar malware es legalal menos en la mayoría de los países, es muy importante contar con las autorizaciones correspondientes, que incluyen la firma de contratos con proveedores de Internet para evitar bloqueos. Sin embargo, para que todo esto vea ético, el objetivo siempre debe ser la investigación para mejorar los sistemas de detección. Es por esto que es tan importante definir la metodología que se utilizará en el proceso de investigación. Como aclaró María José, "No se trata de albacea por albacea, sino de hacerlo de forma profesional".

Los principales puntos que se deben tener en cuenta al momento de definir la metodología que se utilizará, según los investigadores, son:

  • Que la investigación se pueda reproducir. Para lo cual es muy importante documentar cada paso de forma clara e identificar las muestras mediate los hashes.
  • Crear un registro donde se registre detalladamente cada uno de los sucesos o tareas que se van a acabar, antes, durante y después de la infección.
  • Realice capturas, en tiempo real, de todo el tráfico entrante y saliente del equipo.
  • Guardar el estado del equipo (instantánea) antes de la infección. No solo para poder compararlo después de la infección, sino también para tener un punto de retorno para volver a analizar la muestra si es necesario.

Requisitos para instalar un laboratorio de análisis de Malware

Y, ¿cuál es la receta para armar un laboratorio de ejecución y análisis de Malware? Según María José y Sebastián, los ingredientes básicos son:

  • 1 servidor principal, preferiblemente con Linux
  • Alrededor de 30 máquinas virtuales (Linux, Windows, MacOs, etc) listas para infectar.
  • 1 enrutador, conmutador o firewall, para control y protección del ancho de banda (no queremos que todos estos bichos logren escape)
  • Dispositivos varios (teléfonos móviles, cámaras IP, frambuesas, televisores o cualquier otro que se te ocurra)
  • 1 sistema de vigilancia
  • Muchas muestras de malware

Con todo esto listo, solo queda mezclar, ejecutor y depende.

Antes de finalizar la charla, y luego de darnos varios consejos de cómo configurar correctamente el laboratorio, Sebastián y María José compartieron una demostración en vivo donde nos mostraron el gusano “Hajime” que afecta a dispositivos IoT y utiliza la red BitTorrent para sus comunicaciones.

Además, pudimos ver varios de sus informes, que incluyen el análisis del ya conocido WannaCry; el troyano bancario Trickbot; la botnet Sality (famosa por permanecer activa durante más de 4 años) y el bot HtBot, que convierte el ordenador infectado en un proxy de navegación, para luego comercializar su uso en servicios proxy y VPNs.

Entonces, ¿así de fácil es ejecutar malware? Tal vez no tanto. María José finalizó la charla explicando algunos de los problemas que tuvieron durante todos estos años, entre ellos: capturas perdidas, problemas de espacio en disco, malware atacando a otro malware o infectando otras VM, Google o el proveedor de internet bloqueando sus direcciones IP y hasta incluso un llamado de la policia.

Tal vez no sea fácil ejecutar malware, pero si hay algo que me dejó hablando, definitivamente es divertido. Eso sí, tomando las precauciones adecuadas. Actualmente hay muy pocas personas dedicadas a la investigación de malware, por lo que si te interesa este tema, te invito a seguir leyendo nuestro portal donde encontrarás diferentes artículos de análisis y herramientas que puedes utilizar.

Por mi parte, solo me queda decir gracias por una excelente charla y por el regalito para seguir investigando.

Pen drive con herramientas y muestras para analizar.

Deja una respuesta

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

Subir
error: Content is protected !!