ELS para Jackson: O que significa o fim da vida útil (EOL) do Jackson Databind

Os patches do php2shell (CVE-2026-109618 e CVE-2026-109619) para o PHP em fim de vida (EOL) já estão disponíveis. Como as respostas do atendimento de vendas estão mais demoradas do que o normal devido à alta demanda, a maneira mais rápida de obter os pacotes corrigidos é adquirir o ELS para Runtimes on-line (abre em uma nova aba). Leia as perguntas frequentes sobre os patches

Vá direto para um resumo gerado por IA desta postagem do blog

  • Resuma esta postagem com o Perplexity
  • Resuma esta postagem com o Gemini

Principais conclusões

  • O fim da vida útil (EOL) do Jackson amplia sua superfície de risco: O Jackson Databind depende do Jackson Core, que possui um histórico real de vulnerabilidades CVE; portanto, o fim da vida útil (EOL) deixa a camada de análise de JSON exposta.
  • Atualizações precipitadas custam caro: Alterações em versões secundárias do Jackson podem afetar a desserialização, as anotações e o comportamento do ObjectMapper, exigindo uma validação coordenada entre as aplicações.
  • O fim do suporte (EOL) não significa o fim da segurança: O ELS da TuxCare para o Jackson oferece patches contínuos para versões do Jackson sem suporte, enquanto você realiza a atualização no seu próprio ritmo.

O ELS para Jackson existe porque o Jackson Databind é uma das bibliotecas Java mais amplamente implantadas em produção e um dos riscos de fim de vida útil (EOL) mais consistentemente ignorados nas pilhas de aplicativos corporativos. O Jackson é o padrão de fato para o processamento de JSON na JVM. Ele lida com a serialização e a desserialização em APIs REST, corretores de mensagens, microsserviços e pipelines de dados em praticamente todos os aplicativos Java desenvolvidos na última década. Quando uma versão do Jackson chega ao fim de vida útil, todas as aplicações que dependem dela deixam de receber patches de segurança para a biblioteca que processa todas as cargas JSON com as quais trabalha.

A equipe da FasterXML mantém o Jackson sob um modelo de Suporte de Longo Prazo, mas as equipes que permanecem em ramificações antigas e encerradas ficam expostas a riscos, mesmo quando há versões de correção mais recentes disponíveis nas ramificações atuais. As organizações que utilizam o Jackson 2.17, 2.16, 2.15 ou qualquer ramificação anterior encerrada estão operando sem cobertura de segurança do desenvolvedor original, e o histórico de CVEs do Jackson Core e do Jackson Databind torna essa exposição concreta e mensurável.

Esta publicação explica como funciona, na prática, o ciclo de vida das versões do Jackson, o que o fim da vida útil (EOL) do Jackson Databind significa em termos reais de segurança e conformidade, e por que o ELS para o Jackson é o caminho mais direto para preencher essa lacuna enquanto você planeja sua atualização de acordo com seu próprio cronograma.

O que é o ciclo de vida de lançamento do Jackson?

O Jackson segue um modelo de suporte de longo prazo, semelhante à forma como o JDK lida com o controle de versões. Compreender esse modelo é essencial para saber exatamente quando sua versão do Jackson deixará de receber correções e se a versão que você está executando ainda está coberta pelo suporte.

Ramos LTS versus não LTS. Nem todas as versões secundárias do Jackson são versões LTS. Aproximadamente uma em cada três versões secundárias é designada como LTS no momento de seu lançamento inicial, com base no momento e na estabilidade da versão. Os ramos LTS permanecem abertos por um período mínimo de dois anos. Os ramos não LTS permanecem abertos apenas até o lançamento da próxima versão LTS.

O que significa “fechado”. Quando um ramo do Jackson é fechado, a equipe do FasterXML deixa de lançar atualizações para ele. Sem correções de segurança, sem correções de bugs: o ramo fica congelado. A wiki do projeto descreve explicitamente os ramos fechados: as organizações que utilizam uma versão fechada estão por conta própria.

