REVISTA .SEGURIDAD | 1 251 478, 1 251 477 | REVISTA BIMESTRAL

Ghost: Honeypot para malware que se propaga a través de dispositivos USB - Parte I

En la actualidad existen varios métodos de propagación e infección por software malicioso en los diversos sistemas operativos, por lo que es de vital importancia su detección y análisis para desarrollar contramedidas. Uno de los métodos más utilizados en los sistemas Windows, por su rapidez y por llegar incluso a equipos de cómputo críticos que no están conectados a alguna red, es mediante dispositivos de almacenamiento USB.

La propagación inicia cuando el usuario introduce un dispositivo en la computadora infectada, el software malicioso que se está ejecutando en esa máquina detecta que se ha conectado una unidad extraíble y realiza una copia de sí mismo, cambia los atributos de todos los archivos a ocultos y del sistema, mostrando al usuario únicamente los accesos directos a su información. La infección se lleva a cabo cuando ese dispositivo de almacenamiento es conectado en otra computadora y el usuario intenta acceder a sus archivos a través de los accesos directos diseñados para abrir tanto el archivo o carpeta como el software malicioso, en ese momento el equipo queda comprometido y listo para seguir infectando los dispositivos de almacenamiento que se conecten.

A continuación se describen las tres formas de propagación más comunes registradas por UNAM-CERT:

  • Modificación del archivo Autorun.inf: si no existe el archivo de configuración en el dispositivo USB, el software malicioso que reside en la computadora infectada puede generar uno nuevo con la ruta donde se replicó; dicho archivo contiene la instrucción para ejecutar el malware en cuanto el usuario conecte el dispositivo extraíble a otro equipo de cómputo que tenga habilitada la función de "Reproducción automática".
  • Creación de varios accesos directos: se ocultan todos los archivos y carpetas en su ubicación predeterminada para después generar accesos directos que apuntan hacia cada archivo o carpeta (pueden generarse únicamente en la raíz del dispositivo o de manera recursiva en las subcarpetas) y también hacia el software malicioso que se copió a sí mismo, una vez que el usuario da doble clic sobre cualquier acceso directo malicioso. De esta forma, además de abrir el archivo o carpeta, se ejecuta el malware y se infecta la computadora.
  • Creación de un sólo acceso directo: el software malicioso crea una carpeta oculta (a la cual mueve todo el contenido) cuyo nombre es el valor hexadecimal "0A", que corresponde al salto de línea ("\n"), por lo que gráficamente pareciera que el directorio no tiene nombre. El acceso directo contiene la sentencia para abrir la carpeta oculta y ejecutar la supuesta réplica del malware, es decir, es una DLL que cambia el nombre de la función interna y parte de su estructura cada vez que se propaga.

El objetivo de este artículo es mostrar, precisamente, la captura de este tipo de malware con el honeypot Ghost en un entorno virtual controlado, ya que la mayoría de los honeypots existentes se enfocan en la detección y captura de amenazas que se propagan a través de la red. A lo largo de dos publicaciones se describirá todo lo necesario para instalar y configurar Ghost de manera que nos permita implementarlo en nuestro laboratorio de análisis de malware, de esta forma se podrán detectar las amenazas que se propagan a través de unidades extraíbles y recolectar los archivos de configuración y réplicas que se generen para su posterior análisis; se obtendrá un mejor entendimiento del malware y datos que permitan crear inteligencia sobre nuevos vectores de infección y propagación.

Esta primera entrega se enfoca en conocer e implementar Ghost en los sistemas operativos Windows para los que fue diseñado. En la siguiente edición se abordará la configuración de la herramienta, la captura y el análisis del malware que se propaga a través de dispositivos USB.

Requerimientos de software

Máquinas virtuales Honeypots
Windows 7 y XP Ghost

 

Ghost

Es un honeypot que emula uno o varios dispositivos USB y fue diseñado para detectar, en análisis dinámico, software malicioso que se propaga a través de estos medios de almacenamiento, siempre y cuando el malware no realice una detección minuciosa en las características de software y hardware del laboratorio de análisis (y así identifique el dispositivo falso). Fue desarrollado en un principio por Sebastian Poeplau para una tesis de licenciatura en la Universidad Bonn en Alemania, en la actualidad se continúa el desarrollo dentro del Proyecto Honeynet.

