Nos últimos anos, a segurança digital tem sido um dos focos mais importantes para desenvolvedores e administradores de banco de dados. Em um movimento há muito esperado, o PostgreSQL finalmente anunciou a descontinuação do suporte para senhas criptografadas com MD5. Essa decisão chega como parte de um esforço contínuo para melhorar a segurança do popular banco de dados de código aberto.
Por que o MD5 está sendo descontinuado?
O MD5, amplamente usado como um algoritmo de hash criptográfico no passado, há muito é considerado obsoleto. Suas vulnerabilidades incluem:
- Ataques de força bruta: A velocidade do MD5 permite que ele seja facilmente quebrado por hardware moderno.
- Pass-the-hash attacks: Em senhas MD5 no PostgreSQL, um invasor que obtenha o nome de usuário e o hash é capaz de autenticar-se sem precisar da senha original.
Desde a introdução do SCRAM-SHA-256 no PostgreSQL 10, os usuários têm à disposição um método significativamente mais seguro para armazenamento de senhas. Este é agora o padrão para o parâmetro password_encryption
desde o PostgreSQL 14.
O plano de descontinuação gradual
Para garantir uma transição suave, o PostgreSQL implementou um cronograma de descontinuação em quatro etapas, que culminará em 2028:
- PostgreSQL 18: O suporte ao MD5 permanece ativo, mas é declarado obsoleto. Avisos de descontinuação serão emitidos ao criar ou alterar senhas MD5, e a documentação refletirá claramente sua descontinuação iminente.
- PostgreSQL 19: Ainda será possível autenticar e atualizar sistemas que usam senhas MD5, mas a criação de novas senhas nesse formato será desativada.
- PostgreSQL 20: Autenticação com senhas MD5 será completamente desativada. Usuários precisarão migrar para o SCRAM-SHA-256 ou outro formato seguro antes da atualização.
- PostgreSQL 21: Todo suporte a senhas MD5 será removido. Atualizações a partir de versões anteriores que ainda utilizem MD5 não serão permitidas.
Como se preparar para a transição
Para administradores de sistemas e desenvolvedores que ainda utilizam MD5, a adoção antecipada do SCRAM-SHA-256 é essencial. Aqui estão algumas etapas práticas para facilitar a transição:
- Auditoria de senhas existentes:
- Verifique se há contas que ainda utilizam MD5.
- Identifique usuários e aplicações que dependem dessas senhas.
- Configuração do
password_encryption
:
- Altere o parâmetro
password_encryption
parascram-sha-256
no arquivo de configuração do PostgreSQL. - Garanta que todas as novas senhas sejam armazenadas no formato mais seguro.
- Atualização de senhas antigas:
- Use comandos como
ALTER ROLE
para redefinir senhas existentes para o formato SCRAM-SHA-256. - Reforce a necessidade de senhas fortes e únicas.
- Testes de compatibilidade:
- Certifique-se de que aplicações que interagem com o banco de dados sejam compatíveis com SCRAM-SHA-256.
O impacto na comunidade
A decisão de descontinuar o MD5 foi amplamente apoiada pela comunidade PostgreSQL. Embora possa trazer desafios para organizações que ainda dependem do MD5, a transição para SCRAM-SHA-256 representa um passo significativo para melhorar a segurança.
Conclusão
Com a evolução constante das ameaças cibernéticas, migrar para métodos mais seguros é essencial. A descontinuação do MD5 no PostgreSQL é uma oportunidade para reforçar a segurança e preparar sistemas para o futuro. Aproveite esse momento para revisar práticas de segurança e garantir que sua infraestrutura esteja protegida contra ameaças modernas.