BlackEnergy y los sistemas críticos

Publicado el 08/04/2016, por INCIBE
BlackEnergy y los sistemas críticos

Ucrania ha sido recientemente atacada por malware cuyo objetivo ha sido sabotear los sistemas de control de las infraestructuras públicas. Varias distribuidoras eléctricas fueron comprometidas por el  troyano BlackEnergy el 23 de diciembre, dejando a los hogares de la región ucraniana Ivano-Frankvisk (de una población alrededor de 1,5 millones de habitantes) sin electricidad.

Sin embargo, este no ha sido el único caso de ataque ocurrido a sistemas de control en Ucrania, ya que a comienzos de este año se produjo un ataque a los sistemas informáticos del aeropuerto de Kiev con la intención de provocar caos y desconcierto tras la disrupción del servicio aéreo. Las noticias coinciden en que el malware detectado es similar a BlackEnergy, aunque en este caso se detectó en sus estados iniciales y pudo ser eliminado sin tener consecuencias. En noviembre de 2015  también se produjo otro ataque a cadenas de televisión y medios con características similares a los descritos.

Descripción y evolución de BlackEnergy

BlackEnergy ha evolucionado de ser un troyano a convertirse en una Amenaza Persistente Avanzada (APT - Advanced Persistent Threat). No se trata de una muestra de malware reciente; de hecho, su primera detección fue ya en el año 2007.

línea temporal BlackEnergy

- Línea temporal de BlackEnergy -

Originariamente se diseñó como una herramienta para crear botnets con el objetivo de realizar ataques DDoS. El troyano consta de una aplicación que genera los clientes que el atacante usa para infectar las máquinas de sus víctimas. También provee scripts para llevar a cabo las DDoS que el atacante configura desde el servidor C&C (Command and Control), así como una interfaz para controlar los equipos infectados.

Una propiedad significativa de este troyano es su capacidad de extenderse mediante componentes o plugins que pueden atacar otras plataformas (ARM) o funcionalidades como el robo de certificados. En su último ataque la extensión más utilizada fue el malware KillDisk.

Toolkit BlackEnergy versión 1

- Toolkit de BlackEnergy 1. (Fuente: F-Secure) -

La segunda versión de este troyano incluye rootkits que amplían sus funciones para poder acceder de forma imperceptible al sistema. Esta nueva versión se detectó por primera vez en 2010.

En el año 2014 surgen variaciones que limitan el modo kernel únicamente para la realización de la carga maliciosa o que directamente lo inhabilitan cargándolo mediante el proceso rundl32.exe, versión denominada BlackEnergy Lite. El uso en modo kernel dificultaba el proceso de ataque al tener que contrarrestar nuevas contramedidas de los sistemas operativas, como la firma de controladores o el arranque seguro, haciendo demasiado costosos este tipo de ataques.

parte del código BlackEnergy

- Parte de código de BlackEnergy: Offsets de estructuras kernel de Windows 8 y 8.1 (Fuente: F-Secure) -

En el año 2015, BlackEnergy agrega las variaciones Win32/KillDisk.NBB, Win32/KillDisk.NBC y Win32/KillDisk.NBD detectados por el CERT-UA, que incluyen el componente KilDisk. Esta es la versión utilizada en el ataque.

Anatomía del ataque BlackEnergy

Vías de infección

El medio de infección ha sido principalmente el envío de correos electrónicos con documentos adjuntos suplantando al emisor, normalmente una autoridad (en este caso provenía de un partido político), que engañan al usuario para poder activar el ejecutable; o mediante exploits que de forma silenciosa propagan su instalación.

vías de infección BlackEnergy

- Vías de infección de BlackEnergy -

También se encontró una versión que simulaba ser un instalador de Adobe Flash Player.

Los instaladores más usados del troyano BlackEnergy son nombrados como msiexec.exe.

Vector de ataque

En abril del 2014, una variación de BlackEnergy se aprovecha de una vulnerabilidad de Microsoft Word. Posteriormente se realizan campañas mediante archivos de Powerpoint, según la compañía ESET. Los análisis técnicos más recientes de BlackEnergy identificaron el aprovechamiento de vulnerabilidades críticas que afectaban a software ofimático de Microsoft a través de macros maliciosas. En concreto hace uso, al menos, de las vulnerabilidades CVE-2014-4114 (PowerPoint) y CVE-2014-1761 (Word), aunque también se han encontrado ficheros Excel utilizados para la infección.

