Familia de programas malignos en Linux: Mirai y Gafgyt
“Familia de programas malignos en Linux: Mirai y Gafgyt”

Autor: Ing. Miguel Angel Méndez Gil

1.- Introducción:

Al igual que los sistemas Unix, Linux implementa un entorno multiusuario donde los usuarios reciben privilegios específicos y existe alguna forma de control de acceso implementado. Para obtener el control de un sistema Linux y ocasionar consecuencias serias en el propio sistema, el código malicioso tendría que obtener acceso de root al sistema.

Hace algunos años se decía que Linux tenía muy pocos programas malignos debido a que su escasa participación de mercado lo convertía en un objetivo menos rentable. Ese argumento ignora el dominio de Unix en una serie de especialidades que no son de escritorio, incluidos los servidores web y las estaciones de trabajo científicas.

El crecimiento de los programas malignos en Linux se debe a su creciente popularidad, particularmente como sistema operativo de escritorio. En el presente artículo analizaremos algunas de las características fundamentales de dos familias de programas malignos en Linux de gran popularidad en la actualidad como son las familias Mirai y Gafgyt.


2.- Desarrollo:

2.1.- El troyano Linux.Gafgyt como predecesor de Linux.Mirai

El troyano Gafgyt apareció por primera vez en 2014 como una cepa de programas malignos que explotaba vulnerabilidades conocidas en enrutadores de pequeñas casas y oficinas para lanzar ataques de denegación de servicio distribuido (DDoS). Desde ese año se han detectado a nivel mundial numerosas variantes de Gafgyt. Según los investigadores de Level 3 Threat Research Labs (ahora Black Lotus Labs), solo en 2016, ya había un millón de enrutadores y dispositivos IoT comprometidos por este programa maligno. Del millón de dispositivos infectados, el 96 por ciento eran dispositivos de IoT (de los cuales el 95 por ciento eran cámaras y DVR), aproximadamente el 4 por ciento eran enrutadores domésticos y menos del 1 por ciento estaban vinculados a servidores Linux.

Este troyano de puerta trasera (Backdoor) llega a un sistema como un archivo dejado por otro programa maligno o como un archivo descargado sin saberlo por los usuarios, cuando visitan sitios maliciosos. El Troyano Gaygyt se conecta a los siguientes sitios web para enviar y recibir información:
{BLOCKED}.{BLOCKED}.147.211
http://{BLOCKED}.{BLOCKED}.133.119/bins/keksec.x86

Este Troyano guarda los archivos que descarga con los siguientes nombres: tmp/bins/keksec.mips y /tmp/keksec.x86. También este código malicioso aprovecha la vulnerabilidad ZeroShell Remote Command Execution.


2.2.- Mirai es un troyano de DDoS que amenaza al IoT y a los servidores Linux

El troyano Mirai es capaz de realizar ataques DDoS (Denegación de servicio distribuida) contra dispositivos IoT (Internet of Things/Internet de las Cosas) y servidores Linux. Este programa maligno es resultado de la evolución de otro similar que ha tenido otros nombres en el pasado, como Gafgyt, Lizkebab, BASHLITE, Bash0day, Bashdoor y Torlus.

La peligrosidad de Mirai no se debe menospreciar si tenemos en cuenta el éxito de su predecesor más cercano, Gafgyt, el cual consiguió infectar a un millón de dispositivos IoT durante solamente un mes. Mirai opera de la misma forma que Gafgyt, teniendo como objetivo dispositivos IoT que ejecutan Busybox, una versión reducida de un conjunto de librerías y herramientas de GNU. El troyano afecta a plataformas como ARM, ARM7, MIPS, PPC, SH4, SPARC y x86, por lo que desde una pequeña computadora hasta un potente PC o servidor Intel corren el riesgo de ser contaminados.

Como método de infección Mirai emplea ataques de fuerza bruta a través del puerto de Telnet utilizando una lista de credenciales de administrador por defecto, teniendo como objetivo los dispositivos a los cuales sus propietarios se les ha olvidado cambiar la contraseña por defecto. Una vez infectado el dispositivo, Mirai se pone en contacto con su servidor de mando y control a la espera de órdenes. Este troyano tiene como objetivos prioritarios los grabadores de vídeos digitales (DVR) y las cámaras IP.

Además debemos tener en cuenta que una buena parte del código de Gafgyt ha sido incluido directamente en Mirai. Se recomienda a los administradores de sistema filtrar el tráfico generado por Mirai para evitar infecciones tanto en los servidores Linux como en los dispositivos IoT que utilicen variantes de dicho sistema.


2.3.- Listado de los 10 países con usuarios más atacados por Linux.Gafgyt y Linux.Mirai (% del total de ataques)
País % de usuarios atacados en todo el mundo
1. Federación Rusa 31.87
2. Taiwán 21.88
3. República de Corea 9.04
4. China 4.40
5. India 3.51
6. Alemania 3.05
7. Hong Kong 2.91
8. Ucrania 2.44
9. Estados Unidos 2.39
10. Japón 1.78

