Um bug de uma linha que sobreviveu a 29 anos de versões, auditorias e reescritas no Squid — um dos servidores proxy mais amplamente implantados da internet — foi corrigido depois de três redescobertas independentes ao longo de três meses, incluindo uma guiada por um modelo de IA lendo o código.

O bug

Squidbleed (CVE-2026-47729) é um heap buffer over-read no parser de listagem de diretórios FTP do Squid, em código de compatibilidade para servidores FTP NetWare que remonta a um commit de 18 de janeiro de 1997. A causa raiz é uma armadilha clássica do C: strchr() procurando o terminador nulo retorna um ponteiro para o próprio terminador, em vez de NULL, então um loop que ignora espaços em branco avança além do fim da string para a memória heap adjacente. Classificado com CVSS 7.5, o bug afeta todas as versões do Squid em sua configuração padrão — o suporte a FTP vem ativado por padrão e a porta 21 está na ACL Safe_ports padrão.

Quem está exposto

Um atacante que controla um servidor FTP acessível por meio de um proxy Squid compartilhado pode vazar fragmentos do tráfego de outros usuários — com pedidos HTTP em texto simples, e as senhas, cookies e chaves de API contidos neles, como prêmio. O tráfego HTTPS repassado como túneis CONNECT opacos não pode ser lido, o que limita a exposição ao HTTP em texto simples e a configurações com término de TLS — ainda assim uma população significativa em redes corporativas e provedores de internet que operam proxies compartilhados.

Como foi encontrado

Pavel Kohout, da Aisle Research, relatou o bug primeiro em 4 de março de 2026. Em 17 de abril, Lam Jun Rong, da Calif.io, o relatou de forma independente — depois de apontar o Claude Mythos da Anthropic para a máquina de estados FTP do Squid sob o Project Glasswing, programa da Anthropic para defensores vetados de infraestrutura crítica. A Calif diz que o modelo detectou a peculiaridade quase de imediato, observando que "strchr(w_space, '\0') returns non-NULL per C11 §7.24.5.2." Um terceiro relato, de Youssef Awad, veio em 7 de maio. A correção — uma checagem de NULL em duas linhas — foi incorporada em abril, lançada no Squid 7.6 em 8 de junho e coberta por um alerta oficial em 23 de junho.

A correção e a lição

Além do patch, a recomendação da Calif é direta: desative o FTP. Navegadores baseados em Chromium abandonaram o FTP há anos, e a maioria das redes praticamente não o transporta. O episódio ecoa descobertas recentes assistidas por IA no FFmpeg e em outros lugares — bugs de parser enterrados em código de protocolos legados, invisíveis para humanos por décadas, surgindo em meses quando a IA entra na auditoria.