A fines del año pasado, descubrimos que entre septiembre y diciembre de 2019 se estuvieron llevando a cabo de manera activa ataques dirigidos contra compañías aeroespaciales y militares en Europa y Medio Oriente. Una investigación en colaboración con dos de las compañías europeas afectadas nos permitió obtener información sobre la operación y descubrir malware previamente indocumentado.

Si bien esta publicación ahondará en los detalles de cómo se desarrollaron estos ataques, más detalles de esta investigación pueden encontrarse en nuestro white paper, Operation In(ter)ception: Targeted attacks against European aerospace and military companies.

Basados ​​en una muestra de malware utilizado llamada Inception.dll, hemos denominado Operation In(ter)ception a estos ataques altamente dirigidos y que tenían la clara intención de mantenerse lejos de los radares de detección.

Para comprometer a sus objetivos, los atacantes utilizaron ingeniería social a través de LinkedIn para publicar ofertas de trabajo atractivas, pero falsas. Tras establecer un contacto inicial, los atacantes desplegaron su malware personalizado de múltiples etapas, junto con herramientas de código abierto modificadas. Además de malware, los atacantes hicieron uso de tácticas conocidas como living off the land para abusar de herramientas legítimas y funciones del sistema operativo. Asimismo, se utilizaron varias técnicas para evitar la detección, incluyendo la firma de código, la recopilación de malware de manera regular y la suplantación de identidad de software y compañías legítimas.

Según nuestra investigación, el objetivo principal de la operación era el espionaje. Sin embargo, en uno de los casos que investigamos los actores intentaron monetizar el acceso a la cuenta de correo de una de sus víctimas a través de un ataque conocido como BEC (del inglés Business Email Compromise).

Si bien no encontramos evidencia sólida que vincule estos ataques a un grupo de cibercriminales conocido, descubrimos algunos elementos que sugieren un posible vínculo con el grupo Lazarus, como son las similitudes en cuanto al perfil de sus blancos de ataque, el entorno de desarrollo y las técnicas antianálisis utilizadas.

Compromiso inicial

Como parte de la fase inicial de compromiso, los atacantes detrás de Operation In(ter)ception habían creado cuentas falsas de LinkedIn a través de las cuales se hacían pasar por representantes de RR. HH de compañías conocidas en las industrias aeroespacial y de defensa. En nuestra investigación, hemos visto perfiles que se hacen pasar por Collins Aerospace (anteriormente Rockwell Collins) y General Dynamics, ambas grandes corporaciones estadounidenses en el campo.

Con los perfiles configurados, los atacantes buscaron empleados de las empresas seleccionadas como blanco de sus ataques y les enviaron mensajes con ofertas de trabajo ficticias utilizando la función de mensajería de LinkedIn, como se ve en la Figura 1. (Nota: las cuentas falsas de LinkedIn ya no existen).

Figura 1. Una oferta de trabajo falsa enviada a través de LinkedIn a los empleados de una de las empresas objetivo

Una vez que los atacantes tuvieron la atención de sus objetivos, colaron archivos maliciosos en la conversación, disfrazados de documentos relacionados con la oferta de trabajo en cuestión. La figura 2 muestra un ejemplo de dicha comunicación.

Figura 2. Comunicación entre los atacantes y un empleado de una de las empresas apuntadas

Para enviar los archivos maliciosos, los atacantes usaron LinkedIn directamente o una combinación de correo electrónico y OneDrive. En el caso de OneDrive, los atacantes usaron cuentas de correo electrónico falsas que se correspondían a sus personajes falsos de LinkedIn, e incluyeron enlaces de OneDrive que alojaban los archivos.

El archivo compartido era un archivo RAR protegido con contraseña que contenía un archivo LNK. Una vez abierto, el archivo LNK da inició a un Command Prompt que abre en el navegador predeterminado de la víctima un archivo PDF remoto.

Ese PDF, que aparentemente contenía información salarial vinculada a los puestos de trabajo, en realidad funcionó como señuelo, ya que en segundo plano, el Command Prompt crea una nueva carpeta y copia a la misma el WMI Commandline Utility (WMIC.exe), renombrando la utilidad en el proceso. Finalmente, creó una tarea programada configurada para ejecutar un script XSL remoto periódicamente a través del WMIC.exe copiado.

Esto permitió a los atacantes poner un pie dentro de la compañía y ganar persistencia en la computadora comprometida. La Figura 3 ilustra los pasos que conducen al compromiso.

Figura 3. Escenario de ataque desde el contacto inicial hasta el compromiso

Herramientas y técnicas de ataque utilizadas

Los atacantes detrás de Operation In(ter)ception emplearon una serie de herramientas maliciosas, incluido el malware personalizado de múltiples etapas y versiones modificadas de herramientas de código abierto.

