Slowloris, DoS tool, holds connections open by sending partial HTTP requests. It continues to send subsequent headers at regular intervals to keep the sockets from closing. In this way webservers can be quickly tied up. In particular, servers that have threading will tend to be vulnerable, by virtue of the fact that they attempt to limit the amount of threading they'll allow. Slowloris must wait for all the sockets to become available before it's successful at consuming them, so if it's a high traffic website, it may take a while for the site to free up it's sockets. So while you may be unable to see the website from your vantage point, others may still be able to see it until all sockets are freed by them and consumed by Slowloris. This is because other users of the system must finish their requests before the sockets become available for Slowloris to consume. If others re-initiate their connections in that brief time-period they'll still be able to see the site. So it's a bit of a race condition, but one that Slowloris will eventually always win - and sooner than later.
From my twitter, I got c source code of "slowloris with TOR" from someone in my following.
SanguineRose / William Welna is owner of this link. I tried to compile it and I make this tutorial for someone want to compile it in Backtrack5.
*** After I compile it, I haven't test it yet. This tutorial just for compile it only.
1. Get the source code from
Source and take it into file.
$ vim slowloris-tor.c
2. Edit in line#154 from "fprintf(stderr, "Usage: %s <ip/hostname> <port>\n");" to " fprintf(stderr, "Usage: %s <ip/hostname> <port>\n",n);"
3. Save it.
4. Compile it.
$ gcc -o slowloris-tor -l lpthread slowloris-tor.c
5. It's done. Try to run it with
$ ./slowloris-tor
Source: http://pastebin.com/j6uVQ3yF
If you like my blog, Please Donate Me