O panorama atual do suporte. No início de 2026, os ramos abertos em manutenção ativa são:

  • 2.18 (LTS), lançada em 26 de setembro de 2024, aberta para backports e lançamentos de patches
  • 2.21 (LTS), lançada em 18 de janeiro de 2026, aberta para lançamentos de patches
  • 3.1 (LTS), lançada em 23 de fevereiro de 2026

Todas as outras ramificações foram encerradas. A ramificação Jackson 2.17 foi encerrada em agosto de 2025, quando a versão 2.20.0 foi lançada. A ramificação Jackson 2.19 foi encerrada em outubro de 2025. A ramificação Jackson 2.20 foi encerrada em janeiro de 2026, quando a versão 2.21.0 (LTS) foi lançada. A ramificação Jackson 2.16 foi encerrada em abril de 2025. O Jackson 2.15 foi encerrado em setembro de 2024. O Jackson 2.13 e o 2.14 foram encerrados em novembro de 2023. Qualquer aplicativo em execução nessas versões está rodando uma versão do Jackson com fim de vida útil (EOL).

Requisito de versão dos componentes principais. Os três componentes principais do Jackson – Jackson Annotations, Jackson Core e Jackson Databind – devem sempre ter a mesma versão secundária. Não é possível misturar, por exemplo, o Jackson Core 2.18.x com o Jackson Databind 2.17.x. Esse acoplamento estreito significa que um evento de fim de vida útil (EOL) do Jackson Databind é, simultaneamente, um evento de fim de vida útil do Jackson Core, e vice-versa.

Requisito mínimo de Java. O Jackson 2.13 foi a última versão da ramificação 2.x a oferecer suporte ao JDK 6 como base para o streaming do Jackson Core. O Jackson 2.14 e todas as versões posteriores da ramificação 2.x exigem, no mínimo, o Java 8.

 

JacksonBranch Status do LTS Status Fechado quando
2.21  LTS  Abrir  –
2.20  Não LTS  Fechado  Janeiro de 2026 (com a versão 2.21.0) 
2.19  Não LTS  Fechado  Janeiro de 2026 (com a versão 2.21.0) 
2.18  LTS  Abrir  –
2.17  Não LTS  Fechado  Agosto de 2025 (com a versão 2.20.0) 
2.16  Não LTS  Fechado  Abril de 2025 (com a versão 2.19.0) 
2.15  Não LTS  Fechado  Setembro de 2024 (com a versão 2.18.0) 
2.14  Não LTS  Fechado  Novembro de 2023 (com a versão 2.16.0) 
2.13  Não LTS  Fechado  Novembro de 2023 (com a versão 2.16.0) 

 

O que significa o fim da vida útil (EOL) do Jackson Databind?

Chega de patches de segurança

Quando um branch do Jackson é encerrado, a equipe do FasterXML deixa de lançar correções de segurança para ele. Toda vulnerabilidade divulgada após esse encerramento — seja na camada de análise, no pipeline de desserialização ou no tratamento de entradas não confiáveis pelo ObjectMapper — receberá um patch nos branches abertos atuais, enquanto sua versão permanecerá exposta.

Isso é importante porque o Jackson não é uma biblioteca utilitária passiva. Ele analisa ativamente cargas JSON não confiáveis que chegam de pontos de extremidade de rede, filas de mensagens, clientes REST e APIs externas. Cada chamada ao ObjectMapper.readValue() ou ao ObjectMapper.readTree() em dados recebidos é um caminho de execução por um analisador cujas correções de segurança deixaram de ser lançadas em um ramo fechado. Essa exposição ocorre em tempo real a cada solicitação.

Riscos de segurança e conformidade após o fim do suporte ao Jackson Databind

O panorama de conformidade é claro. O PCI DSS (Requisito 6.3.3) exige que vulnerabilidades críticas e de alta gravidade, com pontuação CVSS igual ou superior a 7,0, sejam corrigidas no prazo de um mês a partir do lançamento da correção para os sistemas abrangidos. A HIPAA, o FedRAMP e o SOC 2 contêm requisitos semelhantes. Para aplicativos que lidam com dados de pagamento, registros de saúde ou tráfego de API autenticado, a execução de uma versão do Jackson em fim de vida útil (EOL) que não pode ser corrigida cria uma lacuna de segurança e conformidade que os controles compensatórios só conseguem resolver parcialmente.