Hemos visto los siguientes componentes:

  • Downloader personalizado (Etapa 1)
  • Backdoor personalizado (Etapa 2)
  • Una versión modificada de PowerShdll: una herramienta para ejecutar código de PowerShell sin el uso de powershell.exe
  • Loaders de DLL personalizados utilizados para ejecutar el malware personalizado
  • Beacon DLL, probablemente utilizado para verificar conexiones a servidores remotos
  • Una compilación personalizada de dbxcli: un cliente de línea de comandos de código abierto para Dropbox utilizado para la exfiltración de datos

En un escenario típico, el malware de la Etapa 1 –el downloader personalizado– fue descargado por el script XSL remoto (descrito en la sección de Compromiso inicial) y ejecutado usando la utilidad rundll32. Sin embargo, también vimos casos en los que los atacantes usaron uno de sus loaders de DLL personalizados para ejecutar el malware de la Etapa 1. El objetivo principal del downloader personalizado es descargar el payload de la Etapa 2 y ejecutarlo en su memoria.

El payload de la Etapa 2 es un backdoor modular bajo la forma de una DLL escrita en C++. Periódicamente envía solicitudes al servidor y realiza acciones definidas basadas en los comandos recibidos, como enviar información básica sobre la computadora, cargar un módulo o cambiar la configuración. Si bien no recuperamos ningún módulo recibido por el backdoor de su servidor de C&C, sí encontramos indicios de que se utilizó un módulo para descargar el PowerShdll.

Además del malware, en su afán de mantenerse lejos de los radares de detección, los atacantes hicieron uso de la técnica conocida como “living off the land” para abusar de herramientas legítimas y de las funciones del sistema operativo para realizar varias operaciones maliciosas. En cuanto a las técnicas específicas, descubrimos que los atacantes usaban WMIC para interpretar scripts XSL remotos, certutil para decodificar los payloads descargados codificados en base64, y rundll32 y regsvr32 para ejecutar su malware personalizado.

La Figura 4 muestra cómo interactuaron los diversos componentes durante la ejecución del malware.

Figura 4. Flujo de ejecución de malware

Además de utilizar técnicas “living off the land”, descubrimos que los atacantes hicieron un esfuerzo especial para mantenerse ocultos.

Primero, los atacantes camuflaron sus archivos y carpetas dándoles nombres legítimos. Para este propósito, los atacantes utilizaron nombres de software y de compañías conocidas, como Intel, NVidia, Skype, OneDrive y Mozilla. Por ejemplo, encontramos archivos maliciosos con las siguientes rutas:

  • C:\ProgramData\DellTPad\DellTPadRepair.exe
  • C:\Intel\IntelV.cgi

Curiosamente, no solo se cambió el nombre de los archivos maliciosos, sino que los atacantes también manipularon las utilidades de Windows de las cuales se aprovecharon. Copiaron las utilidades a una nueva carpeta (por ejemplo, C:\NVIDIA) y las renombraron (por ejemplo, regsvr32.exe cambió su nombre a NvDaemon.exe)

En segundo lugar, los atacantes firmaron digitalmente algunos componentes de su malware, como son su downloader y backdoor personalizado, y la herramienta dbxcli. El certificado fue emitido en octubre de 2019 –mientras los ataques estaban activos– a 16:20 Software, LLC. Según nuestra investigación, 16:20 Software, LLC es una compañía existente con sede en Pennsylvania, EE. UU., constituida en mayo de 2010.

En tercer lugar, descubrimos que el malware de la Etapa 1 se volvió a compilar varias veces durante la operación.

Finalmente, los atacantes también implementaron técnicas de antianálisis en su malware personalizado, como el aplanamiento del flujo de control y la carga dinámica de API.

Recolección de datos y exfiltración

Según nuestra investigación, para filtrar los datos recopilados de sus blancos de ataque los operadores utilizaron una compilación personalizada de dbxcli, un cliente de línea de comandos de código abierto para Dropbox. Desafortunadamente, ni el análisis del malware ni la investigación nos permitieron obtener una idea de qué archivos buscaban los atacantes detrás de Operation In(ter)ception. Sin embargo, los cargos que ocupaban los profesionales a los que contactaron a través de LinkedIn sugieren que los atacantes estaban interesados ​​en información técnica y comercial.

Compromiso de correos corporativos

En uno de los casos investigados, los atacantes no solo se detuvieron en la extracción de datos: como etapa final de la operación, intentaron monetizar el acceso a la cuenta de correo electrónico de una de sus víctimas a través de un ataque conocido como BEC (del inglés, Business Email Compromiso).

Primero, aprovechando las comunicaciones existentes en la cuenta de correo de la víctima, los cibercriminales intentaron engañar a un cliente de una de las compañías blanco de sus ataques para que pague una factura pendiente a través de su banco, como se ve en la Figura 5. Para una comunicación más efectiva con el cliente, usaron su propia dirección de correo electrónico haciéndose pasar por la víctima.

