Redimir é a rainha: Varonis investiga o ransomware ransomware de rápida disseminação “SaveTheQueen”



Um novo tipo de malware da classe de vírus ransomware criptografa arquivos e adiciona a extensão .SaveTheQueen a eles, espalhando-se pela pasta de rede do sistema SYSVOL nos controladores de domínio do Active Directory.

Nossos clientes encontraram recentemente esse malware. A seguir, apresentamos nossa análise completa, seus resultados e conclusões.

Detecção


Um de nossos clientes entrou em contato conosco após encontrar um novo tipo de ransomware ransomware que adicionou a extensão ".SaveTheQueen" a novos arquivos criptografados em seu ambiente.

Durante nossa investigação, ou melhor, na fase de pesquisa de fontes de infecção, descobrimos que a distribuição e o rastreamento das vítimas infectadas foram realizadas usando a pasta de rede SYSVOL no controlador de domínio do cliente.

SYSVOL é a pasta principal de cada controlador de domínio usado para entregar GPOs (Objetos de Diretiva de Grupo) e scripts de logon e logout nos computadores do domínio. O conteúdo desta pasta é replicado entre controladores de domínio para sincronizar esses dados nos sites da organização. Gravar no SYSVOL requer altos privilégios de domínio; no entanto, após ser comprometido, esse ativo se torna uma ferramenta poderosa para invasores que podem usá-lo para distribuir carga maliciosa de maneira rápida e eficiente pelo domínio.

A cadeia de auditoria da Varonis ajudou a identificar rapidamente o seguinte:

  • A conta do usuário infectado criou um arquivo chamado "de hora em hora" no SYSVOL
  • Muitos arquivos de log foram criados no SYSVOL - cada um nomeado para um nome de dispositivo de domínio
  • Muitos IPs diferentes acessaram o arquivo por hora.

Concluímos que os arquivos de log foram usados ​​para rastrear o processo de infecção em novos dispositivos, e que “de hora em hora” é uma tarefa agendada que executa carga maliciosa em novos dispositivos usando o script Powershell - amostras “v3” e “v4”.

O invasor provavelmente obteve e usou privilégios de administrador de domínio para gravar arquivos no SYSVOL. Nos nós infectados, o invasor lançou o código do PowerShell, que criou uma tarefa de agendamento para abrir, descriptografar e iniciar malware.

Descriptografia


Tentamos várias maneiras de descriptografar as amostras sem sucesso:



Estávamos quase prontos para desistir quando decidimos experimentar o método “Magic” do magnífico
utilitário Cyberchef da GCHQ. "Magic" tenta adivinhar a criptografia do arquivo, usando enumeração de senhas para diferentes tipos de criptografia e medição de entropia.

Nota do tradutor
. . , ,



“Magic” determinou que um empacotador GZip codificado em base64 foi usado, graças ao qual conseguimos descompactar o arquivo e encontrar o código de injeção - “injector”.



Conta-gotas: “Há uma epidemia na área! Vacinação pela metade. Doença de pé e boca


O conta-gotas era um arquivo .NET normal, sem qualquer proteção. Depois de ler o código-fonte usando o DNSpy, percebemos que seu único objetivo era injetar código de shell no processo winlogon.exe.





Shellcode ou dificuldades simples


Usamos a ferramenta de autoria do Hexacorn - shellcode2exe para "compilar" o código do shell em um arquivo executável para depuração e análise. Em seguida, descobrimos que funcionava em máquinas de 32 e 64 bits.



Escrever até mesmo um código de shell simples na tradução nativa do assembler pode ser difícil; escrever um código de shell completo executado em ambos os tipos de sistemas requer habilidades de elite; portanto, começamos a nos maravilhar com a sofisticação do invasor.

Quando analisamos o código de shell compilado usando x64dbg , percebemos que ele carregava as bibliotecas dinâmicas do .NETcomo clr.dll e mscoreei.dll. Isso nos pareceu estranho - geralmente os atacantes tentam tornar o código de shell o menor possível, chamando as funções nativas do sistema operacional em vez de carregá-las. Por que alguém precisaria incorporar a funcionalidade do Windows no shellcode em vez de chamá-lo diretamente sob demanda?

