Investigação de minerador de moedas: Quando, Por que, Para que

Coin Miner Investigation
Coin Miner Investigation

1. Malware Coin Miner ganha popularidade

Devido ao aumento do custo da criptomoeda recentemente, Bitcoin particularmente (Bitcoin) para 20000 USD, nossa equipe de analistas notou um aumento na quantidade de programas maliciosos, especialmente aqueles que se concentraram na mineração secreta de criptomoedas. Antimalware GridinSoft detectá-los como Trojan.CoinMiner/Risk.CoinMiner.

Nos últimos meses, o CoinMiner é um dos principais 20 as ameaças mais populares entre Adware, que já foram super populares.

Famílias de malware mais populares nos últimos 30 dias
Famílias de malware mais populares nos últimos 30 dias

Analisando a dinâmica de detecção deste tipo de ameaças, prevemos que os coinminers manterão pelo menos suas posições em um futuro próximo, e ainda obter mais distribuição.

Distribuição da família de malware CoinMiner
Distribuição da família de malware CoinMiner

2. Mineiro de moedas quer ser WannaCry

Os cibercriminosos criam muitas maneiras complicadas de infectar os sistemas dos usuários. O método de infecção mais popular é chamado de pacote de software.

Enquanto usuário desavisado instala software legítimo, um ou vários (geralmente malicioso) programas são instalados silenciosamente ao lado. O mesmo método agora é usado ativamente pelos autores do CoinMiner.

Muitas vezes, programas de mineração instalados são cópias de utilitários para mineração xmrig, gplyra, ou versões ligeiramente modificadas. Este método de distribuição é simples, mas você só pode infectar um computador por instalação. Os autores do Trojan.CoinMiner começaram a procurar outras formas de infecção.

O sucesso sem precedentes do WannaCry (Quero Criptografar) A família ransomware mostrou aos autores de software malicioso uma maneira fácil de infectar computadores pela rede. Além disso, eles descobriram que a maioria dos usuários de computador não trabalha com a versão mais recente do sistema operacional Windows, o que faz com que ganhem dinheiro fácil nas mãos de cibercriminosos habilidosos.

Claro, os autores do CoinMiner aproveitaram esta oportunidade. Afinal, basta infectar de alguma forma um computador da rede para distribuir o mineiro para todos os outros. E este é um aumento notável na bot-net de mineração.

E foi exatamente isso que aconteceu. Algum tempo atrás, todos os principais fornecedores de antivírus relataram o uso do exploit EnernalBlue em conjunto com os mineradores. Também notamos a presença de explorações do grupo de hackers ShadowBrokers em conjunto com CoinMiner nos sistemas dos usuários. GridinSoft detecta utilitários como Virtool.ShadowBrokers.

Sistema infectado com Trojan.CoinMiner (SecUpdateHost.exe) junto com a exploração EternalBlue (spoolsv.exe)
Sistema infectado com Trojan.CoinMiner (SecUpdateHost.exe) junto com a exploração EternalBlue (spoolsv.exe)
Detecções de SecUpdateHost.exe em virustotal.com
Detecções de SecUpdateHost.exe em virustotal.com

Link para o relatório completo

Detecções de spoolsv.exe em virustotal.com
Detecções de spoolsv.exe em virustotal.com

Lembramos que o exploit EnernalBlue permite executar remotamente código no modo kernel em um computador em rede usando vulnerabilidades no protocolo SMB v1. Juntamente com as atualizações mais recentes do Windows, A Microsoft desativa este protocolo à força.

Microsoft desativa SMBv1
Microsoft desativa SMBv1

3. Software Coin Miner fornecido com seu navegador. Realmente?

Nossos analistas analisam o estado dos usuários’ sistemas diariamente para identificar novas ameaças. Desta vez, durante a pesquisa, um arquivo suspeito foi encontrado no navegador WebFreer. Fizemos uma análise mais aprofundada que você pode encontrar abaixo.

Arquivo suspeito encontrado junto com o navegador WebFreer
Arquivo suspeito encontrado junto com o navegador WebFreer

