O que é a Vulnerabilidade do Apache Log4J (Log4Shell)?

Log4Shell (CVE-2021-44228, CVE-2021-45046 e CVE-2021-45105) é uma vulnerabilidade de execução remota de código (RCE) que permite que agentes mal-intencionados executem código Java arbitrário, assumindo o controle de um servidor de destino.

Visão geral da vulnerabilidade do Log4Shell

2021 foi um ano movimentado para vulnerabilidades de dia zero encerradas pelo Log4Shell, uma falha crítica encontrada na biblioteca de log baseada em Java amplamente usada, Apache Log4j. Oficialmente identificado como  CVE-2021-44228, ele carrega uma pontuação de gravidade de 10 em 10 (CVSS v3.1) do Common Vulnerability Scoring System (CVSS).

A vulnerabilidade foi relatada pela primeira vez em particular ao Apache em 24 de novembro de 2021. Em 9 de dezembro de 2021, o Log4Shell foi divulgado publicamente e inicialmente corrigido com a versão 2.15.0 do Apache Log4j.

Notícias subsequentes de ataques na ativa observados levaram várias agências nacionais de cibersegurança a emitir avisos, incluindo a Agência de Segurança Cibernética e Infraestrutura dos EUA (CISA), o Centro Nacional de Segurança Cibernética do Reino Unido (NCSC) e o Centro Canadense de Segurança Cibernética. Devido à popularidade do Apache Log4j, centenas de milhões de dispositivos podem ser afetados.

Como o Log4Shell funciona

Log4Shell é uma vulnerabilidade de injeção de Java Naming and Directory Interface™ (JNDI) que pode permitir a execução remota de código (RCE). Ao incluir dados não confiáveis (como cargas maliciosas) na mensagem registrada em uma versão afetada do Apache Log4j, um invasor pode estabelecer uma conexão com um servidor malicioso por meio da pesquisa JNDI. O resultado: acesso total ao seu sistema de qualquer lugar do mundo.

Como a pesquisa JNDI suporta diferentes tipos de diretórios, como Domain Name Service (DNS), Lightweight Directory Access Protocol (LDAP), que fornecem informações valiosas como dispositivos de rede da organização, invocação de método remoto (RMI) e Inter-ORB Protocol (IIOP), O Log4Shell pode levar a outras ameaças, como:

  • Mineração de moedas: Os invasores podem usar seus recursos para minerar criptomoedas. Essa ameaça pode ser bastante cara, dada a grande quantidade de poder de computação necessária para executar serviços e aplicativos na nuvem.
  • Negação de serviço de rede (DoS): Essa ameaça permite que os invasores desliguem e/ou desativem uma rede, site ou serviço para que fique inacessível à organização visada.
  • Ransomware: Depois que o RCE é alcançado, os invasores podem coletar e criptografar dados para fins de resgate.

 

Abaixo está uma possível cadeia de infecção:

Possível Cadeia de Infecção

Produtos, aplicações e plug-ins vulneráveis

Essencialmente, qualquer dispositivo voltado para a Internet executando o Apache Log4j versões 2.0 a 2.14.1. As versões afetadas estão incluídas no Apache Struts, Apache Solr, Apache Druid, Elasticsearch, Apache Dubbo e VMware vCenter.

Patch e mitigação

O Apache lançou inicialmente o Apache Log4j versão 2.15.0 para corrigir a vulnerabilidade. No entanto, esta versão só funcionava com Java 8. Os usuários de versões anteriores precisavam aplicar e reaplicar mitigações temporárias. No momento da publicação, o Apache lançou a versão 2.16.0 e aconselhou os usuários a atualizar sua biblioteca potencialmente afetada o mais rápido possível.

Outras estratégias de mitigação, como aplicação de virtual patching e utilização de um sistema de detecção/prevenção de intrusão (IDS/IPS), são fortemente encorajadas. A correção virtual protege a vulnerabilidade de exploração adicional, enquanto o IDS/IPS inspeciona o tráfego de entrada e saída em busca de comportamento suspeito.

Apache Log4J

Pesquisa Relacionada

CNN
CNET
ThreatPost