Log4Shell: a falha de uma biblioteca que virou a maior crise de segurança da década
Em dezembro de 2021, uma falha de quatro linhas em uma biblioteca de logs tirou sistemas do ar no mundo inteiro, em escala de horas.
Em dezembro de 2021 o mundo acordou com uma falha de segurança em uma biblioteca de Java usada para registrar logs, chamada Log4j. A falha recebeu o identificador CVE-2021-44228 e o nome de Log4Shell, e foi explorada em uma velocidade difícil de acreditar: serviços públicos de vários países caíram em poucas horas, e o nome da biblioteca passou a ser matéria de jornal.
O que a falha fazia era simples de explicar. A biblioteca Log4j escreve mensagens de log, e uma das funções permitia que o texto da mensagem fosse interpretado como um comando. Quando alguém escrevia no log um texto como `${jndi:ldap://...}, a biblioteca tentava buscar um endereço remoto, executava o que lá viesse e apresentava o resultado como parte da mensagem. Na prática, isso dava ao atacante a execução de código no servidor, sem senha e sem qualquer interação do usuário.
O agravante era a ubiquidade. O Log4j não é um programa de log, é uma biblioteca, e ela estava dentro de centenas de milhares de aplicações, muitas vezes de forma indireta, como dependência de outra dependência. A maioria dos times nem sabia que tinha a biblioteca instalada. A correção exigia mexer na configuração ou atualizar a dependência, e a dependência estava em camadas que ninguém mapeava.
A segunda onda, a CVE-2021-45046, mostrou que a correção da primeira tinha sido incompleta. As empresas que atualizaram a biblioteca para a versão 2.15.0 acharam que estavam resolvidas, e découvriram que o problema persistia em alguns formatos de mensagem. A versão 2.16.0 resolveu de vez, e ainda assim muita gente ficou em 2.15.0 por semanas.
A lição que ficou foi que a dependência transitiva é uma responsabilidade. O inventário de pacotes que o seu sistema usa, com as versões, não é burocracia: é o que permite responder em minutos quando um aviso sai. E que a velocidade do explorador é o que define a gravidade real, porque uma falha crítica sem correção e sem travaille de inventário vira indisponibilidade em horas, não em semanas.
O que a falha fazia era simples de explicar. A biblioteca Log4j escreve mensagens de log, e uma das funções permitia que o texto da mensagem fosse interpretado como um comando. Quando alguém escrevia no log um texto como `${jndi:ldap://...}, a biblioteca tentava buscar um endereço remoto, executava o que lá viesse e apresentava o resultado como parte da mensagem. Na prática, isso dava ao atacante a execução de código no servidor, sem senha e sem qualquer interação do usuário.
O agravante era a ubiquidade. O Log4j não é um programa de log, é uma biblioteca, e ela estava dentro de centenas de milhares de aplicações, muitas vezes de forma indireta, como dependência de outra dependência. A maioria dos times nem sabia que tinha a biblioteca instalada. A correção exigia mexer na configuração ou atualizar a dependência, e a dependência estava em camadas que ninguém mapeava.
A segunda onda, a CVE-2021-45046, mostrou que a correção da primeira tinha sido incompleta. As empresas que atualizaram a biblioteca para a versão 2.15.0 acharam que estavam resolvidas, e découvriram que o problema persistia em alguns formatos de mensagem. A versão 2.16.0 resolveu de vez, e ainda assim muita gente ficou em 2.15.0 por semanas.
A lição que ficou foi que a dependência transitiva é uma responsabilidade. O inventário de pacotes que o seu sistema usa, com as versões, não é burocracia: é o que permite responder em minutos quando um aviso sai. E que a velocidade do explorador é o que define a gravidade real, porque uma falha crítica sem correção e sem travaille de inventário vira indisponibilidade em horas, não em semanas.
Leia também
Segurança da informação
Duas falhas de execução remota de código no PHP atingem todas as instalações da web
Em 21 de outubro de 2026 o PHP corrigiu duas falhas críticas que permitem executar código sem qualquer autenticação. Quem tem site em PHP precisa atualizar hoje.
LGPD e proteção de dados
Seu CPF vazou: o que fazer nas próximas 48 horas
A maior parte dos vazamentos de CPF é usada para golpe, e os golpes que mais dão certo começam nos primeiros dias.
IA e segurança
A era da IA no trabalho: o que mudou de verdade
A inteligência artificial mudou a forma de trabalhar, e junto trouxe um conjunto novo de falhas que os processos antigos não esperavam.
Segurança da informação
Sua empresa tem antivírus e ainda assim já foi invadida
A sensação de segurança atrasa a ação, e a maioria dos incidentes não depende de ataque sofisticado.