Voltar
Malware Intelligence
Tabela de conteúdo
  • Autor: Anandeshwar Unnikrishnan
  • Editora: Suchita Katira

Resumo

O RedLine é um ladrão de informações que opera em um modelo MaaS (malware como serviço). Esse ladrão está disponível em fóruns clandestinos, com preços de acordo com as necessidades dos usuários.

Como muitos programas de malware roubadores, os desenvolvedores do Redline não fornecem cripters/carregadores; cabe ao operador escolher um. Recentemente CloudSEKA telemetria começou a iniciar a implantação do RedLine Stealer via Regsvcs.exe em sistemas Windows. Usando a técnica de esvaziamento do processo, o carregador substitui o conteúdo do processo Regsvcs.exe, que é gerado no estado suspenso. Após esse evento, o RedLine PE (Portable Executable) é mapeado no processo Regsvcs e os contextos do thread são manipulados para apontar para o ponto de entrada do ladrão, permitindo que o malware se mascare como um processo legítimo no sistema. Este relatório aborda a análise técnica do ladrão RedLine, que está escrito em C#/.NET e é um malware comum disponível em fóruns clandestinos.

Características do Stealer

  • Rouba dados do usuário, como informações de cartão de crédito, dados de login e preenchimentos automáticos dos navegadores instalados.
  • Segmenta os arquivos do usuário no Desktop e Documentos diretórios do PC da vítima. O captador de arquivos procura especificamente dados relacionados à criptografia, como carteiras e arquivos relacionados a sementes.
  • As informações armazenadas nas carteiras são direcionadas e roubadas pelo malware, que tem como alvo 10 carteiras criptográficas e mais de 40 extensões de navegador de carteiras.
  • Captura uma captura de tela da área de trabalho da vítima.
  • Rouba dados específicos do usuário armazenados pelo aplicativo FTP FileZilla e pelos aplicativos VPN instalados no sistema de destino.
  • Coleta tokens do Discord e rouba dados específicos do usuário armazenados no aplicativo Steam.
  • Capaz de executar comandos e cargas adicionais em sistemas comprometidos.

Configuração incorporada

O redLine stealer tem uma configuração embutida na forma de uma classe chamada Argumentos, contendo os seguintes campos:

CampoDescriçãoIP
  • IP C2 e porta usados para comunicação.
  • Protegido por um esquema de codificação personalizado.
CARTEIRA DE IDENTIDADE
  • Identificação específica da vítima usada para identificar uma campanha.
  • Protegido por um esquema de codificação personalizado.
Mensagem
  • Usado na janela pop-up (abordada nas seções posteriores).
  • Protegido por um esquema de codificação personalizado.
Chave
  • Usado para decodificar os dados.
Versão
  • Versão de malware, usada para instanciar a classe principal do ladrão.
Built-in configuration used by the stealer
Configuração embutida usada pelo ladrão

 

A codificação usada pelo malware envolve base64 e XOR esquemas de codificação, nos quais:

  • Os dados decodificados em base64 são fornecidos ao método de decodificação XOR.
  • Em seguida, os dados decodificados em XOR são novamente fornecidos ao método de decodificação base64.
  • Os dados finais decodificados em base64 são os dados legíveis usados pelo malware para comunicação C2.
Decoding method used to decode the configuration
Método de decodificação usado para decodificar a configuração

 

A codificação XOR é usada pelo malware. Cada caractere dos dados decodificados em base64 é XORed com o resultado da operação (each_key_char% key.length).

Custom XOR decoding
Decodificação XOR personalizada

 

Verificação da região

A RedLine inicia a execução verificando primeiro a região da vítima comprometida.

Region check function in RedLine stealer
Função de verificação de região no RedLine Stealer

 

O malware mantém uma lista dos países da CEI, em que, se a vítima pertencer a algum país da lista, a verificação falhará e a execução será encerrada. Esse é um comportamento muito comum observado em programas de malware desenvolvidos por adversários que pertencem a países da CEI.

Excluded Regions from infection
Regiões excluídas da infecção

