Botnet Mirai Ataca Dispositivos IoT Via CVE-2020-5902

Com base na solução alternativa publicada para CVE-2020-5902, encontramos um downloader de botnet Mirai que pode ser adicionado a novas variantes de malware para fazer a varredura de Big-IP boxes expostas para intrusão e entregar a payload malicioso.

Atualização a partir das 10h00 PST, 30 de julho de 2020: Nossa análise contínua da amostra de malware apontou ajustes nos detalhes que envolvem os parâmetros de varredura URI e Shodan. Realizamos as alterações necessárias neste post. Gostaríamos de agradecer à F5 Networks por entrar em contato conosco para esclarecer esses detalhes.

Após a divulgação inicial de duas vulnerabilidades F5 BIG-IP na primeira semana de julho, continuamos monitorando e analisando as vulnerabilidades e outras atividades relacionadas a fim de entender melhor suas severidades. Com base na solução alternativa publicada para CVE-2020-5902, encontramos um downloader de botnet Mirai da Internet das coisas (IoT) (detectado pela Trend Micro como Trojan.SH.MIRAI.BOI) que pode ser adicionado a novas variantes de malware com o intuito de realizar varreduras de Big-IP boxes expostas para intrusão e entregar a paylods maliciosos.

As amostras que encontramos também tentam explorar vulnerabilidades recentemente divulgadas e potencialmente não corrigidas em dispositivos e softwares comumente usados. Administradores de sistema e indivíduos que utilizam os dispositivos relacionados são aconselhados a corrigir suas respectivas ferramentas imediatamente.

 

Rotina

Conforme relatado anteriormente, o bug de segurança envolve uma vulnerabilidade de execução remota de código (RCE) na interface de gerenciamento do BIG-IP, conhecida como Traffic Management User Interface (TMUI). Após analisar as informações publicadas, observamos na regra de atenuação no Apache httpd que uma possível maneira de explorar essa vulnerabilidade envolve uma solicitação HTTP GET contendo o caractere “ponto-e-vírgula” no URI. Em uma linha de comando do Linux, um “ponto e vírgula” sinaliza ao intérprete que esta terminou e é desse caractere que a vulnerabilidade precisa para ser ativada. Para aprofundar nossa análise, testamos se um criador de botnet IoT pode adicionar um recurso de varredura a variantes de malware existentes e/ou novas por meio desta regra Yara:

 

Figura 1. Regra Yara para verificar a existência de malware

 

Embora a regra usada para teste pareça simples, ela nos permitiu uma ampla gama de provas de conceito (PoC) de malware, Python ou Ruby para verificar. A partir da data de divulgação de 1º de julho, encontramos a primeira amostra de um arquivo ELF compilado para uma arquitetura MIPS em 11 de julho que identificou dois endereços: hxxp[:]//79[.]124[.]8[.]24/bins/ (identificado como o vetor da infecção) e hxxp[:]//78[.]142[.]18[.]20 (identificado como o servidor de comando e controle (C&C)). Um padrão comum em malware IoT como o Mirai é encontrar diferentes arquivos hospedados em um domínio com extensões diferentes destinadas a atacar arquiteturas distintas. Ao verificar o host, encontramos os seguintes arquivos:

 

Tabela 1. Arquivos hospedados no C&C

 

Analisando os endereços IP, descobrimos que, desde junho, ele já tinha sido usado para implantar malware de IoT, incluindo outras variantes do Mirai.

Os nomes do arquivo SORA foram identificados anteriormente como uma variante do Mirai que pode ser usada para ataques de força bruta, bem como abuso de outras vulnerabilidades para RCE e controle não autorizado e gerenciamento de dispositivos. Enquanto isso, fetch.sh é um script de shell com o seguinte conteúdo:

 

Figura 2. shellscript fetch.sh

 

fetch.sh conecta-se a http[:]//79[.]124[.]8[.]24/bins/sora.{arquitetura} para baixar e executar o binário malicioso aplicável denominado “sysctl”. Simultaneamente, fetch.sh também cria cron jobs para permitir a execução automática do binário baixado.

 

Figura 3. Criação de cron jobs

 

O script usa a ferramenta iptables para descartar qualquer pacote em portas de protocolo de controle de transmissão (TCP) usadas popularmente, como portas padrão para Telnet, Secure Shell (SSH) e o painel da web do dispositivo (HTTP). Isso pode ter duas implicações diferentes:

  •         Nenhum outro malware terá acesso direto aos serviços expostos no dispositivo infectado
  •         O proprietário do dispositivo não será capaz de acessar a interface de gerenciamento