Aquí, los atacantes no tuvieron éxito: en lugar de pagar la factura, el cliente respondió con preguntas sobre la suma solicitada. Cuando los atacantes instaron al cliente a pagar, el cliente terminó contactando a la dirección de correo electrónico legítima de la víctima sobre el problema, lo que desató una alarma en el lado de la víctima.

Figura 5. Correo electrónico BEC enviado desde la cuenta de correo electrónico comprometida de la víctima

Posibles atribuciones

Aunque nuestra investigación no reveló evidencia convincente que permita vincular los ataques a un grupo o actor de amenaza conocido, identificamos varios indicios que sugieren un posible vínculo con el grupo de Lazarus. En particular, encontramos similitudes en el perfil de sus blancos de ataque, el uso de cuentas falsas de LinkedIn, el entorno de desarrollo y las técnicas antianálisis implementadas. Además de eso, hemos visto una variante del malware de la Etapa 1 que contenía una muestra de Win32/NukeSped.FX, que pertenece a un conjunto de herramientas maliciosas que ESET atribuye al grupo Lazarus.

Conclusión

Nuestra investigación descubrió una operación altamente dirigida que se destaca tanto por su convincente esquema de ingeniería social basado en LinkedIn, por malware modular personalizado y por los trucos implementados para evadir la detección. Curiosamente, si bien la Operation In(ter)ception mostró todos los signos de ciberespionaje, los atacantes aparentemente también tenían un objetivo financiero, como lo demuestra el intento de ataque BEC.

Un agradecimiento especial a Michal Cebák por su trabajo en esta investigación.

Para obtener una descripción completa de los ataques, así como un análisis técnico del malware previamente indocumentado y los Indicadores de compromiso (IoC), consulte nuestro whitepaper, Operation In(ter)ception: Targeted attacks against European aerospace and military companies.

Los IoCs recopilados de los ataques también se pueden encontrar en el repositorio de GitHub de ESET.

Técnicas de MITRE ATT&CK 

Tactic ID Name Description
Initial Access T1194 Spearphishing via Service LinkedIn is used to contact the target and provide a malicious attachment.
Execution T1059 Command-Line Interface cmd.exe used to create a scheduled task to interpret a malicious XSL script via WMIC.
T1106 Execution through API Malware uses CreateProcessA API to run another executable.
T1086 PowerShell A customized .NET DLL is used to interpret PowerShell commands.
T1117 Regsvr32 The regsvr32 utility is used to execute malware components.
T1085 Rundll32 The rundll32 utility is used to execute malware components.
T1053 Scheduled Task WMIC is scheduled to interpret remote XSL scripts.
T1047 Windows Management Instrumentation WMIC is abused to interpret remote XSL scripts.
T1035 Service Execution A service is created to execute the malware.
T1204 User Execution The attacker relies on the victim to extract and execute a LNK file from a RAR archive received in an email attachment.
T1220 XSL Script Processing WMIC is used to interpret remote XSL scripts.
Persistence T1050 New Service A service is created to ensure persistence for the malware.
T1053 Scheduled Task Upon execution of the LNK file, a scheduled task is created that periodically executes WMIC.
Defense Evasion T1116 Code Signing Malware signed with a certificate issued for “16:20 Software, LLC”.
T1140 Deobfuscate/Decode Files or Information certutil.exe is used to decode base64-encoded malware binaries.
T1070 Indicator Removal on Host Attackers attempt to remove generated artifacts.
T1036 Masquerading Malware directories and files are named as, or similar to, legitimate software or companies.
T1027 Obfuscated Files or Information Malware is heavily obfuscated and delivered in base64-encoded form.
T1117 Regsvr32 The regsvr32 utility is used to execute malware components.
T1085 Rundll32 The rundll32 utility is used to execute malware components.
T1078 Valid Accounts Adversary uses compromised credentials to log into other systems.
T1220 XSL Script Processing WMIC is used to interpret remote XSL scripts.
Credential Access T1110 Brute Force Adversary attempts to brute-force system accounts.
Discovery T1087 Account Discovery Adversary queries AD server to obtain system accounts.
T1012 Query Registry Malware has ability to query registry to obtain information such as Windows product name and CPU name.
T1018 Remote System Discovery Adversary scans IP subnets to obtain list of other machines.
T1082 System Information Discovery Malware has ability to gather information such as Windows product name, CPU name, username, etc.
Collection T1005 Data from Local System Adversary collects sensitive data and attempts to upload it using the Dropbox CLI client.
T1114 Email Collection Adversary has access to a victim’s email and may utilize it for a business email compromise attack
Command and Control T1071 Standard Application Layer Protocol Malware uses HTTPS protocol.
Exfiltration T1002 Data Compressed Exfiltrated data is compressed by RAR.
T1048 Exfiltration Over Alternative Protocol Exfiltrated data is uploaded to Dropbox using its CLI client.
T1537 Transfer Data to Cloud Account Exfiltrated data is uploaded to Dropbox.