Configuração C2

Após a verificação inicial da região, o ladrão busca a configuração C2 do IP obtido por meio da configuração embutida. Detalhes sobre a comunicação serão abordados no Comunicação seção deste relatório.

Configuration fetched from C2
Configuração obtida do C2

 

A configuração determina o comportamento do ladrão. Depois de receber a configuração, o malware a processa e a armazena em um objeto chamado configurações.

Parsed C2 configuration
Configuração C2 analisada

 

A configuração do File Grabber contém um caminho de diretório para verificar os dados seguido por um padrão para localizar os dados nos diretórios mencionados. Nesse caso, o malware rouba todos os arquivos de texto, documentos e arquivos que têm chaves, carteiras e sementes como substring.

File grabber configuration
Configuração do captador de arquivos

 

Vários aplicativos têm como objetivo roubar dados do usuário, incluindo navegadores, lançadores de jogos e aplicativos VPN.

Applications targeted by RedLine
Aplicativos direcionados pela RedLine

 

Applications targeted by RedLine
Aplicativos direcionados pela RedLine

 

Várias carteiras criptográficas são alvo do ladrão. A configuração contém o nome da carteira e a variável de ambiente a ser pesquisada no diretório de dados do usuário pelo aplicativo correspondente.

Targeted crypto wallet applications
Aplicativos de carteira criptográfica direcionados

Instanciando o Stealer

A funcionalidade principal do ladrão RedLine é implementada em duas classes: Full InfoSender e Remetente de peças. Eles não são interdependentes. O malware instancia apenas uma classe com base na verificação da versão do malware. O ladrão recupera o ID da versão armazenado na configuração integrada e o FullInfoSender é executado por versões de malware acima de 1. Não há diferença funcional entre as duas classes e ambas seguem exatamente a mesma lógica.

Classes that implement stealer functions
Classes que implementam funções roubadoras

 

Vários métodos implementam o ladrão. O recurso adicional, fora do escopo de FullInfoSender/PartsSender, é a execução de comando/carga útil fornecida pela classe TaskResolver, que será abordada nas seções a seguir.

 

Methods implemented by class FullInfoSende
Métodos implementados pela classe FullInfosEnde

Roubo de dados

Vinculação dinâmica em tempo de execução

O ladrão tem a capacidade de carregar dinamicamente DLLs (Dynamic Link Libraries) em tempo de execução para realizar várias atividades de roubo. As APIs do Win32 Carregar biblioteca A e Obtenha o endereço do Proc são definidos usando o Pinvoke. O Platform Invocation Services (P/Invoke) é um recurso das implementações da Common Language Infrastructure (CLI) que permite que o código gerenciado chame o código nativo. Isso ajuda o malware a carregar um módulo DLL específico na memória e, posteriormente, a resolver o endereço de uma função específica dentro da DLL carregada.

Pinvoke: LoadLibrary and GetProcAddress for run-time dynamic linking
Pinvoke: LoadLibrary e getProcAddress para vinculação dinâmica em tempo de execução

 

O carregamento dinâmico de DLLs é visto em dois lugares, um dentro de uma função usada pelo malware para ler dados armazenados específicos do navegador e o outro dentro de uma função responsável por fazer uma captura de tela do desktop da vítima. O malware carrega bcrypt.dll para realizar várias operações criptográficas nos dados do navegador enquanto realiza o roubo de dados.

As seguintes funções em bcrypt.dll foram resolvidas:

  • Provedor de algoritmo aberto BCrypto
  • Provedor de algoritmo BCryptClose
  • BCryptDecrypt
  • Chave BCryptDestroy
  • BCryptGet Property
  • Propriedade BCryptSet
  • Chave de importação BCrypto
Loading of bcrypt.dll
Carregamento de bcrypt.dll

 

O malware carrega gdi32.dll para realizar o processamento relacionado à imagem. Essa é uma DLL popular usada pelo ladrão e por outros malwares para realizar uma captura de tela. O Obtenha capas de dispositivo a função é resolvida pelo ladrão.

