No final do ano passado, descobrimos que foram realizados ataques, entre setembro e dezembro de 2019, direcionados contra empresas aeroespaciais e militares na Europa e no Oriente Médio. Uma investigação colaborativa com duas das empresas europeias afetadas nos permitiu conhecer melhor a operação e descobrir malware ainda não documentado.
Este post explicará como os ataques ocorreram. Caso queira ter acesso a pesquisa completa, confira o nosso white paper (em inglês): Operation In(ter)ception: Targeted attacks against European aerospace and military companies.
Os ataques, que denominamos de Operação In(ter)ception com base em uma amostra de malware relacionada chamada Inception.dll, eram altamente direcionados e claramente tinham a intenção de ficar fora dos radares de detecção.
Para comprometer seus alvos, os atacantes usaram a engenharia social via LinkedIn, escondendo-se atrás de ofertas de emprego atraentes, mas falsas. Depois de estabelecer um contato inicial, os atacantes implantaram seu malware personalizado de vários estágios, juntamente com ferramentas de código aberto modificadas. Além dos malwares, os adversários usavam táticas conhecidas como living off the land para utilizar ferramentas e funções do sistema operacional. Várias técnicas foram usadas para evitar a detecção, incluindo assinatura de código, recompilação regular de malware e a ação de se fazer passar por empresas e softwares legítimos.
Segundo nossa investigação, o objetivo principal da operação era realizar espionagem. No entanto, em um dos casos que investigamos, os atacantes tentaram monetizar o acesso à conta de e-mail de uma das vítimas por meio de um ataque conhecido como BEC (do inglês, Business Email Compromise).
Embora não tenhamos encontrado fortes evidências que vincule esses ataques a um grupo de cibercriminosos conhecido, descobrimos vários elementos que sugerem um possível vínculo com o grupo Lazarus, como as semelhanças em relação ao perfil dos alvos de ataque, o ambiente de desenvolvimento e as técnicas contra análise usadas.
Ataque inicial
Como parte da fase inicial de comprometimento, os atacantes por trás da Operação In(ter)ception criaram contas falsas no LinkedIn, que se faziam passar por consultores de RH de empresas conhecidas nos setores aeroespacial e de defesa. Em nossa investigação, vimos perfis que se faziam passar pela Collins Aerospace (anteriormente Rockwell Collins) e pela General Dynamics, ambas são grandes empresas estadunidenses do setor.
Com os perfis configurados, os atacantes procuraram funcionários das empresas selecionadas como alvo de ataques e enviaram mensagens com ofertas falsas de emprego usando o recurso de mensagens do LinkedIn, como mostra a Figura 1. (Nota: as contas falsas do LinkedIn não existem mais).
Depois que os atacantes tiveram a atenção dos alvos, eles incluíram arquivos maliciosos na conversa, disfarçados como documentos relacionados à oferta de emprego em questão. A Figura 2 mostra um exemplo dessa comunicação.
Para enviar os arquivos maliciosos, os atacantes usaram o LinkedIn diretamente ou uma combinação de e-mail e OneDrive. No caso do OneDrive, os atacantes usaram contas de e-mail falsas correspondentes aos seus personagens falsos do LinkedIn e incluíram links do OneDrive que hospedavam os arquivos.
O arquivo compartilhado era um arquivo RAR protegido por senha que continha um arquivo LNK. Quando aberto, o arquivo LNK iniciou um prompt de comando que abriu um arquivo PDF remoto no navegador padrão da vítima.
Esse PDF, que aparentemente continha informações salariais das vagas de trabalho, na realidade serviu como isca; em segundo plano, o Command Prompt criou uma pasta e copiou o WMI Commandline Utility (WMIC.exe) para a mesma, renomeando o utilitário no processo. Por fim, ele criou uma tarefa agendada, definida para executar um script XSL remoto periodicamente por meio do WMIC.exe copiado.
Isso permitiu que os atacantes colocassem um “pé dentro” da empresa e ganhassem persistência no computador atacado. A Figura 3 ilustra os estágios que levaram ao comprometimento do dispositivo.
Ferramentas e técnicas de ataque
Os atacantes por trás da Operação In(ter)ception empregaram várias ferramentas maliciosas, incluindo malware personalizado de vários estágios e versões modificadas de ferramentas de código aberto.
Vimos os seguintes componentes:
- Downloader personalizado (Estágio 1)
- Backdoor personalizado (Estágio 2)
- Uma versão modificada do PowerShdll - uma ferramenta para executar o código do PowerShell sem o uso do powershell.exe
- Loaders de DLL personalizados usados para executar o malware personalizado
- DLL Beacon, provavelmente usada para verificar conexões com servidores remotos
- Uma compilação personalizada do dbxcli: um cliente de linha de comando de código aberto para Dropbox usado para exfiltração de dados
Em um cenário típico, o malware do Estágio 1 - o downloader personalizado - foi baixado pelo script XSL remoto (descrito na seção Compromisso inicial) e executado usando o utilitário rundll32. No entanto, também vimos casos em que os atacantes usavam um de seus loaders de DLL personalizados para executar o malware do Estágio 1. O principal objetivo do downloader personalizado é fazer o download da carga útil do Estágio 2 e executá-la em sua memória.
A carga útil do estágio 2 é um backdoor modular na forma de uma DLL gravada em C++. Periodicamente, envia solicitações ao servidor e executa ações definidas com base nos comandos recebidos, como enviar informações básicas sobre o computador, carregar um módulo ou alterar a configuração. Embora não tenhamos recuperado nenhum módulo recebido pelo backdoor de seu servidor C&C, encontramos indicações de que um módulo foi usado para baixar o PowerShdll.
Além do malware, na tentativa de continuar distante dos adversários, os atacantes usaram a técnica conhecida como “living off the land” para abusar de ferramentas legítimas e funções do sistema operacional para executar várias operações maliciosas. Quanto às técnicas específicas, descobrimos que os atacantes usavam o WMIC para interpretar scripts XSL remotos; e o certutil para decodificar cargas úteis baixadas e codificadas em base64 e rundll32 e regsvr32 para executar seu malware personalizado.
A Figura 4 mostra como os vários componentes interagiram durante a execução do malware.
Além das técnicas “living off the land”, descobrimos que os atacantes fizeram um esforço especial para que não fossem detectados.
Primeiro, os atacantes disfarçaram seus arquivos e pastas, dando-lhes nomes que soam legítimos. Eles usaram nomes de empresas e softwares conhecidos, como Intel, NVidia, Skype, OneDrive e Mozilla. Por exemplo, encontramos arquivos maliciosos com os seguintes caminhos:
C:\ProgramData\DellTPad\DellTPadRepair.exe
C:\Intel\IntelV.cgi
Curiosamente, não só os arquivos maliciosos foram renomeados - os atacantes também manipularam os utilitários do Windows comprometidos. Eles copiaram os utilitários para uma nova pasta (por exemplo, C:\NVIDIA) e os renomearam (por exemplo, regsvr32.exe foi renomeado para NvDaemon.exe).
Segundo ponto, os atacantes assinaram digitalmente alguns componentes de seus malwares, como o downloader e backdoor personalizado, e a ferramenta dbxcli. O certificado foi emitido em outubro de 2019 - enquanto os ataques estavam ativos - para 16:20 Software, LLC. De acordo com nossa pesquisa, 16:20 Software, LLC é uma empresa existente sediada na Pensilvânia, EUA, constituída em maio de 2010.
Terceiro, descobrimos que o malware do Estágio 1 foi recompilado várias vezes durante a operação.
Por fim, os atacantes também implementaram técnicas contra a detecção em análises em seus malwares personalizados, como achatamento do fluxo de controle e carregamento dinâmico da API.
Coleta de dados e exfiltração
De acordo com nossa pesquisa, os atacantes usaram uma compilação personalizada do dbxcli, um cliente de linha de comando de código aberto para Dropbox, para filtrar os dados coletados de seus alvos. Infelizmente, nem a análise de malware nem a investigação nos permitiram ter uma ideia de quais arquivos os atacantes da Operação In(ter)ception estavam buscando. No entanto, os cargos dos funcionários contactados pelo LinkedIn sugerem que os atacantes estavam interessados em informações técnicas e relacionadas aos negócios.
Ataque a e-mails corporativos
Em um dos casos investigados, os atacantes não pararam apenas na exfiltração de dados - como estágio final da operação, eles tentaram monetizar o acesso à conta de e-mail da vítima por meio de um ataque conhecido como BEC (do inglês, Business Email Compromiso).
Primeiro, aproveitando a comunicação existente nos e-mails da vítima, os atacantes tentaram enganar a um dos clientes de uma das empresas que foram alvo para que realize o pagamento de uma fatura pendente através de uma conta bancária, como pode ser visto na Figura 5. Para uma comunicação mais efetiva com o cliente, eles usaram o endereço de e-mail da empresa atacada.
Neste momento, os atacantes não tiveram êxito - em vez de pagar a fatura, o cliente respondeu com perguntas sobre a quantia solicitada. Como os atacantes pediram que o cliente pagasse, o cliente acabou entrando em contato com o endereço de e-mail correto da empresa para falar sobre o problema, “disparando um alarme” do lado da empresa que foi atacada.
Possíveis atribuições
Embora nossa investigação não tenha revelado evidências convincentes vinculando os ataques a um cibercriminoso conhecido, identificamos vários indícios que sugerem um possível vínculo com o grupo Lazarus. Particularmente, encontramos semelhanças no perfil de seus alvos de ataque, no uso de contas falsas do LinkedIn, no ambiente de desenvolvimento e nas técnicas para burlar análises. Além disso, vimos uma variante do malware do Estágio 1 que continha uma amostra do Win32/NukeSped.FX, que pertence a um conjunto de ferramentas maliciosas que a ESET atribui ao grupo Lazarus.
Conclusão
Nossa pesquisa descobriu uma operação altamente direcionada, notável por seu atraente esquema de engenharia social baseado no LinkedIn, malware modular personalizado e truques de evasão de detecções. Curiosamente, enquanto a Operação In(ter)ception mostrava todos os sinais de ciberespionagem, os atacantes aparentemente também tinham um objetivo financeiro, conforme evidenciado pela tentativa de ataque BEC.
Agradecimentos especiais a Michal Cebák por seu trabalho nesta investigação.
Para obter a descrição completa dos ataques, bem como a análise técnica do malware não documentado anteriormente e dos Indicadores de Comprometimento (IoCs), confira o nosso white paper: Operation In(ter)ception: Targeted attacks against European aerospace and military companies.
Os IoCs coletados dos ataques também podem ser encontradas no repositório da ESET, no GitHub.
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. |