Squid is a caching proxy for the Web. In versions 6.3 and below, Squid is vulnerable to a heap buffer overflow and possible remote code execution attack when processing URN due to incorrect buffer management. This has been fixed in version 6.4. To work around this issue, disable URN access permissions.
The vulnerability results from improper memory management when handling URN (Uniform Resource Name) protocol-based requests. An attacker sends a specially crafted URN request to a vulnerable Squid instance, causing a heap buffer overflow. This results in memory corruption of the process, which can lead to its crash or – under favorable circumstances – to arbitrary code execution (RCE).
An attacker can cause proxy service unavailability (DoS) or potentially take control of the system through remote code execution (RCE) without requiring any privileges.
Update Squid to version 6.4, where the issue has been fixed. If an immediate update is not possible, as a workaround, disable URN access permissions in the Squid configuration.
Squid in versions 6.3 and below (Squid-Cache/Squid).
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:HSquid Cache Squid
APPSquid-Cache< 6.4
Related vulnerabilities
Squid: Use-After-Free w obsłudze ruchu ICP umożliwia atak DoS
Squid: ujawnienie danych uwierzytelniających HTTP przez błędy obsługi
Squid: HTTP request smuggling przez zbyt liberalny dekoder chunked
Request Smuggling i cache poisoning w Squid przez nieprawidłowy Content-Length
Squid: przepełnienie licznika nonce w Digest Authentication umożliwia RCE