Loading of gdi32.dll
Carregamento de gdi32.dll

 

Mais informações sobre o propósito por trás do uso das várias funções abordadas serão abordadas nas seções a seguir.

Informações do sistema

O ladrão usa a Instrumentação de Gerenciamento do Windows (WMI) para recuperar as informações do sistema da vítima. As seguintes informações são recuperadas pelo malware:

  • Nome de usuário
  • Tamanho do monitor
  • Idiomas de entrada e versão para Windows
  • Informações sobre processador, GPU e memória
  • Navegadores instalados
  • Programas instalados
  • Soluções antivírus instaladas
  • Processos em execução
  • Idiomas disponíveis

Com base nas informações coletadas, um perfil de usuário é criado e enviado ao C2.

User profile sent to C2
Perfil de usuário enviado para C2

 

Dados do navegador

O ladrão está interessado nos seguintes dados armazenados pelo navegador:

  • Biscoitos
  • Preenchimentos automáticos
  • Senhas armazenadas
  • Informações armazenadas do cartão de crédito

Como qualquer ladrão, o RedLine realiza as seguintes operações para roubar os dados:

  • Recupera o arquivo do banco de dados SQL de destino armazenado pelo navegador.
Arquivos de banco de dados críticos visados pelo StealerSenhas C:\Users\user\AppData\Local\Google\Chrome\User Data\ Default\ Login DataPreenchimentos automáticos C:\Users\user\AppData\Local\Google\Chrome\User Data\ Default\ Web DataCartões de crédito C:\Users\user\AppData\Local\Google\Chrome\User Data\ Default\ Web DataCookies Data\ Default\ Network\ Cookies C:\Users\user\AppData\Local\Google\Chrome\User
  • Rouba a chave de decodificação armazenada no arquivo “Estado local” do navegador, que é usado para proteger os dados armazenados nos bancos de dados mencionados no diretório de dados do usuário.
  • O malware então abre o banco de dados e descriptografa os dados.
  • Os dados são então enviados de volta para o C2.
Methods to steal browser data
Métodos para roubar dados do navegador

As consultas SQL são geradas para buscar dados do banco de dados.

Module implementing database interaction and SQL command generation
Módulo que implementa interação com banco de dados e geração de comandos SQL

 

O ladrão implementa uma classe dedicada para processar o navegador Mozilla Firefox. Curiosamente, apenas os cookies são enumerados.

Mozilla stealer methods for Firefox
Métodos de roubo da Mozilla para Firefox

 

Captador de arquivos

Depois de analisar a configuração C2, o valor de ID 10 Um campo que tem diretórios de desktop e documentos do usuário seguidos por um padrão de pesquisa é exibido. Essas informações são usadas pelo malware para pesquisar arquivos que correspondam ao padrão. Ele rouba todos os arquivos de texto e documentos junto com os padrões “chave”, “carteira” e “semente”.

File grabber configuration
Configuração do captador de arquivos

 

A função a seguir implementa a pesquisa. Essa função pega os valores de Id10 e chama o Pesquisador de arquivos.search método.

Method implementing file grabber
Método de implementação do captador de arquivos

 

Carteiras e extensões

A configuração C2 contém uma lista de nomes de aplicativos de carteira para o ladrão procurar, seguida pelos detalhes do diretório (%AppData%).

Carteiras na mira do ladrãoArmory Atomic Electrum Ethereum Exodus Binance Coin OmiguardaJaxxMonero

O método que executa o roubo verifica o diretório %AppData% em busca de carteiras mencionadas na configuração C2. Se encontrados, os arquivos “wallet.dat” são buscados e enviados para o C2.

The method that generates directory path for wallet stealing
O método que gera o caminho do diretório para roubo de carteira

 

As extensões de carteira instaladas nos navegadores também são enumeradas pelo ladrão. <extension_folder_id><extension_name>O ladrão tem uma matriz codificada em base64 que contém extensões de navegador de carteira no formato “|”. Os dados críticos armazenados pelas extensões são buscados e enviados para o C2.

