Python 3.10 chega ao fim da vida útil e cinco versões corrigem 8 CVEs
O Python 3.10.22 é o último lançamento da linha 3.10: o branch chegou ao fim da vida útil em 1º de outubro de 2026, enquanto 3.11 a 3.14 recebiam correções para até oito CVEs.
4 min de leitura

Em números
- CVEs fixed across the five releases
- 8
- of them in the tarfile module
- 3
- end of support for Python 3.11
- Oct 2027
- end of support for Python 3.12
- Oct 2028
O Python 3.10 chegou ao fim da vida útil em 1º de outubro de 2026, cinco anos depois de seu lançamento. Sua última atualização, o Python 3.10.22, saiu junto com 3.11.17, 3.12.15, 3.13.16 e 3.14.8. Juntas, elas corrigem oito falhas de segurança. Quem ainda usa o 3.10 não recebe mais nenhuma correção a partir de agora, inclusive para bugs de segurança.
O mesmo lote passa o Python 3.13 para apenas correções de segurança. O Python 3.14 é o branch mais recente do lote.
O que o fim da vida útil significa para o 3.10
"Fim da vida útil" significa que a equipe principal do Python deixa de manter uma versão. Nenhum lançamento novo sai para ela, mesmo quando uma nova brecha de segurança é encontrada. O anúncio do lançamento no Python Insider marca o momento sem rodeios: "Este é o ringdown do Python 3.10. Um último lançamento antes de desligarmos a máquina de lançamentos."
Pablo Galindo Salgado gerenciou as linhas de lançamento 3.10 e 3.11, segundo o Linux Compatible. A despedida lembra que o Python 3.10 começou "com uma viagem ao interior de um buraco negro de Schwarzschild", e termina com buracos negros também. Thomas Wouters e Hugo van Kemenade, os outros gerentes de lançamento, também assinaram o anúncio.
Veja como fica cada branch com suporte, segundo o anúncio:
| Versão | Este lançamento | Status | Fim do suporte |
|---|---|---|---|
| 3.10 | 3.10.22 | Fim da vida útil | 1º de outubro de 2026 |
| 3.11 | 3.11.17 | Apenas correções de segurança | Outubro de 2027 |
| 3.12 | 3.12.15 | Apenas correções de segurança | Outubro de 2028 |
| 3.13 | 3.13.16 | Agora apenas correções de segurança | Não informado neste lançamento |
| 3.14 | 3.14.8 | Branch mais recente | Não informado neste lançamento |
O anúncio diz que o 3.13.16 "é o último lançamento de manutenção completo do 3.13; os futuros lançamentos do 3.13 trarão apenas correções de segurança."
As oito correções de segurança
Uma CVE é um número de identificação público para uma falha de segurança conhecida. O anúncio lista oito. Todas estão em todos os lançamentos, exceto a CVE-2026-87910, que não se aplica ao 3.14.
| CVE | Módulo | O que a correção faz |
|---|---|---|
| CVE-2026-19553 | ssl | SSLContext.wrap_bio() agora verifica seus argumentos server_side, server_hostname e session |
| CVE-2026-82049 | tarfile | Fecha uma brecha no filtro de extração com hard links para links simbólicos que podia expor arquivos fora da pasta de destino |
| CVE-2026-15310 | zipfile | Limita quantos dados bzip2 e LZMA são descompactados por leitura, evitando uso ilimitado de memória |
| CVE-2026-19672 | tarfile | Impede que os filtros de extração criem pastas fora do destino |
| CVE-2026-19445 | ssl | Corrige um travamento quando um callback SNI troca de contexto |
| CVE-2026-17084 | stringprep, IDNA | Limita ambos às regras de caracteres Unicode da RFC 3454 |
| CVE-2026-15806 | urllib.request | Separa as senhas do HTTPPasswordMgr por esquema de URL, para que credenciais HTTPS não sejam usadas indevidamente |
| CVE-2026-87910 | tarfile | Aplica os filtros de extração quando um link recorre à extração de um membro do arquivo |
Três das oito estão no tarfile, o módulo da biblioteca padrão que descompacta arquivos .tar. Seus filtros de extração são as verificações de segurança que impedem um arquivo compactado de gravar arquivos fora da pasta em que você o descompacta. As três correções fecham brechas nessas verificações.
Instaladores e OpenSSL
Só dois dos cinco lançamentos vêm com instaladores prontos. Segundo o anúncio no Python Discourse, 3.10.22, 3.11.17 e 3.12.15 saem apenas como código-fonte, sem instaladores para Windows ou macOS. O Python 3.13.16 e o 3.14.8 incluem instaladores.
Esses dois também atualizam o OpenSSL incluído, a biblioteca que o Python usa para conexões criptografadas, para a versão 3.5.9. Isso vale para as builds de Windows, macOS e Android, e o 3.14.8 também cobre o iOS.
O que isso significa para desenvolvedores
Saia do Python 3.10 agora. Verifique cada lugar em que uma versão está fixada: imagens base do Docker, matrizes de teste de CI, arquivos pyproject.toml e imagens de servidor. Daqui em diante, nenhuma imagem 3.10 vai receber outra correção de segurança.
Escolha o destino pensando nas datas de suporte. Migrar para o 3.11 garante só um ano, até outubro de 2027. Migrar para o 3.12 garante dois. Se você vai fazer o trabalho de qualquer jeito, o 3.13 ou o 3.14 dão o maior fôlego.
Aplique as correções primeiro se você descompacta arquivos que não criou. Serviços que aceitam arquivos .tar ou .zip enviados por usuários são afetados pelas correções do tarfile e do zipfile. Atualize esses primeiro e mantenha os filtros de extração ativados no seu próprio código.
Verifique o urllib se você envia senhas com ele. A correção do HTTPPasswordMgr impede que credenciais destinadas ao HTTPS sejam reutilizadas em outro esquema. Código que define senhas de autenticação básica pelo urllib.request deve migrar para os lançamentos corrigidos.
Planeje builds a partir do código-fonte nos branches mais antigos. No Windows e no macOS, as correções do 3.11 e do 3.12 chegam sem instaladores. Obtenha-as pela sua distribuição Linux, por uma imagem de contêiner ou por uma ferramenta que compile o Python a partir do código-fonte.
Fontes
Artigos relacionados

XSS nos logs de build do SourceHut permitia sequestrar contas
Um log de build manipulado podia executar script no navegador de um usuário do SourceHut. O ansi2html 1.9.4 corrige a falha, CVE-2026-92973, que afetava as versões 1.7.0 a 1.9.3.

Rejetto HFS CVE-2026-61500 é explorada um dia após a publicação de sua análise
HFS 3.0.0 a 3.2.0 assina logins com Math.random(), uma falha que o Mythos da Anthropic encontrou. Os ataques começaram em 3 de outubro, um dia após a análise. A 3.2.1 corrige o problema.

Versão final do Python 3.15.0 passa para 9 de outubro após rc3 surpresa
O Python 3.15.0rc3 saiu em 2 de outubro para corrigir bugs de última hora nos lazy imports, o que adia em uma semana a versão final do Python 3.15.0, agora para 9 de outubro de 2026.