top of page

Falha de 29 anos no Squid podia vazar dados sensíveis de usuários


Uma vulnerabilidade de vazamento de memória no Squid, popular servidor proxy de cache open source, permaneceu sem detecção por 29 anos e poderia expor requisições HTTP em texto claro, incluindo credenciais, tokens de sessão e outros dados sensíveis. A falha foi apelidada de Squidbleed e comparada ao Heartbleed por permitir a leitura indevida de dados da memória.


O problema foi identificado por pesquisadores de segurança com apoio do Mythos Preview, da Anthropic, e reportado aos mantenedores do projeto Squid, que corrigiram o código no início de junho. A vulnerabilidade é rastreada como CVE-2026-47729 e foi corrigida no Squid v7.6, lançado em 8 de junho.


O Squid é amplamente usado por grandes empresas, escolas, provedores de internet e outras organizações para armazenar em cache, filtrar e monitorar tráfego de rede. O pesquisador Lam Jun Rong, da Calif.io, afirmou ter se deparado com o proxy open source enquanto tentava se conectar à internet durante um voo. Segundo ele, a versão do Squid usada naquele avião tinha quase dez anos e estava vulnerável ao problema que viria a ser documentado.


Rong relatou a falha aos mantenedores do Squid em abril. Após a publicação inicial do artigo original, também foi informado que outro pesquisador havia encontrado o bug antes: Pavel Kohout, da Aisle, identificou e reportou a vulnerabilidade em 4 de março, antes do relatório inicial da Calif.io.


A Calif.io já havia chamado atenção anteriormente por pesquisas como a HTTP/2 Bomb, descoberta com apoio do agente Codex da OpenAI. A empresa também colaborou com a OpenAI na iniciativa Patch the Planet, anunciada recentemente, voltada à identificação e correção de vulnerabilidades em larga escala.


De acordo com Rong, a Squidbleed pode vazar memória interna de todas as versões do Squid em configuração padrão, desde que duas condições estejam presentes. A primeira é que o Squid consiga ler e inspecionar o tráfego de rede, o que significa que ele precisa estar processando HTTP em texto claro ou operando em cenários nos quais termina conexões TLS.


A segunda condição é que o proxy tenha permissão para alcançar um servidor FTP controlado por um atacante pela porta TCP 21. O FTP, ou File Transfer Protocol, é um protocolo antigo para transferência de arquivos entre sistemas. Embora tenha perdido espaço e seja considerado inadequado para muitos usos modernos, o Squid ainda oferece suporte a esse tipo de tráfego, e é justamente nesse ponto que a vulnerabilidade aparece.


O bug está no parser de listagem de diretórios FTP do Squid. A falha foi introduzida no código open source em um commit de 1997, identificado como bb97dd37a, criado para oferecer suporte a servidores NetWare antigos.


O NetWare foi um sistema operacional de rede popular nas décadas de 1980 e 1990, usado principalmente para serviços de arquivos e impressão em redes locais antes da ampla dominância de servidores Windows e Linux. Servidores FTP baseados em NetWare adicionavam espaços extras entre o timestamp de modificação e o nome do arquivo, diferentemente da maioria dos servidores FTP, que usavam apenas um espaço.


O commit de 1997 tentou resolver essa diferença instruindo o código a ignorar os espaços adicionais. Para isso, usava um loop baseado em strchr para avançar o ponteiro enquanto encontrasse caracteres de espaço. O problema surge quando um servidor FTP controlado pelo atacante não fornece um nome de arquivo após o timestamp de modificação.


Nesse cenário, o ponteiro copyFrom passa a apontar para o caractere NUL que marca o fim da string. Como a função strchr também trata esse terminador como parte da string pesquisada, ela retorna um ponteiro em vez de NULL. O loop, então, não para no momento correto e avança além do fim do buffer.


Como consequência, a função xstrdup copia o conteúdo que aparece depois daquela região de memória e o devolve ao atacante como se fosse um nome de arquivo. O resultado é um heap overread, uma leitura indevida de memória heap, que pode revelar dados processados pelo proxy.


O impacto é relevante porque o Squid pode estar manipulando requisições HTTP em texto claro. Essas requisições frequentemente incluem informações sensíveis, como senhas, chaves de API, tokens de sessão, cookies e outros dados enviados por aplicações ou usuários. Rong demonstrou a exploração em uma prova de conceito.


A correção, segundo o pesquisador, é simples: verificar a presença do terminador nulo antes de chamar strchr. Apesar da simplicidade do patch, a falha permaneceu escondida desde a década de 1990, em uma área de compatibilidade com tecnologias legadas que ainda podia afetar implantações modernas.


O caso mostra como trechos antigos de código, mantidos por compatibilidade com sistemas praticamente abandonados, podem permanecer ativos em softwares amplamente usados. Mesmo recursos pouco utilizados, como suporte a FTP em proxies modernos, podem manter superfícies de ataque relevantes quando expostos a tráfego controlado por invasores.


A recomendação principal para administradores é atualizar o Squid para a versão v7.6 ou posterior, que inclui a correção para a CVE-2026-47729. Organizações que usam versões antigas devem revisar seus pacotes e confirmar se o patch foi aplicado pela distribuição ou pelo fornecedor responsável.


Além da atualização, Rong recomenda desabilitar o suporte a FTP no Squid, exceto quando houver uma necessidade específica e incomum. Navegadores baseados em Chromium deixaram de oferecer suporte a FTP há anos, e, para a maioria das organizações, o volume de tráfego FTP legítimo tende a ser próximo de zero.


Desativar esse recurso remove uma superfície de ataque inteira sem grande impacto operacional na maior parte dos ambientes. Em redes corporativas, escolares e de provedores, a medida também ajuda a reduzir o risco associado a protocolos antigos que continuam habilitados por padrão ou por herança de configuração.


A Squidbleed reforça uma lição recorrente em segurança: vulnerabilidades críticas nem sempre estão em funcionalidades novas ou complexas. Às vezes, elas permanecem em caminhos de código criados décadas atrás, ligados a tecnologias legadas, protocolos obsoletos e comportamentos de compatibilidade que raramente recebem atenção.

 
 
Cópia de Cyber Security Brazil_edited.jpg

Cyber Security Brazil desde 2021, atuamos como referência nacional em segurança digital, oferecendo informação confiável, conteúdo especializado e fortalecendo o ecossistema de cibersegurança no Brasil.

Institucional

(11) 93937-9007

INSCREVA SEU EMAIL PARA RECEBER

ATUALIZAÇÕES, POSTS E NOVIDADES

  • RSS
  • Instagram
  • LinkedIn

© 2025 Todos os direitos reservados a Cyber Security Brazil

bottom of page