Como se viu, o autor do malware não escreveu esse complexo código de shell - a característica de software desta tarefa foi usada para converter arquivos e scripts executáveis ​​em código de shell.

Encontramos a ferramenta Donut , que, ao que parecia, poderia compilar um código de shell semelhante. Aqui está sua descrição no GitHub:

O Donut gera código de shell x86 ou x64 a partir de VBScript, JScript, EXE, DLL (incluindo assemblies .NET). Esse código de shell pode ser incorporado em qualquer processo do Windows para execução na
RAM.


Para confirmar nossa teoria, compilamos nosso próprio código usando o Donut e o comparamos com uma amostra - e ... sim, encontramos outro componente do kit de ferramentas usado. Depois disso, já conseguimos extrair e analisar o executável .NET original.

Proteção de código


Este arquivo foi ofuscado pelo ConfuserEx : O





ConfuserEx é um projeto .NET de código aberto para proteger o código de outros designs. Essa classe de software permite que os desenvolvedores protejam seu código da engenharia reversa usando métodos como: substituir caracteres, mascarar o fluxo de comandos de controle e ocultar o método de referência. Os autores de malware usam ofuscadores para evitar a detecção e dificultar a tarefa de engenharia reversa.

Graças ao ElektroKill Unpacker, descompactamos o código:



Resultado - carga útil


A carga resultante das transformações é um vírus ransomware muito simples. Nenhum mecanismo para garantir a presença no sistema, nenhuma conexão com o centro de comando - apenas a boa e antiga criptografia assimétrica, a fim de tornar essas vítimas ilegíveis.

A função principal seleciona as seguintes linhas como parâmetros:

  • Extensão de arquivo para uso após criptografia (SaveTheQueen)
  • E-mail do autor para colocar no arquivo da nota de resgate
  • Chave pública usada para criptografar arquivos



O processo em si é o seguinte:

  1. O malware verifica unidades locais e mapeadas no dispositivo vítima


  2. Procura arquivos de criptografia


  3. Tenta finalizar um processo usando o arquivo que está prestes a criptografar.
  4. Renomeia o arquivo para "Source_file_name.SaveTheQueenING" usando a função MoveFile e o criptografa
  5. Depois que o arquivo é criptografado com a chave pública do autor, o malware o renomeia novamente, agora em "Nome_arquivo_arquivo original.SaveTheQueen"
  6. Um arquivo está sendo gravado com uma solicitação de resgate na mesma pasta



Com base no uso da função CreateDecryptor nativa, uma das funções de malware parece conter um mecanismo de descriptografia que requer uma chave privada como parâmetro.

O vírus de criptografia NÃO criptografa os arquivos armazenados nos diretórios:

C: \ windows
C: \ Arquivos de Programas
C: \ Arquivos de Programas (x86)
C: \ Users \\ AppData
C: \ inetpub

Também NÃO criptografa os seguintes tipos de arquivo: EXE, DLL , MSI, ISO, SIS, CAB.

Sumário e conclusões


Apesar do vírus ransomware em si não conter funções incomuns, o invasor usou o Active Directory para distribuir o conta-gotas de forma criativa, e o próprio malware nos forneceu obstáculos interessantes, embora não complicados, durante a análise.

Achamos que o autor do malware é:

  1. Eu escrevi um vírus de ransomware com uma implementação interna no processo winlogon.exe, além de
    funcionalidade de criptografia e descriptografia de arquivos
  2. Disfarçou o código malicioso usando o ConfuserEx, converteu o resultado usando o Donut e, além disso, ocultou o conta-gotas base64 Gzip
  3. Obteve privilégios elevados no domínio da vítima e os usou para copiar
    malware criptografado e tarefas agendadas na pasta de rede SYSVOL dos controladores de domínio
  4. Lançou um script do PowerShell em dispositivos de domínio para espalhar malware e gravar o progresso do ataque nos logs no SYSVOL



Se você tiver dúvidas sobre esta versão do vírus ransomware ou qualquer outra investigação forense e investigação de incidentes de segurança das informações por nossas equipes, entre em contato conosco ou solicite uma demonstração ao vivo de resposta a ataques , onde sempre respondemos perguntas durante a sessão de perguntas e respostas.

All Articles