Vulnerabilidade Crítica CVE-2024-XXXX na biblioteca Go net/http: ameaça para milhões de servidores

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Vulnerabilidade Crítica na popular biblioteca Go (Golang) net/http



A comunidade de desenvolvedores Go (Golang) está preocupada com a descoberta de uma vulnerabilidade crítica na biblioteca padrão net/http. Esta biblioteca é a base para a construção de servidores web, clientes HTTP e microsserviços em Go, o que significa que o problema afeta milhões de aplicações em todo o mundo.



A vulnerabilidade, que recebeu o identificador CVE-2024-XXXX, foi descoberta por pesquisadores de segurança e classificada como crítica com uma pontuação de 9,8 em 10 na escala CVSS. O problema está relacionado ao processamento incorreto de fluxos HTTP/2, o que pode levar a um vazamento de memória (memory leak) e, em última instância, à negação de serviço (DoS).



Como funciona a vulnerabilidade?



A essência do problema é que, ao processar certos tipos de requisições HTTP/2, a biblioteca net/http não libera a memória alocada para seus buffers internos. Um atacante pode enviar uma série de requisições especialmente criadas, causando um crescimento descontrolado do consumo de memória no servidor. Quando a memória se esgota, o servidor trava ou fica indisponível para usuários legítimos.



É importante notar que a exploração da vulnerabilidade não requer autenticação — o ataque pode ser realizado remotamente.



Quais versões estão sob ameaça?



O problema afeta todas as versões do Go, desde a 1.20 até a 1.22.2 (inclusive).



  • Go 1.20.x — todas as subversões são vulneráveis.
  • Go 1.21.x — todas as subversões são vulneráveis.
  • Go 1.22.0 — 1.22.2 — são vulneráveis.
  • Go 1.22.3 e superiores — foram corrigidas.


O que os desenvolvedores devem fazer?



A equipe do Go já lançou patches nas versões 1.22.3 e 1.21.10. Recomenda-se fortemente aos desenvolvedores:



  • Atualizar imediatamente o compilador Go para a versão estável mais recente (1.22.3 ou 1.21.10+).
  • Recompilar todos os arquivos binários de suas aplicações com a nova versão do compilador.
  • Verificar a configuração dos pipelines de CI/CD — certifique-se de que a compilação está usando a versão atualizada do Go.
  • Testar as aplicações após a atualização para verificar possíveis regressões.


Impacto no ecossistema



Esta vulnerabilidade é especialmente perigosa para microsserviços de alta carga, gateways de API e servidores proxy escritos em Go. O ataque pode ser realizado com recursos mínimos por parte do atacante, tornando-o atraente para ataques em massa a infraestruturas em nuvem.



Recomendamos também desabilitar temporariamente o suporte a HTTP/2 em servidores críticos, se a atualização não puder ser feita imediatamente. Isso pode ser feito através da configuração Server.TLSNextProto.



Acompanhe as atualizações no site oficial do Go e no repositório GitHub. A segurança dos seus projetos está em suas mãos!

Recommended Libraries