Falha no Squid Proxy, apelidada de “Squidbleed”, pode vazar requisições HTTP em texto claro
23 de Junho de 2026

Uma leitura além do fim do buffer no proxy web Squid pode vazar a solicitação HTTP em texto claro de outro usuário, incluindo credenciais ou tokens de sessão que ela contenha, para qualquer pessoa já autorizada a trafegar pelo mesmo proxy.

A falha remonta a uma mudança no parser de FTP feita em 1997 e continua presente na configuração padrão do Squid.

Pesquisadores da Calif.io divulgaram o problema em junho e o batizaram de Squidbleed, com identificação CVE-2026-47729, em referência ao Heartbleed, que vazava memória de forma semelhante.

O Squid descreve o caso como um ataque de cliente confiável, ou seja, alguém que já tem permissão para usar o proxy, e não qualquer máquina aleatória na internet.

Isso corresponde ao ambiente mais comum do software, como redes compartilhadas em escolas, escritórios e Wi-Fi público.

Nesses cenários, o atacante é apenas mais um usuário do mesmo proxy.

O vazamento também afeta apenas o tráfego que o Squid consegue ler.

O HTTPS normal trafega por um túnel CONNECT opaco, então o proxy não enxerga o conteúdo.

O material exposto é o HTTP em texto claro, além de configurações com terminação de TLS, nas quais o Squid descriptografa e inspeciona o tráfego.

Para explorar a falha, o atacante também precisa que o proxy alcance um servidor FTP sob seu controle na porta 21.

Tanto o FTP quanto essa porta estão habilitados por padrão.

Como o vazamento funciona

A falha está no parser de listagem de diretório FTP do Squid.

Para lidar com antigos servidores NetWare, que preenchiam listagens com espaços extras, o código ignora espaços em branco com um laço: while (strchr(w_space, *copyFrom)) ++copyFrom;.

Se o servidor FTP do atacante enviar uma linha de listagem que termine logo após o horário, sem nome de arquivo, copyFrom cai no terminador nulo da string.

A função strchr trata esse byte nulo final como parte da string pesquisada, então retorna um ponteiro em vez de NULL, e o laço nunca para.

O código então avança para fora do buffer, e xstrdup copia de volta ao atacante o que vier em seguida, como se fosse um nome de arquivo.

Os bytes vazados são justamente a parte útil.

O Squid reaproveita buffers de memória liberados sem zerá-los, então um buffer de 4 KB que tenha armazenado recentemente uma solicitação HTTP de uma vítima ainda pode conter grande parte desse conteúdo.

Uma linha FTP curta sobrescreve apenas os primeiros bytes, e a leitura além do limite recupera o restante.

Na demonstração da Calif, o ataque extrai um cabeçalho Authorization de uma vítima que compartilha o mesmo proxy, o suficiente para se passar por esse usuário.

O código de prova de conceito é público, e até o momento não há relatos de exploração em ambiente real.

O que fazer

Se você aplicar o patch, confirme a correção, e não apenas a versão.

Verifique se a proteção está em FtpGateway.cc ou confira o backport da sua distribuição, já que os pacotes costumam trazer builds próprios.

O Debian, por exemplo, distribui o Squid 5.7.

A discussão pública ainda apresenta divergências.

O mantenedor Amos Jeffries afirmou inicialmente que o Squid 7.6 já trazia a correção, depois ajustou a informação para 7.7.

Em 22/06, Salvatore Bonaccorso, do Debian, observou que o commit citado parece já estar incluído na 7.6.

A correção é pequena, com uma checagem do terminador nulo antes das chamadas vulneráveis a strchr.

O ajuste foi incorporado ao ramo de desenvolvimento em abril e à versão 7 em maio.

O Squid 7.6 também corrige separadamente a CVE-2026-50012, um overflow de heap no cache_digest sem relação com este caso.

A medida mais limpa é a recomendada pelos próprios pesquisadores: desativar o FTP.

O Chromium abandonou o FTP há anos e a maior parte das redes já quase não usa esse protocolo, então desabilitá-lo elimina essa superfície de ataque sem custo, independentemente da versão instalada.

O risco é real, mas limitado.

A SUSE classifica a falha como moderada, com CVSS 6,5, e o vetor explica a nota: o atacante precisa ter acesso ao proxy, com privilégios baixos, e o impacto atinge apenas a confidencialidade, sem afetar integridade ou disponibilidade.

A Calif atribui ao Anthropic Claude Mythos Preview, o modelo por trás do Project Glasswing, o mérito de ter identificado quase de imediato a peculiaridade no uso de strchr, o mesmo tipo de bug de parser oculto que agentes de IA têm encontrado em outros lugares, inclusive no FFmpeg.

A empresa sugere que o código FTP do Squid talvez não seja o último ponto em que o software deixou de parar de ler no momento certo.

Publicidade

Proteja sua empresa contra hackers através de um Pentest

Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...