A critical vulnerability has been identified in the Squid web proxy, a widely used caching proxy server. Dubbed ‘Squidbleed’ and tracked as CVE-2026-47729, this flaw allows an attacker with access to the same proxy to intercept another user’s cleartext HTTP requests, potentially exposing sensitive information such as credentials and session tokens.
The root of this vulnerability dates back to a 1997 modification in Squid’s FTP-parsing code. Despite its age, the issue persists in Squid’s default configuration. Researchers at Calif.io disclosed the flaw in June 2026, highlighting its similarity to the infamous Heartbleed bug, which also involved memory leakage.
Exploitation of Squidbleed requires the attacker to be a trusted client—someone already permitted to use the proxy. This scenario is common in shared network environments like educational institutions, corporate offices, and public Wi-Fi networks, where multiple users rely on the same proxy server.
The vulnerability specifically affects cleartext HTTP traffic and TLS-terminating setups where Squid decrypts and inspects HTTPS traffic. Encrypted HTTPS traffic that passes through Squid’s CONNECT tunnel remains unaffected, as Squid does not have visibility into its contents.
To exploit this flaw, an attacker needs the proxy to connect to an FTP server they control on port 21. Both FTP support and port 21 are enabled by default in Squid’s configuration, facilitating potential exploitation.
Technical Details of the Vulnerability
The issue resides in Squid’s FTP directory-listing parser. To accommodate older NetWare servers that padded listings with extra spaces, the code includes a loop designed to skip whitespace:
while (strchr(w_space, *copyFrom)) ++copyFrom;
If an attacker-controlled FTP server sends a directory listing line that ends immediately after the timestamp, without a filename, the copyFrom pointer reaches the string’s null terminator. The strchr function treats this null terminator as part of the string, causing the loop to continue indefinitely. This results in the function reading beyond the allocated buffer and copying unintended memory contents back to the attacker as a filename.
Since Squid reuses freed memory buffers without clearing them, a 4KB buffer that previously held another user’s HTTP request may still contain that data. A short FTP line overwrites only the initial bytes, allowing the over-read operation to return the remaining data. This can include sensitive information such as Authorization headers, enabling the attacker to impersonate the victim.
Proof-of-concept code demonstrating this exploit has been made publicly available. As of now, there have been no reports of this vulnerability being exploited in the wild.
Mitigation and Recommendations
To address this vulnerability, users are advised to update Squid to version 7.7 or later, where the issue has been patched. However, there has been some inconsistency in public communications regarding the exact version containing the fix. Therefore, it is crucial to verify that the specific patch is present in the installed version. This can be done by checking for the null-terminator check before the vulnerable strchr calls in the FtpGateway.cc file.
Alternatively, disabling FTP support in Squid is a more straightforward solution. Given that modern browsers like Chromium have deprecated FTP support and that FTP usage has significantly declined, turning off FTP in Squid’s configuration effectively removes the attack vector without impacting most users.
While the risk posed by Squidbleed is real, it is somewhat limited. The attacker must have access to the proxy, and the impact is confined to the confidentiality of HTTP traffic. Organizations should assess their network configurations and user access controls to determine their exposure to this vulnerability and take appropriate action.
This incident underscores the importance of regular security audits and timely updates, even for long-standing software components. It also highlights the need for organizations to evaluate the necessity of legacy protocols like FTP in their environments and consider disabling them to reduce potential attack surfaces.