2.4.- Descripción de Mirai Botnet
Mirai Botnet es una extensa red de enrutadores de red comprometidos que surgió en 2017. Mirai Botnet conecta dispositivos con procesadores ARC y permite a los actores de amenazas lanzar varios tipos de ataques DDoS (Denegación de servicio distribuida) en servidores, sitios y plataformas de medios específicos. Este código malicioso Mirai Botnet afecta a DVR, cámaras CC, detectores de humo, abrepuertas inalámbricos y termostatos. Mirai Botnet se percibe como una amenaza significativa para las redes inseguras de IoT ya que utiliza una lista de credenciales de acceso predeterminadas para comprometer los dispositivos de IoT mal configurados. Mirai Botnet está diseñado para escanear una amplia gama de direcciones IP e intentar establecer una conexión a través de los puertos utilizados por el servicio Telnet. El protocolo Telnet permite a los usuarios autorizados conectarse de un dispositivo a otro siempre que estén en la misma red.
Los dispositivos comprometidos ejecutan una versión básica de Linux y pueden ejecutar programas ligeros como proxies, escáneres web y aplicaciones DDoS. Los programadores detrás de Mirai Botnet pueden usar su red para desbordar servidores específicos con paquetes de datos y evitar que los internautas accedan a plataformas específicas. Además, Mirai Botnet se puede utilizar para enviar spam y ocultar el tráfico web de otros ciberdelincuentes. Los paquetes de datos de los actores de amenazas pueden rebotarse a través de varios 'nodos' en Mirai Botnet y ocultar el origen del actor de amenazas. Mirai Botnet demostró ser un esfuerzo lucrativo hasta que sus creadores fueron arrestados y acusados de actividad de delito cibernético hacia fines de 2017. Sin embargo, el código fuente de este código malicioso se filtró a la Web abierta y eso permitió a muchos otros grupos de amenazas desarrollar su versión modificada, que aparecerán seguramente como variantes de Mirai en los próximos años. Las variantes más destacadas de Mirai incluyen Satori Botnet, Hajime Botnet y Persirai Botnet. La eliminación de este programa maligno puede resultar difícil para los usuarios habituales de PC, por lo que se recomienda preferiblemente utilizar una solución antivirus.

2.5.- Detección Genérica de Linux.Gafgyt y Linux.Mirai

En el Laboratorio Antivirus de la empresa Segumatica se han desarrollado hasta el presente un total de 135 algoritmos genéricos para detectar las muestras contaminadas de las familias de programas malignos Linux.Gafgyt y Linux.Mirai. De ellos 63 algoritmos pertenecen a la familia Linux.Gafgyt y 72 a la familia Linux.Mirai. La Detección Genérica es un método de identificación de programas malignos que se basa en la búsqueda de patrones comunes a varias muestras contaminadas que pueden pertenecer a una o varias familias de programas malignos. Ejemplo de patrones comunes son, entre otros: el tipo de Arquitectura del CPU, la estructura interna de los ficheros, las características físicas de las muestras, la secuencia de instrucciones empleada y las cadenas de caracteres ASCII que se encuentran dentro del código de las muestras contaminadas.

En cuanto al tipo de arquitectura del CPU en las muestras analizadas se han detectado de tipo Intel, ARM, MIPS y otros como PPC, SH4 y SPARC. En relación a la estructura interna de los ficheros, se analiza la marca ELF, el formato del Encabezado del archivo, así como el nombre de las Secciones (por ejemplo: .text, .data, .rodata, .shstrtab). En las características físicas de las muestras se analiza entre otras, el tamaño del fichero, la dirección y contenido del Punto de Entrada, la cantidad de secciones del fichero y la cantidad de segmentos.

El método de Detección Genérica de programas malignos tiene ventajas con respecto a los productos Identificadores convencionales en tres aspectos fundamentales: disminuye el número de firmas en el antivirus, disminuye el tamaño de las actualizaciones del producto, y además incrementa la velocidad de ejecución del producto antivirus.


3.- Conclusiones:

Mirai es un Troyano de ataque de dispositivos IoT perfecto, la estructura del código es clara y sólida, por lo que los códigos malignos IoT posteriores se modifican en base a Mirai. Es muy importante que los desarrolladores de productos de software antivirus sean capaces de implementar métodos de Detección Genérica en sus productos con el fin de que los mismos puedan ser herramientas útiles y eficaces frente a la gran cantidad de variantes de programas malignos existentes en la actualidad. Se recomienda educar a los usuarios finales en la aplicación de las medidas de seguridad informática para prevenir una infección, así como la conducta a seguir ante un ataque por un código maligno de este tipo.