O Jackson está presente na camada de desserialização de aplicativos que lidam com alguns dos dados mais confidenciais em ambientes corporativos, como tokens de autenticação, cargas financeiras, registros de saúde e respostas de APIs de serviços internos. Os auditores consideram as bibliotecas de desserialização JSON sem patches como constatações significativas, pois o analisador é a primeira camada que processa dados não confiáveis provenientes de fontes externas.

Histórico de Jackson no CVE

O histórico de CVE de Jackson demonstra exatamente como funciona, na prática, a exposição do analisador após o fim do ciclo de vida (EOL).

CVE-2025-52999: Pontuação CVSS 4.0 de 8,7, gravidade alta (NVD). Divulgada em 25 de junho de 2025, essa vulnerabilidade afeta o Jackson Core em todas as versões anteriores à 2.15.0. Quando o Jackson Core analisa arquivos de entrada contendo estruturas JSON profundamente aninhadas – objetos ou matrizes aninhados com milhares de níveis –, o analisador cria um novo JsonReadContext na pilha de chamadas da JVM para cada nível de aninhamento. Nas versões anteriores à 2.15.0, não há limite para a profundidade desse aninhamento. Um invasor pode criar uma carga JSON composta por milhares de matrizes ou objetos aninhados, fazendo com que a JVM esgote sua pilha de chamadas e gere um StackOverflowError, causando a falha do aplicativo. O ataque pode ser explorado pela rede, não requer autenticação e não envolve interação do usuário. O vetor do NVD é CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N. A correção no Jackson Core 2.15.0 introduziu o StreamReadConstraints, uma profundidade máxima de aninhamento configurável, cujo valor padrão é 1.000. Como o Jackson Databind usa o Jackson Core para analisar todas as entradas JSON, todos os aplicativos que executavam o Jackson Databind em um ramo EOL anterior à versão 2.15.0 estavam expostos a essa condição de negação de serviço explorável remotamente, sem que houvesse um patch de fornecedor disponível para essa versão.

Para ambientes Java corporativos que executam o Spring Boot 2.7, que fixa toda a sua árvore de dependências do Jackson na linha 2.13.x: essa vulnerabilidade estava presente e sem correção em um branch que havia sido encerrado desde novembro de 2023. Não havia previsão de patch do desenvolvedor original para esse branch encerrado; o caminho padrão de suporte consistia em uma atualização mais ampla da estrutura ou em um acordo de suporte estendido.

O Problema da Superfície de Dependência

A árvore de dependências diretas do Jackson Databind é pequena por padrão. O arquivo README do projeto FasterXML afirma explicitamente que os componentes principais, as anotações, o streaming e o Databind não exigem dependências adicionais além do JDK básico. Na prática, o Jackson Databind depende diretamente de apenas dois pacotes: o Jackson Core (o analisador e gerador de streaming de baixo nível) e o Jackson Annotations (a camada de processamento de anotações). Ambos são pacotes do FasterXML, compartilham a mesma versão secundária e fazem parte do mesmo evento de fim de vida (EOL) quando um ramo do Jackson for encerrado.

Trata-se de uma árvore pequena, mas o CVE-2025-52999 demonstra que a exposição a vulnerabilidades (CVE) no Jackson Core é real e diretamente relevante. Quando um ramo do Jackson é encerrado, não é apenas o Jackson Databind que deixa de receber correções: o Jackson Core e o Jackson Annotations são encerrados simultaneamente. Um aplicativo que execute um ramo do Jackson que foi encerrado fica exposto a vulnerabilidades não corrigidas em todos os três componentes principais ao mesmo tempo. O ELS para Jackson da TuxCare abrange toda a superfície de dependências: Jackson Databind, Jackson Core e Jackson Annotations; assim, essa exposição é tratada de forma abrangente, não apenas no pacote de nível superior.

