Jump to content

Slowloris (cyber attack)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Xavier Combelle (talk | contribs) at 19:32, 1 April 2012 (interwiki fr). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Slowloris
Original author(s)RSnake
Initial release17 June 2009
Stable release
0.7
Written inPerl
Size36 kb
Websiteha.ckers.org/slowloris/

Slowloris is a piece of software written by Robert "RSnake" Hansen which allows a single machine to take down another machine's web server with minimal bandwidth and side effects on unrelated services and ports.[1]

Slowloris tries to keep many connections to the target web server open and hold them open as long as possible. It accomplishes this by opening connections to the target web server and sending a partial request. Periodically, it will send subsequent HTTP headers, adding to—but never completing—the request. Affected servers will keep these connections open, filling their maximum concurrent connection pool, eventually denying additional connection attempts from clients.[1]

Affected web servers

There are a number of web servers that are vulnerable to Slowloris' form of attack. Some of the vulnerable web servers include Apache 1.x, Apache 2.x, dhttpd, and the GoAhead WebServer software.[1]

Mitigating the Slowloris attack

While there are no reliable configurations of the affected web servers that will prevent the Slowloris attack, there are ways to mitigate or reduce the impact of such an attack. In general these involve increasing the maximum number of clients the webserver will allow, limiting the number of connections a single IP address is allowed to make, imposing restrictions on the minimum transfer speed a connection is allowed to have, and restricting the length of time a client is allowed to stay connected.

In the Apache web server, a number of modules can be used to limit the damage caused by the Slowloris attack; the Apache modules mod_limitipconn, mod qos, mod_evasive, mod_security, mod_noloris, and mod_antiloris have all been suggested as means of reducing the likelihood of a successful Slowloris attack.[1][2]

Other mitigating techniques involve setting up reverse proxies, firewalls, load balancers or content switches.[3] Administrators could also change the affected web server to software that is unaffected by this form of attack. For example, lighttpd and nginx do not succumb to this specific attack.[1]

Notable usage

During the protests that erupted in the wake of the 2009 Iranian presidential election, Slowloris arose as a prominent tool used to leverage DoS attacks against sites run by the Iranian government.[4] The belief was that using a DDoS attack would affect internet access for the government and protesters equally, due to the significant bandwidth they can use. The Slowloris attack was chosen instead, because of its high impact and relatively low bandwidth.[5] A number of government run sites were targeted during these attacks, including gerdab.ir, leader.ir, and president.ir.[6]

Similar software

Since its release, a number of programs have appeared that mimic the function of Slowloris while providing additional functionality, or running in different environments:[7]

  • PyLoris - A protocol-agnostic python implementation supporting TOR and SOCKS proxies.[8]
  • QSlowloris - An executable form of Slowloris designed to run on Windows, featuring a Qt front end.[9]
  • An unnamed PHP version which can be run from an HTTP server.[10]
  • slowhttptest - highly configurable slow attacks simulator, written in C++[11]

See also

References

  1. ^ a b c d e "Slowloris HTTP DoS". ha.ckers.org. Retrieved 7 January 2012.
  2. ^ "mod_noloris: defending against DoS". niq's soapbox. Retrieved 7 January 2012.
  3. ^ Breedijk, Frank (22 June 2009). "Slowloris and Nkiller2 vs. the Cisco CSS load balancer". Cupfighter.net. Retrieved 7 January 2012.
  4. ^ Zdrnja, Bojan (23 June 2009). "ISC Diary | Slowloris and Iranian DDoS attacks". Isc.sans.org. Retrieved 7 January 2012.
  5. ^ [1][dead link]
  6. ^ [2][dead link]
  7. ^ Robert “RSnake” Hansen. "Slowloris" (PDF). SecTheory. Retrieved 7 January 2012.
  8. ^ "PyLoris". MotomaSTYLE. 19 June 2009. Retrieved 7 January 2012.
  9. ^ "How to help take down gerdab.ir in 5 easy steps". cyberwar4iran. 28 June 2009. Retrieved 7 January 2012.
  10. ^ "Full Disclosure: apache and squid dos". Seclists.org. 19 June 2009. Retrieved 7 January 2012.
  11. ^ "Testing Web Servers for Slow HTTP Attacks". qualys.com. 19 September 2011. Retrieved 13 January 2012.