Pillow 13 corrige falha crítica que expõe servidores a ataques
Atualização 13.0.0 da popular biblioteca Pillow corrige falha crítica em EPS via Ghostscript e vulnerabilidades graves em JPEG e TIFF. Especialistas pedem atualização imediata.

Segurança
Atualização essencial resolve vulnerabilidades graves em formatos de imagem, garantindo proteção contra ataques em servidores.
Leia também: Falha no WPS da Broadcom expõe milhões de roteadores hoje
A biblioteca Pillow, usada em larga escala para manipulação de imagens em Python, corrige na versão 13.0.0 uma vulnerabilidade crítica (CVE-2026-112900) que permite a execução de comandos no sistema operacional ao abrir arquivos EPS com nomes maliciosos em servidores que usam Ghostscript. A atualização também traz correções importantes para falhas em JPEG e TIFF, com risco de travamentos, estouro de memória e possível execução de código.
Como a falha no EPS funciona e quem é afetado
O problema central está na forma como o Pillow processa arquivos EPS: a biblioteca repassa diretamente o nome do arquivo ao Ghostscript, programa externo responsável por renderizar esse tipo de imagem, sem fazer validação prévia. Como o Ghostscript pode interpretar o nome como instruções, um atacante que controle esse nome de arquivo consegue apontar para outro arquivo com comandos maliciosos e disparar sua execução.
O próprio aviso da falha destaca que “The flaw is triggered by the filename, not by anything in the PostScript document”, ou seja, não é o conteúdo do EPS que ativa o ataque, mas o nome do arquivo. Isso torna especialmente sensíveis endpoints de upload que preservam ou montam o nome do arquivo a partir de dados fornecidos pelo usuário, cenário comum em aplicações web.
A vulnerabilidade afeta instalações que usam Pillow em conjunto com o Ghostscript (programa gs instalado no sistema) e atinge versões da biblioteca da 2.6.0 até a 12.3.0. O registro do CVE atribui pontuação de 9,2 em 10 ao problema. Os mantenedores classificam o risco entre moderado e crítico, levando em conta que o invasor precisa ter controle do nome do arquivo para explorar a falha.
Impacto no ecossistema Python
O alcance do problema é amplo porque o Pillow é, hoje, a principal biblioteca de imagens em Python. Ela aparece em formulários de upload de sites, geração de avatares e miniaturas, pipelines de documentos e PDF e em boa parte dos projetos de machine learning que trabalham com imagens. Estimativas apontam cerca de 436 milhões de downloads mensais da biblioteca, o que evidencia o potencial de exposição.
Em um cenário típico, um atacante envia para o servidor um arquivo EPS aparentemente inofensivo, mas com um nome cuidadosamente construído para explorar o comportamento do Ghostscript. Se a aplicação salva esse arquivo com o nome fornecido e usa o Pillow para processá-lo, o comando pode ser executado no sistema operacional, abrindo caminho para invasão, roubo de dados ou tomada de controle remoto da máquina.
Quais outras falhas o Pillow 13.0.0 corrige
Além da vulnerabilidade crítica em EPS, o Pillow 13.0.0 corrige bugs graves ligados a JPEG (incluindo o formato FlashPix/FPX) e TIFF, que envolvem estouro de buffer, reutilização indevida de dados de imagem e travamentos. Nas notas de lançamento, os mantenedores descrevem: “Pillow 13.0.0 é uma grande atualização de segurança, com correções em quatro níveis de severidade, incluindo duas falhas críticas.”
Entre os problemas corrigidos estão duas falhas de overflow na decodificação de JPEG. Uma delas, ligada ao formato FlashPix (FPX), foi demonstrada como capaz de executar comandos a partir de uma única chamada ao método Image.open() sobre um arquivo especialmente construído, desde que o pacote opcional olefile esteja instalado. Como o Pillow reconhece esses arquivos pelo conteúdo, e não pela extensão, um servidor que abra uploads não confiáveis pode ser atacado sem interação adicional do usuário.
Outra vulnerabilidade em JPEG, associada a miniaturas de JPEG lossless, causa estouro de buffer e travamentos ao gerar thumbnails de imagens manipuladas para o ataque. O aviso dessa falha foi registrado como “Found by Anthropic using Claude to study the security of open-source software, validated manually by Ada Logics.”, fruto de uma iniciativa específica para analisar a segurança de projetos open-source.
Há ainda uma falha antiga no tratamento de imagens TIFF comprimidas quando salvas diretamente na memória, em vez de em arquivo em disco. O bug pode levar a travamentos e, em combinação com outro problema de vazamento de memória, tornar-se um caminho para execução de código. Essa condição é típica de serviços que recebem uma imagem, re-encodeiam e devolvem o resultado ao usuário, sem gravar nada em disco.
Entenda o contexto
As vulnerabilidades foram destacadas em relatório da empresa OX Security, que chamou atenção para a gravidade dos cenários de ataque envolvendo uploads de imagens em aplicações web e pipelines automatizados. Em paralelo, os mantenedores do Pillow lançaram rapidamente a versão 13.0.0 com o pacote de correções, classificando duas das falhas no nível mais alto de severidade adotado pelo projeto.
Os registros de CVE atribuídos pela plataforma de segurança que cataloga essas falhas dão pontuações críticas (9,2/10) aos problemas em EPS, TIFF e miniaturas de JPEG, embora ressaltem que a exploração depende de condições específicas, como a presença do Ghostscript, pacotes opcionais ativados e o controle de nomes de arquivos pelo atacante. Até o momento, não há registro de ataques em larga escala explorando essas brechas, mas já existe prova de conceito pública para parte delas.
O que desenvolvedores e empresas precisam fazer agora
A principal recomendação de segurança é atualizar o Pillow imediatamente para a versão 13.0.0 e reconstruir contêineres, imagens base e pacotes que ainda tragam versões antigas embarcadas. A nova versão abandona o suporte ao Python 3.10, passando a exigir Python 3.11 ou superior, o que pode acelerar migrações para ambientes mais recentes também em outros componentes.
Enquanto a atualização não é possível, as orientações incluem validar e sanitizar nomes de arquivos recebidos de usuários, evitar que o nome salvo em disco seja construído diretamente a partir da entrada, restringir o ambiente em que o Ghostscript é executado e revisar a forma como uploads são processados. Em contextos corporativos, a expectativa é de que equipes de segurança façam auditorias específicas em serviços que processam EPS, JPEG e TIFF com Pillow, mapeando onde há Ghostscript instalado e onde bibliotecas opcionais como olefile estão ativas.
Segundo o relatório de segurança, “Pillow 13.0.0 é uma grande atualização de segurança” não apenas pelo volume de correções, mas porque reforça a necessidade de tratar processamento de arquivos externos — sobretudo imagens — como superfície de ataque crítica. A expectativa é que outras bibliotecas de imagem e ferramentas correlatas revisem seus códigos em busca de falhas semelhantes, fortalecendo a segurança do ecossistema Python como um todo.