Opções para manter a segurança e a conformidade após o fim da vida útil (EOL) do Jackson Databind

Atualize para uma versão compatível do Jackson

A migração para o Jackson 2.18 ou 2.21 (os ramos LTS atuais) é o caminho correto a longo prazo. A equipe do FasterXML publica notas detalhadas de migração para cada versão secundária, e a comunidade do Jackson mantém uma forte compatibilidade com versões anteriores dentro de uma linha de versão principal.

A complexidade dessa migração depende do seu ambiente. Organizações que operam grandes conjuntos de aplicativos geralmente têm muitas bases de código vinculadas a uma versão secundária específica do Jackson, não por dependência direta, mas por meio do gerenciamento da estrutura. O Spring Boot, o Quarkus e outras estruturas Java gerenciam as versões do Jackson de forma transitiva, o que significa que uma atualização da versão secundária do Jackson geralmente requer também uma mudança na versão da estrutura. Atualizar o Jackson em um conjunto de aplicativos corporativos exige identificar todos os consumidores do Jackson em toda a base de código, validar o comportamento de serialização em todas as configurações do ObjectMapper e testar o aplicativo com cargas úteis realistas, especialmente quando serializadores, deserializadores ou módulos do Jackson personalizados estão em uso.

Migrar para uma biblioteca JSON alternativa

Algumas organizações utilizam o evento de fim de vida útil (EOL) do Jackson Databind para avaliar bibliotecas JSON alternativas, como Gson, Moshi, JSON-B ou outras. Essa é uma decisão arquitetônica viável a longo prazo para algumas equipes, mas exige a reescrita de toda a lógica de serialização, a substituição de todas as anotações @JsonProperty e relacionadas, a migração das configurações do ObjectMapper e a validação do comportamento em todos os contratos de API e modelos de dados.

Para a maioria das organizações que enfrentam uma lacuna imediata em termos de segurança e conformidade, a migração da biblioteca não é uma resposta a um prazo para a aplicação de patches.

O caminho recomendado: TuxCare ELS para Jackson

O ELS da TuxCare para o Jackson resolve diretamente o problema de segurança e conformidade, sem exigir uma atualização imediata da estrutura ou das dependências. A TuxCare fornece patches de segurança contínuos para versões do Jackson sem suporte, abrangendo o Jackson Databind, o Jackson Core e o Jackson Annotations, sem custo adicional, o que permite que seu conjunto de aplicativos mantenha uma postura de segurança defensável enquanto você planeja a atualização que realmente deseja realizar.

A TuxCare monitora o NVD, os alertas de segurança da FasterXML e os canais de lançamento do Jackson upstream em busca de vulnerabilidades que afetem o ecossistema do Jackson Core; em seguida, realiza o backport e fornece correções para versões em fim de vida (EOL) por meio de processos respaldados por SLA. Independentemente de você atualmente obter as atualizações do Jackson por meio do Maven, do Gradle ou de seus pipelines de compilação existentes, é possível mudar sua fonte de atualização para o repositório seguro da TuxCare com alterações mínimas em seu fluxo de trabalho atual. Não há interrupção em sua cadeia de ferramentas de compilação atual, na configuração de sua estrutura ou no código de aplicativo gerado.

Os riscos de apressar uma atualização do Jackson

Quando surge a pressão relacionada ao fim da vida útil (EOL) do Jackson por meio de constatações de auditorias de conformidade, alertas de scanners de vulnerabilidades ou escalamentos da equipe de segurança, o instinto é agir imediatamente. No entanto, o custo de reagir sem a preparação adequada é sempre maior do que as equipes prevêem. As organizações que implantam o ELS para o Jackson evitam totalmente essa pressão, pois sua postura de segurança é mantida enquanto a atualização é planejada adequadamente.

O que uma atualização de versão menor do Jackson realmente envolve

