Un bug di una sola riga sopravvissuto a 29 anni di release, audit e riscritture in Squid — uno dei proxy server più diffusi su internet — è stato corretto dopo tre ritrovamenti indipendenti nell’arco di tre mesi, incluso uno guidato da un modello AI che stava leggendo il codice.
Il bug
Squidbleed (CVE-2026-47729) è un heap buffer over-read nel parser delle directory FTP di Squid, in codice di compatibilità per i server FTP NetWare risalente a un commit del 18 gennaio 1997. La causa alla radice è un classico tranello del C: strchr(), cercando il terminatore nullo, restituisce un puntatore al terminatore stesso anziché NULL, quindi un ciclo che salta gli spazi bianchi oltrepassa la fine della stringa ed entra nella memoria heap adiacente. Valutato CVSS 7.5, colpisce ogni versione di Squid nella configurazione predefinita — il supporto FTP è attivo di default e la porta 21 è presente nella Safe_ports ACL predefinita.
Chi è esposto
Un aggressore che controlli un server FTP raggiungibile tramite un proxy Squid condiviso può far trapelare frammenti del traffico di altri utenti — con richieste HTTP in chiaro, e le password, i cookie e le chiavi API contenute al loro interno, come premio. Il traffico HTTPS inoltrato come tunnel CONNECT opachi non è leggibile, il che limita l’esposizione all’HTTP in chiaro e alle configurazioni con terminazione TLS — ancora una platea significativa nelle reti aziendali e presso gli ISP che gestiscono proxy condivisi.
Come è stato scoperto
Pavel Kohout di Aisle Research ha segnalato per primo il bug il 4 marzo 2026. Il 17 aprile, Lam Jun Rong di Calif.io lo ha segnalato in modo indipendente — dopo aver puntato Claude Mythos di Anthropic sulla macchina a stati FTP di Squid nell’ambito di Project Glasswing, il programma di Anthropic per i difensori verificati di infrastrutture critiche. Calif afferma che il modello ha colto quasi subito la stranezza, osservando che "strchr(w_space, '\0') returns non-NULL per C11 §7.24.5.2." Una terza segnalazione, da parte di Youssef Awad, è seguita il 7 maggio. La correzione — un controllo nullo di due righe — è stata integrata ad aprile, distribuita in Squid 7.6 l’8 giugno e coperta da un advisory ufficiale il 23 giugno.
La correzione e la lezione
Oltre alla patch, la raccomandazione di Calif è netta: disattivare FTP. I browser basati su Chromium hanno abbandonato FTP anni fa e la maggior parte delle reti ne trasporta pochissimo o nulla. L’episodio richiama recenti scoperte assistite dall’AI in FFmpeg e altrove — bug di parser sepolti in codice di protocolli legacy, invisibili agli esseri umani per decenni, che emergono in pochi mesi una volta che l’AI entra nell’audit.
