Uma explicação da falha de confusão de tipos que leva à execução de código arbitrário e que o PostgreSQL corrigiu em sua atualização programada de novembro de 2026. Cobre o que acontece, quem é afetado e como responder, do ponto de vista do defensor e sem passos de ataque.
- CVE
- CVE-2026-6460 (confusão de tipos no PostgreSQL após ALTER ... SET DATA TYPE executa código arbitrário)
- Gravidade
- CVSS v3.1 8.8 (High; vetor AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H; atribuído pelo PostgreSQL)
- Tipo
- Confusão de tipos (CWE-843). Executa código arbitrário como o usuário do SO que executa o banco de dados
- Condição
- É necessária autenticação. Quem cria objetos (uma conta com poucos privilégios)
- Afetado
- PostgreSQL 14 a 18 (anteriores às versões corrigidas abaixo)
- Correção
- 18.7 / 17.12 / 16.16 / 15.20 / 14.25 (publicadas em 12 de novembro de 2026)
- Mesma atualização
- 52 vulnerabilidades corrigidas no total. A 14.25 é a última atualização do PostgreSQL 14
- Exploração
- Nenhuma relatada. Não consta da edição de 10 de novembro do CISA KEV
- Medida alternativa
- Nenhuma listada
O PostgreSQL 14 não receberá mais correções
O anúncio do PostgreSQL diz que a 14.25 é a última versão do PostgreSQL 14, que deixará de receber correções de segurança e de erros. Se você usa a 14, aplique esta atualização e planeje a migração para uma versão com suporte.
Que tipo de vulnerabilidade é
O projeto descreve uma confusão de tipos (CWE-843) que permite a quem cria objetos executar código arbitrário como o usuário do sistema operacional que executa o banco de dados, principalmente por meio de ALTER ... SET DATA TYPE. Diz também que existem outras vias por comandos de definição de dados. A causa é um acompanhamento inadequado dos valores tipados: os valores não identificavam o próprio tipo, então valores obsoletos podiam aparecer em entradas do dicionário de dados, variáveis de PL/pgSQL e outros lugares.
- A condição é que a conta possa entrar no banco de dados e criar objetos. Em termos de CVSS, são poucos privilégios (PR:L) e nenhuma interação do usuário (UI:N).
- Este site não descreve passos de exploração nem quais operações são perigosas.
- A correção está no núcleo do PostgreSQL. A página oficial não diz se são necessárias extensões ou configurações não padrão.
- A avaliação da CISA (SSVC) no registro da CVE.org é exploração: nenhuma, automatizável: não, impacto técnico: total.
Alcance afetado
| Item | Detalhe |
|---|---|
| Produto | PostgreSQL (núcleo) |
| Versões afetadas | Anteriores à 18.7, 17.12, 16.16, 15.20 e 14.25 |
| Correção (18) | 18.7 |
| Correção (17) | 17.12 |
| Correção (16) | 16.16 |
| Correção (15) | 15.20 |
| Correção (14) | 14.25 (a última atualização da 14) |
| Medidas alternativas / mitigações | Nenhuma listada |
- Não é preciso dump e reload nem pg_upgrade. O anúncio do PostgreSQL diz que basta parar o servidor e atualizar os binários.
- A versão 13 e as anteriores já estão fora de suporte. A página oficial lista da 14 à 18 para este CVE.
Outras vulnerabilidades da mesma atualização
A versão de 12 de novembro de 2026 (18.7, 17.12, 16.16, 15.20, 14.25) corrige 52 vulnerabilidades de segurança e mais de 140 erros. Este artigo se concentra no CVE-2026-6460.
- Para a lista das 52 e a gravidade e as versões afetadas de cada CVE, veja a página de informações de segurança do PostgreSQL.
- A lista inclui problemas de diferentes tipos: execução de código arbitrário, divulgação de memória do servidor, injeção de SQL e contorno de verificações de privilégio. Inclui também correções em ferramentas cliente (pg_dump, pg_restore, reindexdb e outras).
- Algumas correções precisam de passos adicionais após a atualização (reconstruir índices GIN se houver suspeita de corrupção e os índices pg_trgm, fazer um novo backup completo se você usa backups incrementais, verificar as restrições de tabelas particionadas). Siga a seção «Updating» do anúncio da versão.
Como verificar se você é afetado
Verifique a versão do PostgreSQL
Execute SELECT version(); para ver a versão do servidor. São afetadas a 18 anterior à 18.7, a 17 anterior à 17.12, a 16 anterior à 16.16, a 15 anterior à 15.20 ou a 14 anterior à 14.25.
Encontre todos os lugares onde roda
Liste os servidores que você opera, os contêineres, o PostgreSQL embutido em aplicações e os ambientes de desenvolvimento e teste. Para saber como manter uma lista, veja a lista de verificação do inventário de ativos.
Verifique quais contas podem criar objetos
Encontre as funções que podem entrar no banco de dados e criar ou alterar tabelas e outros objetos. Verifique se as contas que suas aplicações usam têm mais privilégios do que o necessário.
Em serviços gerenciados, leia o anúncio do provedor
Se você usa RDS, Cloud SQL ou similares, confira a versão da sua instância e a situação do provedor no anúncio do provedor.
O que fazer hoje
Atualize a versão menor para a versão corrigida (prioridade)
Passe para a versão corrigida da sua linha (18.7, 17.12, 16.16, 15.20 ou 14.25) ou posterior. Antes de atualizar, confirme que existem backups e que podem ser restaurados (fundamentos de backup). Com réplicas, defina antes o procedimento e a ordem.
Revise os passos posteriores à atualização
Na seção «Updating» do anúncio da versão, confira quais se aplicam a você: reconstruir índices GIN se houver suspeita de corrupção, reconstruir índices GiST do pg_trgm e um novo backup completo se você usa backups incrementais.
Restrinja os privilégios até atualizar
As páginas do PostgreSQL não listam medida alternativa. Como acréscimo próprio deste site, até atualizar, limite ao mínimo as contas que podem criar objetos e não dê às contas que suas aplicações usam direitos de criação de que não precisam. Não é uma medida citada no boletim e não substitui a atualização.
Confirme as atualizações dos serviços gerenciados
Confira o anúncio do provedor para ver as versões compatíveis e o cronograma de atualizações. Verifique também se as atualizações menores automáticas estão ativadas e quando é a janela de manutenção.
Se você usa o PostgreSQL 14, planeje uma migração
Depois de atualizar para a 14.25, planeje a passagem para uma versão com suporte. Defina um prazo e um responsável.
Status da exploração
- As páginas do PostgreSQL não mencionam exploração.
- A avaliação da CISA (SSVC) no registro da CVE.org é exploração: nenhuma, automatizável: não, impacto técnico: total (datada de 12 de novembro de 2026).
- Não consta da edição de 10 de novembro do catálogo KEV da CISA.
- Não foi possível confirmar informações públicas sobre a escala, as técnicas ou os atores de quaisquer ataques.
- Vários pesquisadores e organizações relataram o problema, e a página oficial traz os agradecimentos.
Fontes
- PostgreSQL — CVE-2026-6460 (descrição, versões afetadas e corrigidas, CVSS 8.8, 12 de novembro de 2026)
- PostgreSQL — PostgreSQL 18.7, 17.12, 16.16, 15.20, 14.25, and 19 RC 2 Released! (52 correções, fim da vida útil do PostgreSQL 14, passos posteriores à atualização)
- PostgreSQL — Security Information (a lista das 52)
- CVE.org — CVE-2026-6460 (publicado em 12 de novembro de 2026; CWE-843, avaliação SSVC da CISA)
- CISA KEV — Known Exploited Vulnerabilities Catalog (não consta da edição de 10 de novembro do catálogo)
Limitar os privilégios de criação de objetos é listado aqui por este site como defesa geral; não é uma medida alternativa indicada pelo PostgreSQL. Última verificação: 13 de novembro de 2026.
Leia a seguir
- Prática: O guia de correção de vulnerabilidades / Lista de verificação do inventário de ativos
- Preparação: Fundamentos de backup
- Decidir: Priorizar com CVSS, EPSS e KEV
- Termos: O que é injeção de SQL / O que é CVSS?