SlowHTTPTest是一个可配置的工具,模拟了一些应用程序层拒绝服务***。它可以在大多数Linux平台,OSX和Cygwin——一个类unix环境和命令行接口为窗口。

 

     Slowloris和缓慢的HTTP POST DoS***依赖于HTTP协议的事实,通过设计,将每次发送数据包的一部分。如果一个HTTP请求是不完整的,或者如果转移率非常低,服务器保持其资源忙等待其余的数据。如果服务器保持太多的资源忙,HTTP服务器将拒绝其它的请求服务。这个工具就是通过发送缓慢HTTP请求,让目标HTTP服务器处于忙碌状态。

 

安装和使用示例

 

在前缀必须更换的绝对路径,slowhttptest工具应该安装。你需要libssl-dev安装成功编译工具。

 

tar -xzvf slowhttptest-x.x.tar.gz

 

cd slowhttptest-x.x

 

mkdir -p /usr/local/slowhttptest

 

./configure --prefix=PREFIX

 

make

 

make install

 

################安装实例######################

 

wget https://slowhttptest.googlecode.com/files/slowhttptest-1.5.tar.gz --no-check-certificate

mkdir -p /usr/local/slowhttptest

tar -xzvf slowhttptest-1.5.tar.gz 

cd slowhttptest-1.5

 ./configure --prefix=/usr/local/slowhttptest/

make 

make install

ln -s bin/slowhttptest /usr/bin/

 

 

可配置选项的完整列表如下:

 

—a—开始开始值范围说明符用于范围头测试

-b 将字节限制的范围说明符用于范围头测试

- c的连接数限制为65539

- d proxy host:port用于指导所有流量通过web代理

- e proxy host:port端口用于指导只有探针交通通过web代理

- h,B,R或x指定减缓在头部分或在消息体,- R 允许范围检验,使慢读测试- x

- g生成统计数据在CSV和HTML格式,模式是缓慢的xxx。csv / html,其中xxx是时间和日期

- i seconds秒间隔跟踪数据在几秒钟内,每个连接

- k管道因子次数重复请求在同一连接慢读测试如果服务器支持HTTP管道内衬。

- l在几秒钟内,秒测试时间

- n秒间隔从接收缓冲区读取操作

- o文件定义输出文件路径和/或名称,如果指定有效- g

- p秒超时等待HTTP响应在探头连接后,服务器被认为是不可访问的

- r seconds连接速度

- s字节值的内容长度标题详细说明,如果指定- b

- t verb自定义

- u URL目标URL,相同的格式键入浏览器,e。g https://host[:port]/

- v level冗长等级0 - 4的日志

- w字节范围广告的窗口大小会选择从

- x字节最大长度的跟踪数据结束

- y字节范围广告的窗口大小会选择从

- z字节从接收缓冲区读取字节与单一的read()操作

 

 

使用的例子 慢消息主体模式

 

./slowhttptest -c 1000 -B -g -o my_body_stats -i 110 -r 200 -s 8192 -t FAKEVERB -u https://myseceureserver/resources/loginform.html -x 10 -p 3

 

 

在slowloris模式的示例

 

lowhttptest -c 1000 -H -g -o my_header_stats -i 10 -r 200 -t GET -u https://myseceureserver/resources/index.html -x 24 -p 3

 

 

使用的例子在慢读模式,通过代理探索. x.x.x。x:8080有网站可用性比你从IP不同:

 

./slowhttptest -c 1000 -X -r 1000 -w 10 -y 20 -n 5 -z 32 -u http://someserver/somebigresource -p 5 -l 350 -e x.x.x.x:8080