Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Path: blob/master/documentation/modules/auxiliary/dos/http/squid_range_dos.md
Views: 11788
Vulnerable Application
This module exploits two vulnerabilities in the Squid Caching Proxy server and its handling of cached pages and the Range
HTTP header.
Due to the way Squid handles the HTTP request header Range
, an assertion can be caused due to a standard HTTP request. Once all of Squid's children workers have asserted, a Denial of Service of the proxy is achieved.
Vulnerable versions of Squid include:
2.5.STABLE2-2.7.STABLE9.
3.0-4.1.4.
5.0.1-5.0.5.
Security bulletin from Squid: https://github.com/squid-cache/squid/security/advisories/GHSA-pxwq-f3qr-w2xf
Verification Steps
Start msfconsole
use auxiliary/dos/http/squid_range_dos.rb`
Set `rhost
Set
rport
run
Options
REQUEST_COUNT
REQUEST_COUNT is both the number of HTTP requests which are sent to the server in order to perform the actual Denial of Service (i.e. accepted requests by the server), and the number of requests that are sent to confirm that the Squid host is actually dead.
CVE
This is the CVE that will be used to exploit the vulnerability. The default setting is CVE-2021-31806
, but CVE-2021-31807
can also be chosen.
Scenarios
In this scenario the target server is running on the same host as Metasploit (192.168.159.128).
At this point, the target Squid server should be completely inaccessible: all children workers should have exited, and the main process should have also shut down.