O navegador tem seu site oficial (hXXps://www.webfreer.com), onde WebFreer é anunciado como um seguro, navegador conveniente e rápido.

Site oficial do WebFreer
Site oficial do WebFreer

Vamos dar uma olhada no site em detalhes. Especificamente – no código da página inicial.

Ops! Temos minerador Monero
Ops! Temos minerador Monero

De fato, vale a pena dar uma olhada no código da página. Na página principal do site WebFreer, um script 3malicious está integrado e executa a mineração de criptomoedas quando seu navegador é aberto. As versões mais recentes de navegadores populares bloqueiam conteúdo enviado por protocolo HTTP inseguro, então no nosso caso, o script foi bloqueado pelo navegador Chrome. Se você estiver usando uma versão mais antiga do navegador, você pode estar em risco.

Ao clicar no botão de download, o instalador do WebFreer inicia o download. O arquivo chamado WebFreer_Setup_1.3.2.0 é um instalador NSIS do 53.7 Tamanho em MB. Interessantemente, o arquivo não está assinado por nenhuma assinatura digital, tornando impossível verificar sua autenticidade. Então, qualquer pessoa que tenha acesso aos servidores WebFreer pode modificar o navegador sem usuários’ perceber.

O arquivo de configuração não está assinado digitalmente
O arquivo de configuração não está assinado digitalmente

Versão baixada 1.3.2.0 é o mais recente no momento. O processo de instalação é padrão.

  • cria diretório % Arquivos de Programas% \ WebFreer. Este é o diretório principal do navegador;
  • cria o diretório %LocalAppData%Web Freer. Ele armazena dados do usuário;
  • cria o arquivo %SystemDir%WebClientService.exe. Este arquivo é malicioso;
  • cria o arquivo %SystemDir%webproxy.exe. Este arquivo é malicioso;
  • para iniciar automaticamente o navegador durante a inicialização do sistema, ele cria uma chave de registro HKCUSoftwareMicrosoftWindowsCurrentVersionRunWeb Freer, que se refere ao arquivo %ProgramFiles%WebFreerwebfreer.exe;
  • para trabalho de processo malicioso cria serviço WebClientService, que se refere ao arquivo %System%WebClientService.exe;
  • para fornecer acesso à rede, ele cria regras do Firewall do Windows que permitem conexões TCP e UDP de entrada para %ProgramFiles%WebFreerwebfreer.exe;
  • cria chaves de registro HKLMSOFTWAREMicrosoftWindowsCurrentVersionUninstallWebFreer e HKCUSoftwareWebFreer, que não são maliciosos.
Regras de firewall adicionadas pelo instalador WebFreer
Regras de firewall adicionadas pelo instalador WebFreer

3.1 Indo mais fundo

Vamos analisar detalhadamente esses arquivos.

WebClientService.exe

Como foi mencionado antes, o lançamento deste arquivo executável ocorre através do serviço WebClientService criado durante a instalação do navegador. É óbvio que os autores do malware tentaram se esconder usando um nome semelhante com um serviço WebClient legítimo. Um usuário normal não notará um truque sujo, mesmo que ele decida ver a lista de processos manualmente.

A análise estática nos leva a concluir que o arquivo foi escrito por C ++. Obviamente, o aplicativo não possui interface gráfica.

WebClientService.exe escrito em C++
WebClientService.exe escrito em C++

Vale prestar atenção na importação de funções. Além dos padrões, o uso da biblioteca curl é óbvio. Obviamente, no futuro veremos a interação do serviço com a Internet.

Serviço usa curllib
Serviço usa curllib

Na análise mais aprofundada, algumas variáveis ​​e funções foram renomeadas para facilitar a percepção. Eles, bem como comentários, estão listados nas capturas de tela abaixo.

Uma análise mais aprofundada mostra que o arquivo tem função principal padrão, em que a função interna está associada ao serviço WebClientService pela função StartServiceCtrlDispatcher do WinAPI.

A função de início do serviço é padrão
A função de início do serviço é padrão

Vamos dar uma olhada mais de perto na função que é executada em conjunto com o serviço. Vemos imediatamente o registro da função do manipulador de controle (via RegisterServiceCtrlHandler), como deveria ser.

Função principal do serviço
Função principal do serviço

Não vamos apressar as coisas e analisar a função de processamento do código de controle. A função de processamento de códigos de controle em si não tem interesse e só pode aceitar código SERVICE_CONTROL_STOP. De acordo, o serviço não pode ser suspenso.

Um ponto interessante é que no caso de receber o código SERVICE_CONTROL_STOP, a função de processamento retorna em resposta a SERVICE_STOP_PENDING, e a execução do serviço não para imediatamente (mas o serviço será encerrado à força pelo SCM após o término do prazo). Os autores de malware não especificam o parâmetro dwWaitHint, que deverá ser passado no caso do retorno do código SERVICE_STOP_PENDING. Embora não afete a funcionalidade principal do serviço malicioso.

Função de manipulador de controle do serviço
Função de manipulador de controle do serviço

Depois de registrar o manipulador dos códigos de controle, vemos a preparação padrão para o lançamento do serviço. Depois de criar o evento de conclusão de serviço, você pode notar uma função interessante que por conveniência de análise foi chamada por nós de GetHedgeCoinData. Funciona duas vezes: se a primeira partida não teve sucesso, o malicioso espera 60 segundos (Dormir (60000)), então faz uma segunda tentativa.

Vejamos a função em si para entender quais funções ela está executando.

A função GetHedgeCoinData é pequena, mas interessante
A função GetHedgeCoinData é pequena, mas interessante
A função CheckAvailability aninhada usa biblioteca curl
A função CheckAvailability aninhada usa biblioteca curl

O malware usa a biblioteca curl para se conectar ao URL hXXps: //sites.google.com/site/hedgecoin. Depois que o pedido foi feito, o código de resposta e os dados de retorno são verificados. A função GetHedgeCoinData será bem-sucedida se a consulta tiver sido executada.

Como você pode ver, o site está desativado pelo Google no momento, então não é possível recuperar os dados que estavam neste domínio.

Google desativa site malicioso. Bom trabalho!
Google desativa site malicioso. Bom trabalho!

No entanto, pois não obtivemos informações do endereço da web especificado, o malware usa o predefinido (codificado) parâmetros:
-uma noite criptografada -o estrato + tcp://mine.anybt.com:1111 -e 478WNYwHN4SQs8j89P8QJY4DKm2c6JhCQizi5ucjooKuFQirbtEsafJinSXLwZcysnN1L98r2vocKjGjKoXRrEiRGpmyErc -p x -t 1

Obviamente, esses parâmetros são usados ​​para mineração de criptomoedas. Especificamente, o algoritmo cryptonight e o domínio mine.anybt.com, localizado na hospedagem GoDaddy.com (com base em informações whois) está em uso.

Informações WhoIs sobre o domínio anybt.com
Informações WhoIs sobre o domínio anybt.com

Lembre-se dessas configurações, eles serão usados ​​abaixo. A próxima função que chamamos de CheckWebProxyFiles , que processou arquivos usados ​​por malware.

Verificando arquivos e copiando-os
Verificando arquivos e copiando-os

Como você pode ver no código, pode haver 3 arquivos maliciosos idênticos no sistema do usuário:

  1. %commonappdata%_iocache_.dat
  2. %sistema%webproxy.exe
  3. %arquivos de programas%WebFreerwebproxy.exe

Se algum dos dois últimos arquivos for removido, o serviço será restaurado a partir de uma cópia em %commonappdata%_iocache_.dat.

Vamos voltar à função principal. Após as operações acima com arquivos, a seguinte função é executada, que se destina ao lançamento do webproxy.exe.

Finalmente lançando webproxy.exe com os parâmetros necessários
Finalmente lançando webproxy.exe com os parâmetros necessários

O serviço verifica a presença do arquivo %system%webproxy.exe ou %programfiles%WebFreerwebproxy.exe (basta pelo menos um deles), e então gera os parâmetros de inicialização (os que vimos acima). Depois disso ele cria o processo, salvando seu ProcessID. A constante bCreateProtectedProcess, oculto no código do aplicativo, atrai atenção. Se o seu valor for 76 (0x4C), então o processo é iniciado como protegido. Na amostra por nós analisada esse valor foi igual a 76.

O comportamento posterior do serviço depende do sucesso do lançamento do processo webproxy.exe. Se o processo não puder ser iniciado, o serviço está encerrado.

O comportamento adicional depende do resultado do início do processo
O comportamento adicional depende do resultado do início do processo

Se o processo webproxy.exe for iniciado com sucesso, o serviço é marcado como iniciado e cria um fluxo infinito, em que a integridade dos arquivos (VerifiqueWebProxyFiles) é verificado e o processo de webproxy.exe é reiniciado, se necessário.

Todo 5 serviço de segundos fica de olho no processo webproxy
Todo 5 serviço de segundos fica de olho no processo webproxy

Então, é hora de resumir.

Serviço WebClientService:

  1. refere-se a um arquivo %system%WebClientService.exe;
  2. inicia automaticamente quando o sistema é inicializado;
  3. executa uma solicitação para a URL hXXps://sites.google.com/site/hedgecoin;
  4. tem parâmetros integrados para mineração (mas não faz mineração em si);
  5. Ele inicia um processo protegido na inicialização %system%webproxy.exe ou %programfiles%WebFreerwebproxy.exe;
  6. executa operações de cópia de arquivos %commonappdata%_iocache_.dat, %system%webproxy.exe e %programfiles%WebFreerwebproxy.exe;
  7. após a inicialização ele monitora todos 5 segundos o status do processo webproxy.exe e, se necessário, começa de novo;
  8. após a inicialização ele monitora todos 5 segundos a presença de %commonappdata%_iocache_.dat, %system%webproxy.exe e %programfiles%WebFreerwebproxy.exe. Se necessário, restaura-os de cópias.

webproxy.exe

Ao analisar o serviço WebClientService, encontramos repetidamente a menção de outro arquivo malicioso – webproxy.exe. Devido a informações já recebidas, podemos assumir com segurança que este arquivo é um minerador de moedas. Vamos verificar esta hipótese.

PE Header nos diz que é um EXE de 64 bits
PE Header nos diz que é um EXE de 64 bits

As informações do cabeçalho PE nos dizem que este arquivo é executado em sistemas de 64 bits. É muito estranho para um malware, porque isso pode reduzir potencialmente o número de sistemas infectados, embora a maioria dos computadores no mundo funcione em sistemas operacionais modernos com largura de 64 bits. Pelo menos os usuários do Windows x86 podem dormir em paz, este minerador de moedas nem inicia em seus sistemas.

Embalado com UPX. Tedioso
Embalado com UPX. Tedioso

Os dados sobre as seções no cabeçalho PE nos dizem que estamos diante de um arquivo UPX compactado.

Após o procedimento de desembalagem de rotina, obtemos o arquivo de console executável usual escrito em C.

Temos um executável de 64 bits não compactado
Temos um executável de 64 bits não compactado

Vamos verificar as constantes de string no arquivo e, talvez, encontraremos algo interessante.

Sim. CPUMiner-Multi é usado
Sim. CPUMiner-Multi é usado

De fato, encontramos um fato interessante. Vamos permitir a proposição de que estamos lidando com o cpuminer-multi original. Os autores do malware não removeram as constantes de string do arquivo, então até conseguimos o GitHub do autor do minerador de moedas (não é um programa malicioso, mas a utilidade legítima para mineração – cpuminer-multi). Encontramos cpuminer-multi-versão 1.3.1 no GitHub sem problemas. A única coisa que resta a fazer é comparar nossos arquivos com os encontrados.

Então, webproxy.exe é na verdade cpuminer-gw64-core2.exe
Então, webproxy.exe é na verdade cpuminer-gw64-core2.exe

Agora está claro porque webproxy.exe é um aplicativo de 64 bits, independentemente do número de bits do sistema operacional no qual o WebFreer está instalado: versão cpuminer-multi 1.3.1 existe apenas na versão de 64 bits.

O processo de mineração está em andamento…
O processo de mineração está em andamento…

No total, webproxy.exe não é de muito interesse para análise, já que é uma cópia do utilitário comum para mineração cpuminer-gw64-core2.exe.

3.2 O WebFreer sempre foi assim?

Decidimos verificar se os usuários da versão anterior do navegador WebFreer estão em risco. Para fazer isso, baixamos a versão anterior do navegador – 1.3.1.0, e comparou o conteúdo dos instaladores.

Não webproxy.exe nem webclientserver.exe estão presentes
Não webproxy.exe nem webclientserver.exe estão presentes

Como acabou, a versão anterior do navegador WebFreer não continha nenhum elemento malicioso, nomeadamente – mineiros de moedas escondidas.

4.Conclusão

Junto com você, encontramos e analisamos o navegador WebFreer, que está instalado em um sistema junto com elementos maliciosos. Eles realizam mineração de criptomoedas causando danos ao seu sistema e computador. Seu computador está ocupado resolvendo as tarefas de mineração. Como resultado, seu desempenho e velocidade são reduzidos, e pode haver um problema de alto nível de ruído nos sistemas de refrigeração, superaquecimento, e até quebra do computador.

Se o menor mal-intencionado foi incluído propositalmente no navegador WebFreer por seus autores ou se um ataque cibernético foi realizado em seu servidor, é impossível dizer com certeza porque não existe assinatura digital.

No final da nossa análise, gostaríamos de lhe dar algumas dicas sobre como proteger você e seus entes queridos.

  • Use apenas as versões mais recentes do software.
  • Instale atualizações do sistema operacional em tempo hábil. A maioria das infecções pode ser evitada simplesmente instalando atualizações do sistema operacional.
  • Use apenas navegadores confiáveis.
  • Não instale software desconhecido de fontes suspeitas.
  • Verifique a presença de assinatura digital nos programas que você usa. Este não será o 100% solução contra infecção, mas irá reduzi-lo significativamente.
  • Se você notar uma lentidão ou piora no desempenho do seu PC, escaneie seu sistema.

Mineiros de moedas ganham popularidade, então dezenas de novos vírus aparecem a cada hora, e os antivírus habituais não conseguem combatê-los eficazmente. GridinSoft Anti-Malware atualiza o banco de dados de vírus de hora em hora, para que você possa ter certeza de que possui a proteção mais forte.

Por Vladislav Baglay

Trabalho como Diretor de Pesquisa de Malware na Gridinsoft há muitos anos e sou apaixonado por aprender novos esquemas de vírus.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *