1/ Industroyer: La historia se repite
Diciembre de 2016, un mes a recordar por el sector energético ucraniano. La red eléctrica de Ucrania fue víctima de un ataque dejó sin suministro eléctrico a la ciudad de Kiev durante una hora. Pero este no fue un ataque como los que la humanidad acostumbra. Ninguna torre cayó aquel día, ningún cable fue cortado. Este suceso fue desencadenado por un ciberataque.
Pero ¿Cuál fue el motivo de este ataque? ¿Quién está detrás de estos hechos? ¿Por qué un ciber ataque?
Aparentemente los investigadores de ESET y Dragos apuntan a un grupo de hackers afines al gobierno ruso, que ya habían atacado infraestructuras energéticas con anterioridad. Aparentemente… Esa es una de las razones de emplear un ciber ataque, son realmente difíciles de rastrear. Esto evita que las autoridades adjudiquen la autoría de estos hechos e impongan penas a los responsables.
Pero en esta serie de artículos no hablaremos sobre estos temas. La idea de esta serie es centrarnos en el malware empleado para ejecutar el ataque: Industroyer.
Industroyer es una sofisticada pieza de malware diseñada para atacar los procesos de los sistemas de control industrial utilizados en determinadas subestaciones eléctricas. Por el tipo de acciones que realiza, se determina que los creadores tienen un profundo conocimiento y comprensión de los sistemas de control industrial empleados en este sector. Adicionalmente, parece muy probable que estos autores tuvieran acceso a equipos especializados del entorno.
Los autores implementaron soporte para cuatro protocolos de control industrial, especificados en las siguientes normas:
- IEC 60870-5-101 (también conocido como IEC 101)
- IEC 60870-5-104 (también conocido como IEC 104)
- IEC 61850
- OLE para acceso a datos de control de procesos (OPC DA)
Adicionalmente, los creadores implementaron diferentes módulos entre las que se incluye un escáner y una herramienta de denegación de servicio que tiene como objetivo atacar a una familia de relés de protección, concretamente la gama Siemens SIPROTEC.
Pero lo que realmente nos interesa es… ¿Cómo funciona? ¿Cómo se propaga? Y ¿Que hace este malware cuando se introduce en el sistema?
Arriba podemos observar un esquema con los diferentes modulos que implementa este malware. Aunque se desconoce la vía de infección, sabemos que la primera acción es instalar la “Backdoor principal”. Esta contiene el core de la aplicación y desplegará el resto de herramientas necesarias. A continuación, se introduce una “Backdoor adicional” que recuperará el sistema en caso de que la primera sea detectada.
Por otro lado, encontramos el “Launcher”. Esta aplicación será la encargada de lanzar los payloads para los diferentes protocolos implementados. A su vez, es la encargada de llamar a “Data Wipper”, modulo que eliminará los rastros de la infección, dificultando la investigación del suceso.
2/ Las Backdoors
Cuando pensamos en un malware, lo primero que nos viene a la cabeza es su potencial “destructivo”. Todos conocemos algún malware que borra tus datos, los secuestra cifrándolos o, como en este caso, impide el correcto funcionamiento de un servicio.
Pero el principal objetivo por parte de un atacante en estos casos es claro: mantener el control. Poco interés tiene realizar un ataque que sea detectado y subsanado en segundos. Se ha invertido mucho dinero y esfuerzo. En estos casos interesa
Este es el objetivo del corazón de Industroyer.
3/ Backdoor principal
Se ha determinado la backdoor principal como el núcleo del malware, pues gracias a esta pieza los atacantes pueden controlar el resto de capacidades de este software.
Cuando este malware infecta el equipo se pone en contacto con sus servidores de Command & Control (C&C) empleando el protocolo HTTPS proteger el envío y recepción de información. Cuando el malware realiza una de estas comunicaciones, envía una petición POST con los siguientes datos:
- El identificador único global (GUID) del dispositivo.
- La versión del malware.
- Una ID fija de la muestra.
- La respuesta a ordenes solicitadas (si los hay)
La lista de órdenes que soporta este malware son:
ID de la orden | Efecto |
0 | Ejecutar un proceso |
1 | Ejecutar un proceso empleando un usuario concreto.
(Las credenciales se envían por el atacante) |
2 | Descarga un fichero del C&C |
3 | Copia un fichero |
4 | Ejecuta una orden en línea de comandos. |
5 | Ejecuta una orden en línea de comandos empleando un usuario concreto.
(Las credenciales se envían por el atacante) |
6 | Salida |
7 | Parar un servicio. |
8 | Parar un servicio empleando un usuario concreto.
(Las credenciales se envían por el atacante) |
9 | Levantar un servicio empleando un usuario concreto.
(Las credenciales se envían por el atacante) |
10 | Reemplazar el registro “image path” para un servicio |
Una de las presuntas evidencias de que el malware está diseñado para una organización en concreto, es la configuración a fuego, por defecto, del proxy empleado en esa red local.
Adicionalmente, los desarrolladores han sido muy cautelosos con la actividad de este malware, implementando una función para controlar el horario en el que trabaja. Esta medida dificulta su detección adaptándose según las necesidades.
4/ Backdoor adicional
Pero ¿Qué sucede si se detecta y elimina la backdoor principal? Como hemos comentado, estos desarrolladores son muy listos y ya lo tienen pensado. Por esta razón han implementado una Backdoor adicional que mantendrá la persistencia en caso de que se detecte la principal.
¿Cómo lo implementan? En esta ocasión, una vez ganan privilegios de administración, sustituyen una de las aplicaciones por defecto de la instalación de Windows por una versión completamente funcional, pero troyanizada, de la misma: El notepad. Este “actualización” del notepad trae consigo un código fuertemente ofuscado que realiza comunicaciones con otro servidor de C&C. Dado que este servidor es diferente al empleado por la Backdoor principal, no se verá afectado en caso de que se deniegue el acceso a estos, cumpliendo su objetivo de mantener la posición.
En el siguiente artículo hablaremos de las capacidades ofensivas que ofrece este malware, implementados en los modulos Launcher, Data whipper y herramientas adicionales.