Uma atualização de versão secundária do Jackson não se resume a uma simples alteração de versão no arquivo POM. Ela envolve a validação do comportamento de desserialização. As versões secundárias do Jackson ocasionalmente alteram comportamentos padrão relacionados ao tratamento de valores nulos, regras de coerção e tratamento de propriedades desconhecidas, o que significa que as aplicações que dependem de um comportamento específico de desserialização devem ser validadas em relação à nova versão, utilizando cargas úteis realistas. Isso envolve a verificação de compatibilidade da estrutura para aplicativos que utilizam Spring Boot, Quarkus ou outras estruturas gerenciadas, que devem validar se a versão-alvo do Jackson é suportada pela versão de sua estrutura e se não surgem conflitos de dependências transitivas. Envolve verificações de compatibilidade de módulos personalizados para aplicativos que utilizam módulos do Jackson para Kotlin, Scala, Guava ou outras integrações, que devem verificar se esses módulos estão disponíveis e são compatíveis com a versão secundária-alvo do Jackson. E envolve a avaliação da sobrecarga de testes em todos os endpoints de API, consumidores de mensagens e pipelines de dados que utilizam o Jackson para serialização.

Em um ambiente corporativo em que dezenas ou centenas de serviços compartilham configurações comuns do Jackson, onde várias equipes podem ser responsáveis por diferentes partes do gráfico de dependências do Jackson e onde o controle de mudanças rege as implantações em produção, uma atualização do Jackson devido ao fim da vida útil (EOL) é um programa de trabalho coordenado, e não um ticket.

O que acontece quando a atualização é feita às pressas

Quando as equipes de desenvolvimento são forçadas a realizar uma atualização menor do Jackson devido a um prazo de conformidade, e não por estarem preparadas, o padrão é sempre o mesmo. Mudanças sutis no comportamento da desserialização vêm à tona em produção, em cargas de dados de casos extremos que não apareceram nos testes automatizados. Aplicativos que utilizavam configurações anteriormente mais flexíveis do ObjectMapper apresentam falhas quando a nova versão impõe regras de coerção mais rígidas. Módulos do Jackson para integrações de terceiros falham silenciosamente ou lançam exceções em tempo de execução quando as versões dos módulos não estão alinhadas com a nova versão secundária. A dívida técnica se acumula à medida que as equipes aplicam soluções alternativas do MapperFeature e sinalizadores de compatibilidade para cumprir o prazo, criando uma carga de manutenção que se agrava com o tempo. E os custos não planejados aumentam em horas de engenharia, em incidentes de produção e na sobrecarga de coordenação para executar uma atualização cujo escopo não foi devidamente definido antes de seu início.

As equipes que lidam bem com as transições de fim de vida útil (EOL) do Jackson são aquelas que as tratam como migrações planejadas, com inventário completo das aplicações, validação da compatibilidade das estruturas e uma postura de segurança estável mantida ao longo de todo o processo. O ELS para Jackson é o que torna essa abordagem planejada possível.

A solução fácil: TuxCare ELS para Jackson

A TuxCare vem dedicando mais de uma década ao aprimoramento da automação, da expertise e dos processos necessários para fornecer patches de segurança para softwares em fim de vida útil de maneira confiável e em grande escala. Com mais de 220.000 patches fornecidos em todo o seu portfólio de produtos suportados, a TuxCare desenvolveu um fluxo de trabalho de aplicação de patches que é rápido e seguro para o ambiente de produção.

O ELS para Jackson preenche a lacuna de segurança e conformidade criada pelo fim da vida útil (EOL) do Jackson Databind:

Patches de segurança rápidos, respaldados por SLA: A TuxCare monitora continuamente as divulgações de vulnerabilidades e fornece patches para CVEs de alto risco e críticos (CVSS 7.0+) de acordo com SLAs definidos, mantendo suas implantações do Jackson dentro dos prazos de aplicação de patches exigidos pelas normas PCI DSS, HIPAA, FedRAMP e outras estruturas de conformidade.

Cobertura completa da superfície de dependências: O ELS para Jackson abrange o Jackson Databind, o Jackson Core e o Jackson Annotations — o conjunto completo de pacotes principais do FasterXML que são descontinuados simultaneamente em um evento de EOL do Jackson — sem custo adicional. A exposição oculta ao EOL em sua pilha de processamento de JSON não se torna uma lacuna que você precise gerenciar manualmente.