Base64 encoded wallet browser extension names and folder name
Nomes de extensão do navegador de carteira codificada em Base64 e nome da pasta

 

Extensões de navegador direcionadas pelo StealerYoroi Wallet BitApp Wallet Crystaltron Link Atomic Wallet Kardia Chain Nifty Wallet Terra Station Wombat Phantom Harmony Wallet Oxygen Math Wallet Coin 98 Wallet Mewc x Coinbase Authenticator Guild Wallet Bolt x Binance Chain Saturn Wallet Liquality Wallet Brave Walletronin Wallet X Defi Wallet Nami Wallet Carteira MaiardefiWallet Jaxxx Liberty Coin 98 Wallet Guard Wallet Yoroi Wallet Metamask Pali Wallet TempleWallet BitApp WalletiWallet

Discórdia

O ladrão enumera todos os arquivos*.log e*.db em C:\Users\user\AppData\Roaming\discord\Local Storage\ leveldb e procura por tokens usando o seguinte padrão regex:

{2 4}\. {6}\. {2 7}

Lançadores de jogos

O ladrão RedLine tem como alvo o aplicativo Steam recuperando o caminho.

Malware checking for Steam installation
Verificação de malware para instalação do Steam

 

O ladrão está interessado nos arquivos*ssfn*, *.config e*.vdf. Os caminhos do arquivo são gerados pela instanciação da classe GameLauncher. Os arquivos são então pesquisados chamando Escaneamento de arquivos.search () método. Os dados são então enviados para o C2.

Method implementing GameLauncher data stealing
Método de implementação do roubo de dados do GameLauncher

 

VPN

O ladrão tem como alvo os seguintes aplicativos VPN:

  • NordVPN
  • OpenVPN
  • VPN Proton

Ao mirar no NordVPN:

  • O ladrão recupera o caminho C:\Users\user\AppData\Local\NordVPN
  • Enumera os arquivos “user.config” (xml) nos diretórios NordVPN.exe*.
  • Abre o arquivo de configuração do usuário e procura os seguintes nós
    • //configuração/ valor
    • //configuração/ valor
  • Os dados recuperados são decodificados e enviados para o C2.
Nord VPN user configuration stealing
Roubo de configuração de usuário do Nord VPN

 

Ao mirar no OpenVPN e no ProtonVPN, o ladrão enumera os respectivos diretórios e procura por dados.config e arquivos.ovpn.

Aplicativos de FTP

O redLine stealer tem como alvo o aplicativo FTP FileZilla. Ele procura dois arquivos no sistema da vítima no diretório AppData:

  • sitemanager.xml
  • recentservers.xml

Depois de buscar o caminho para os arquivos XML mencionados acima, ele analisa e rouba a senha e as informações do usuário.

RedLine stealing data from FileZilla configuration file
RedLine roubando dados do arquivo de configuração do FileZilla

 

Captura de tela

O ladrão faz a captura de tela da tela do usuário executando as seguintes operações:

  • O tamanho da tela é calculado recuperando o fator de escala. No processo de cálculo, o ladrão carrega gdi32.dll na memória e nos usos Obtenha capas de dispositivo função para obter o número de bits por pixel.
  • Depois de calcular o tamanho do monitor, o processo de captura de tela envolve algum processamento de imagem que está além do escopo deste relatório. Finalmente, a imagem capturada é exportada como.png. Esses dados são então enviados para o C2.
Storing the screenshot image as png
Armazenando a imagem da captura de tela como png

 

Execução de tarefas

O RedLine Stealer fornece a seus operadores a capacidade de executar cargas úteis adicionais, como RAT/Beacons, como tarefas. O ladrão recupera a lista de tarefas do C2, geralmente um link para a carga útil ou um comando do sistema operacional.

Task configuration check and task execution
Verificação de configuração de tarefas e execução de tarefas

 

O RedLine fornece as quatro funcionalidades a seguir para executar tarefas adicionais no sistema comprometido.

  • Execução de comandos via cmd

Essa funcionalidade permite que o operador emita comandos e os execute via cmd.exe.