Isso também lembra as implicações citadas em nosso artigo de pesquisa recente para o controle de dispositivos IoT atualmente conectados.

Ao analisar a amostra x86 deste botnet, percebemos suas tentativas de explorar BIG-IP boxes vulneráveis ao enviar uma solicitação GET para a porta 443 / TCP (HTTPS) da vítima:

 

Figura 4. Solicitação GET para exploit de CVE-2020-5902

 

Dada a gravidade da falha, uma simples solicitação GET com um parâmetro “command” para tmshCmd.jsp seria suficiente para executar remotamente um comando em um dispositivo infectado se o caminho de ID estiver corretamente anexado a ele.

 

Outras explorações abusadas

Também descobrimos, ao verificar a variante, que ela tenta explorar vulnerabilidades recentemente divulgadas e descobertas em alvos gerados aleatoriamente. Aqui está a lista completa de exploits usados por esta variante:

 

Tabela 2. Outros exploits usados por amostras distintas

 

Conclusão e recomendações de segurança

A F5 Networks atende a várias empresas de dispositivos de rede, com o BIG-IP como um dos produtos mais populares em uso por governos e empresas, especialmente devido aos acordos abruptos de home office atuais. Isso afeta uma ampla gama de produtos e versões, incluindo os lançados mais recentemente perto da data de divulgação da vulnerabilidade. Com o CVE-2020-5902 recebendo uma classificação de 10 na escala de vulnerabilidade do Common Vulnerability Scoring System (CVSS) v3.0, a vulnerabilidade também indica que a lacuna de segurança em si é fácil de abusar online e automatizar. Além disso, não requer credenciais ou habilidades de codificação avançadas para ser explorada.

Com isso dito, a F5 já publicou um procedimento informativo e detalhado de mitigação para negar solicitações contendo “ponto e vírgula”. Para adicionar, embora as configurações padrão não exponham a interface de gerenciamento ao público, nossa varredura Shodan indicou aproximadamente 7.000 hosts expostos online (considerando os que escutam nas portas 443 e 8443 apenas). Por “exposto” queremos dizer “acessível a partir da Internet”, mas não com certeza se os ditos hosts são vulneráveis.

Reconhecendo a gravidade da falha de segurança, o Comando Cibernético do Departamento de Defesa emitiu um tweet três dias após a divulgação, aconselhando a correção imediata da vulnerabilidade. Dada a data de divulgação da vulnerabilidade e o número de dias que levou para um exploit ficar em liberdade (10 dias), parece que os agentes mal-intencionados estão prestando muita atenção às divulgações e relatórios mais recentes para criar seus próprios exploits. Embora algumas dessas vulnerabilidades só tenham sido discutidas em postagens de blog e não anunciadas como códigos de exploits disponíveis publicamente, esses cibercriminosos estão cientes de duas coisas: primeiro, os fabricantes ainda não criaram os patches correspondentes e, segundo, os administradores de sistema ainda precisam fazer o download e implementar patches lançadas na duração equivalente.

Os administradores do sistema e as equipes de segurança podem proteger os dispositivos IoT desses tipos de ameaças com algumas destas práticas recomendadas:

  •         Garanta que o firmware dos dispositivos IoT seja executado nas versões mais recentes, monitorando constantemente os lançamentos dos fabricantes.
  •         Use uma rede privada virtual (VPN) para evitar a exposição de qualquer interface de gerenciamento diretamente à Internet.
  •         Empregue segmentação de rede para limitar a propagação de infecções e personalizar as configurações de segurança dos dispositivos.
  •         Certifique-se de que haja um sistema de monitoramento e detecção de tráfego de rede com um bom Web Application Firewall (WAF) instalado. Isso serve para rastrear a linha de base e intervalos anormais de uso para proteger as interfaces de gerenciamento que podem ser acessadas online.
  •         Instale um sistema de proteção em várias camadas que pode detectar, bloquear e prevenir ameaças tais como ataques de força bruta que abusam de falhas de segurança como essas para entrada.

Os dispositivos conectados também podem ser protegidos por software de segurança, como as soluções Trend Micro™ Home Network Security e Trend Micro™ Home Network Security SDK, que podem verificar o tráfego da Internet entre o roteador e todos os dispositivos conectados, bem como auxiliar os usuários na avaliação das vulnerabilidades.

 

Indicators of Compromise (IOCs)

Por gentileza, consulte a lista completa de IoCs aqui.