Integração perfeita com seus fluxos de trabalho existentes: Quer você atualmente receba as atualizações do Jackson por meio do Maven ou do Gradle, é possível mudar sua fonte de atualização para o repositório seguro da TuxCare com alterações mínimas em seu fluxo de trabalho atual. Não há interrupção em sua cadeia de ferramentas de compilação atual nem nas configurações do ObjectMapper do seu aplicativo.

Pacotes assinados e à prova de adulteração: Cada patch fornecido pela TuxCare passa por testes exaustivos de integridade, funcionalidade e regressões antes de chegar ao seu repositório, e os pacotes são assinados criptograficamente para que você saiba exatamente o que está implantando.

Suporte especializado 24 horas por dia, 7 dias por semana: A equipe de segurança da TuxCare está disponível 24 horas por dia, 7 dias por semana, para triagem de vulnerabilidades, solicitações de patches e solução de problemas, para que você nunca precise lidar com um incidente de segurança relacionado ao fim da vida útil (EOL) do Jackson sem o apoio de especialistas.

Para saber quais CVEs do Jackson já foram corrigidos, consulte o rastreador de CVEs em tempo real da TuxCare. Para obter mais detalhes sobre o processo de aplicação de patches e os padrões de validação da TuxCare, consulte o white paper técnico.

Não deixe que o fim da vida útil do Jackson Databind coloque suas aplicações em risco

O fim da vida útil (EOL) do Jackson não significa que suas aplicações deixem de processar JSON. Mas significa que a cobertura de segurança da qual sua camada JSON dependia não existe mais, e que cada CVE divulgado no Jackson Core ou no Jackson Databind a partir desse momento afeta a biblioteca que lida com todas as cargas úteis que suas aplicações trocam com o mundo externo.

As equipes que lidam bem com o fim da vida útil (EOL) do Jackson planejam isso como uma linha de trabalho de segurança. Elas definem um processo de aplicação de patches, delimitam o escopo do inventário de aplicativos e estabelecem um cronograma de validação antes que um prazo de conformidade torne a questão urgente. É possível planejar uma atualização deliberada para a versão LTS atual do Jackson quando ela realmente se adequar à capacidade de suas equipes de aplicativos, aos requisitos de compatibilidade de sua estrutura e ao calendário de lançamentos da sua organização. Você pode definir o escopo da validação de desserialização e da implantação de forma adequada antes de se comprometer com um cronograma. Ou pode usar o ELS para Jackson da TuxCare para manter a cobertura de segurança e conformidade enquanto define você mesmo o cronograma de atualização.

O ELS para Jackson fornece à sua frota de aplicativos patches de segurança contínuos para as versões do Jackson que a FasterXML não mantém mais. Ele preserva a conformidade da qual dependem suas auditorias e libera suas equipes de engenharia para planejar a atualização de forma adequada.

Se o fim do ciclo de vida (EOL) do Jackson Databind está em sua agenda de segurança no momento, acesse o Suporte de Ciclo de Vida Ilimitado para o Jackson para saber mais sobre o suporte estendido para versões do Jackson que não recebem mais suporte.

Resumo
ELS para Jackson: O que significa o fim da vida útil (EOL) do Jackson Databind
Nome do artigo
ELS para Jackson: O que significa o fim da vida útil (EOL) do Jackson Databind
Descrição
O fim da vida útil (EOL) do Jackson amplia sua superfície de risco: o Jackson Databind depende do Jackson Core, que possui um histórico comprovado de vulnerabilidades CVE. Leia mais neste artigo
Autor
Nome da editora
TuxCare
Logotipo da editora

Junte-se a mais de 4.500 profissionais de Linux e código aberto!

2 vezes por mês. Sem spam.

Índice
Obtenha as respostas sobre segurança de código aberto de que você precisa

Junte-se a mais de 4.500 profissionais de Linux e código aberto!

2 vezes por mês. Sem spam.