Task command execution via cmd.exe
Execução do comando da tarefa via cmd.exe

 

  • Baixe e execute a carga útil

Essa funcionalidade permite que o ladrão baixe e execute a carga da Internet.

Payload download and execution
Download e execução da carga

 

  • Recurso somente para download

Essa funcionalidade é “somente para download” e não executa a carga. Para executar a carga, o recurso somente para execução precisa ser usado.

Download-only task execution
Execução de tarefas somente para download

 

  • Recurso somente para execução

Essa funcionalidade é “somente para execução” e não baixa nenhuma carga útil. Esse recurso pode ser usado após o recurso somente para download.

Execute-only task execution
Execução de tarefas somente para execução

 

Comunicação

  • O ladrão usa http://tempuri [.] org/entity/ID <1-24> como comando e controle. O domínio é configurado de forma que os visitantes sejam redirecionados para o bing.com se os parâmetros adequados não forem fornecidos.
  • O parâmetro Id é usado para distinguir vários tipos de dados enviados pelo malware para o C2. Um resumo dos diferentes parâmetros e sua importância é fornecido na tabela a seguir.
Ponto finalDescriçãoID 1 Nenhuma ID 2 Nenhuma ID 3usuária

Envia informações do usuário para esse endpoint

id4usuária

Envia informações do usuário para esse endpoint

id5exibir

Envia a captura de tela da vítima para esse terminal

id6defensores

Envia a lista de AVs instalados no sistema para esse endpoint

id7línguas

Envia os idiomas disponíveis no sistema para esse endpoint

id8softwares

Envia a lista de programas instalados no sistema para esse endpoint

id9processa

Envia uma lista de processos em execução no sistema para esse endpoint

id10hardwares

Envia dados de CPU/GPU/RAM para esse endpoint

id11navegadores

Envia dados de usuário roubados dos navegadores para esse endpoint

id12ftps

Envia dados roubados do aplicativo FileZilla para esse endpoint

id13Navegadores instalados

Envia uma lista de navegadores instalados para esse endpoint

id14Arquivos remotos

Envia dados do capturador de arquivos para esse endpoint

id15Arquivos remotos

Envia dados do capturador de arquivos para esse endpoint

id16Arquivos remotos

Envia dados do capturador de arquivos para esse endpoint

id17Pares de login

Envia dados do capturador de arquivos para esse endpoint

id18Arquivos remotos

Envia dados do capturador de arquivos para esse endpoint

id19Arquivos remotos

Envia dados do capturador de arquivos para esse endpoint

id20Arquivos remotos

Envia dados do capturador de arquivos para esse endpoint

id21Arquivos remotos

Envia dados do capturador de arquivos para esse endpoint

ID22 Nenhum ID23usuária

Envia informações do usuário para esse endpoint

id24ID de atualização

Dados relacionados à tarefa

A imagem a seguir demonstra a comunicação do endpoint.

RedLine sending list of AV solutions installed on the compromised system to C2 endpoint id6
RedLine enviando lista de soluções AV instaladas no sistema comprometido para o endpoint C2 id6

 

Indicadores de compromisso (IOCs)

Hashes6cc44d98ce2fb628b25519eb2aa476b81c1dca23b4c11fb3f26951bba8e68d645be845902145831466d3b710541d2c5a53cfc50108126c8802b48226e89e18871365e7708c818aa8a3cbed2a295ce2d585c654d80b78b1e5b3af9f30c654a4fa7701ee20f7c99aadf95e31bf775bf1614f66aea3e9f03dfadf5ee247ab8eb29c1d18b3c7e5845a5c5cf519471a7b6ee354f848764b7c64b6f3ec59d0e3492e9b710b3f75954a006368d8ebff83e35a8c815f26bdf2b58d62e1a5ffdbc88cd20fIPs95,179,163,157193,106,191,22649,12.69,202185,250,148,76Domínioshttp://tempuri.org/Entity/Id <1-24>santaanarealtor.icu
Nenhum item encontrado.

Blogs relacionados