Operación

El instalador se lanza por medio de documentos o aplicaciones manipuladas que contienen el troyano. En la última variante, utilizada para las instalaciones eléctricas ucranianas, no se ejecutaba el archivo msiexec.exe sino una macro con el nombre vba_macro.exe activada por un malware tipo dropper (ejecución de macros escondidas en el documento señuelo).

Macro Excel que reconstruye el malware

- Macro de Excel para generar un fichero ejecutable malicioso asociado a BlackEnergy -

La carga maliciosa del dropper es una DLL que es ejecutada por el proceso rundlll32 y crea el archivo LNK que permite la persistencia tras el reinicio. En el proceso de carga se realizar la conexión con el servidor C&C.

Cuando el servidor está conectado, el malware envía peticiones POST con información de la víctima, solicitando diversos comandos.

Petición POST que contiene información sensible de la víctima

- Petición POST para el envío de información básica sobre la víctima en BASE64. (Fuente: https://securelist.com/blog/research/73440/blackenergy-apt-attacks-in-ukraine-employ-spearphishing-with-word-documents/) -

La versión de BlackEnergy analizada, soporta el uso de servidores proxy para conectarse a los servidores C&C. Así, se posibilita su implantación en entornos en los que los usuarios finales necesitan de un proxy para poder tener acceso a Internet. Esta inclusión evidencia las intenciones de los criminales y su conocimiento previo sobre el objetivo. Se han recogido muestras de malware con servidor proxy asociado al ferrocarril ucraniano o dominios de ciudades como Dnipropetrovsk, la cuarta ciudad más importante de Ucrania.

Tras la comunicación con el C&C se descargan los módulos necesarios para el ataque. Concretamente, se descargaba el módulo KillDisk, que, a continuación busca dos procesos:

  • Sec_service.exe: Asociado con el software ELTIMA Serial to Ethernet Connector o con ASEM Ubiquity, utilizados en los sistemas de control Industrial. En concreto el primero es un software que permite pasar del protocolo serie a Ethernet pudiendo así gestionarlo de forma más eficiente, y el segundo es un asistente software que permite gestionar las soluciones WinCE y Win32/64 de forma remota. Si el troyano encuentra este proceso en el sistema atacado no sólo lo cierra, sino que también lo sobrescribe con datos aleatorios dificultando así la restauración.
  • komut.exe: Archivo que contiene información importante de cómo un programa o un servicio debe ejecutarse. Su alteración puede afectar a otros programas y/o servicios que se estén ejecutando en el dispositivo.

Así, las funciones principales de KillDisk tienen como objetivo:

  • Borrar archivos de sistema para que el re-arranque sea lo más difícil posible.
  • Borrar los eventos en el log de Windows.
  • Agregar la opción de introducir un retraso (delay) en la activación de una carga maliciosa (payload) destructiva.

Por tanto, se centra en borrar funcionalidades del sistema más que en el borrado de archivos (a diferencia de los ataques anteriores).

Mientras que las primeras versiones del troyano borraban alrededor de 4000 extensiones de ficheros, la versión usada en Ucrania se limita a solo 35.

tabla con las extensiones afectadas

- Extensiones buscadas por BlackEnergy para el borrado de ficheros -

Recomendaciones y prevención

Las recomendaciones y buenas prácticas para protegerse del troyano BlackEnergy son:

  • Uso de listas blancas de procesos, impidiendo la ejecución de procesos que hayan sido modificados.
  • Separación de entornos, utilizando un equipo para las tareas correspondientes a los sistemas de control (TO) y otro para las tareas de gestión correspondientes a los sistemas de información (TI).
  • Formación a los empleados y concienciación en seguridad sobre la utilización de determinado software y la apertura de ficheros provenientes de internet.
  • Actualización de los sistemas y aplicación de parches de seguridad para prevenir ataques de vulnerabilidades ya conocidas.
  • Actualización de las firmas de los antivirus y programas antimalware que puedan dar respuesta rápida a APT.
  • Uso de sistemas de gestión de eventos y monitorización del tráfico.

Como complemento a estas medidas de carácter general y específicamente para detectar y prevenir el malware BlackEnergy, se recomienda hacer uso de las reglas de Yara y los indicadores de compromiso disponibles de forma pública.

 

Infografía BlackEnergy