Implementación

Ghost es compatible con los sistemas operativos Windows XP y Windows 7 de 32 bits, lo cual es conveniente debido a que muchas sandbox utilizan estos sistemas operativos como clientes para automatizar los análisis de malware. A continuación se mostrará una forma de instalar el honeypot en Windows 7 haciendo las respectivas observaciones en los pasos adicionales que se requieren para Windows XP:

1) Instalar .NET Framework 4

Se requiere esta versión de framework o superior en caso de utilizar Ghost desde la interfaz gráfica.

  • En Windows XP, antes de instalar el framework se requiere:

a) Windows Installer 3.1

b) Windows Imaging Component

c) Colocar las siguientes dos DLL en la carpeta principal de ghost-v0.2-winxp.zip:

La configuración anterior se requiere porque Ghost necesita Windows Drive Framework (WDF), en Windows 7 no es necesario este paso ya que incluye la versión 1.9.

2) Instalar Ghost

Descargar y descomprimir el archivo "ghost-v0.3-win7-i386.zip" [Archivo .zip], posteriormente ejecutar "Setup.exe".

El sistema operativo preguntará si realmente se quieren instalar los controladores no firmados de Ghost debido a que Microsoft no puede comprobar el software del controlador, hacemos caso omiso y continuamos con la instalación.

  • Para Windows XP se usa el archivo "ghost-v0.2-winxp.zip" [Archivo .zip]

3) Colocar los archivos imagen en la unidad C:\

Los dispositivos USB que emulará Ghost requieren archivos de imágenes limpias y con formato para que se puedan almacenar tanto archivos legítimos (si es que se requieren) como aquellos generados por el malware. Las imágenes deben colocarse en la ruta predeterminada "C:\", ya sea que se generen de forma manual o se utilice el archivo "ghost-clean-image.zip" [Archivo .zip] perteneciente al desarrollo de Ghost.

Una vez extraído el archivo "gdgui.img", se debe copiar tantas veces como dispositivos se requieran y deben renombrarse de la siguiente manera, dependiendo cómo se van a montar en el equipo:

  • Desde la interfaz de línea de comandos: "gd0.img" hasta "gd8.img"
  • Desde la interfaz gráfica de usuario: "gdgui.img"

4) Configurar dispositivos desde la interfaz de línea de comandos

Abrir el "cmd.exe" con permisos de administrador, montar cada uno de los dispositivos "gd[0-8].img” para probar su correcto funcionamiento y finalmente desmontarlos. A continuación se muestran los comandos para el dispositivo "dg0.img":

  • ghosttool mount 0
  • ghosttool unmount 0

Nota: En Windows XP se abrirá automáticamente el "Asistente para hardware nuevo encontrado", se debe seleccionar la opción "Instalar automáticamente el software (recomendado)". Este procedimiento se realizará para todos los dispositivos que hayamos creado.

5) Configurar el dispositivo desde la interfaz gráfica de usuario

Abrir "GhostGUI.exe" con permisos de administrador, montar el dispositivo "gd9.img" para probar su correcto funcionamiento y finalmente desmontarlo. A continuación se muestra el modo manual:

Nota: En Windows XP se abrirá automáticamente el "Asistente para hardware nuevo encontrado" y debemos seleccionar la opción "Instalar automáticamente el software (recomendado)".

Finalmente, una vez que los dispositivos son emulados correctamente en el sistema operativo, se observarán como unidades de almacenamiento extraíble con capacidad de 100 MB aproximadamente.

Hasta este momento se mostró una forma de instalar Ghost en los sistemas operativos Windows XP y Windows 7, que son para los que se tiene soporte al día de hoy. Además, se habló de la importancia en la detección oportuna por firmas antivirus de nuevas amenazas que no se propagan por red o que además utilizan unidades de almacenamiento extraíble.

En la siguiente entrega se hablará del proceso de detección y del análisis de las muestras capturadas.

Si quieres saber más consulta:

UNAM

[ CONTACTO ]

Se prohíbe la reproducción total o parcial
de los artículos sin la autorización por escrito de los autores

 

Hecho en México, Universidad Nacional Autónoma de México (UNAM) © Todos los derechos reservados 2018.