【软件工具】slowhttptest慢速攻击工具使用详解

参考文章

本片文章仅供学习使用,切勿触犯法律!


一、简要介绍

SlowHTTPTest是一款对服务器进行慢攻击的测试软件,所谓的慢攻击就是相对于cc或者DDoS的快而言的,并不是只有量大速度快才能把服务器搞挂,使用慢攻击有时候也能到达同一效果。slowhttptest包含了之前几种慢攻击的攻击方式,包括slowloris, Slow HTTP POST, Slow Read attack等。那么这些慢攻击工具的原理就是想办法让服务器等待,当服务器在保持连接等待时,自然就消耗了资源。

二、下载安装

Kali Linux:

apt-get install slowhttptest 

其他Linux发行版:

tar -xzvf slowhttptest-x.x.tar.gz
cd slowhttptest-x.x
./configure --prefix=PREFIX
make
sudo make install

PREFIX替换为应该安装slowhttptest工具的绝对路径。
需要安装libssl-dev才能成功编译该工具。

MacOS安装命令:

brew update && brew install slowhttptest

git安装:

git clone https://github.com/shekyan/slowhttptest

三、执行使用

默认参数测试
./slowhttptest
其回应的相关参数:

test type测试类型
number of connections连接数
URL网址
verb动词
interval between follow up data随机数据之间的间隔
connections per second每秒连接数
test duration测试时间
probe connection timeout探针连接超时
max length of followup data field后续数据字段的最大长度

1、参数说明

选项描述
-a 开始用于范围标头测试的range-specifier的起始值
-b 字节范围标题测试的范围说明符限制
-c 连接数限于65539
-d 代理主机:端口通过Web代理定向所有流量
-e 代理主机:端口用于仅通过Web代理定向探测流量
-H,B,R或X指定在标头部分或消息正文中放慢速度,-R启用范围测试,-X启用慢速读取测试
-f 内容类型内容类型标头的值
-g生成CSV和HTML格式的统计信息,格式为slow_xxx.csv / html,其中xxx是时间和日期
-i 秒每个连接的后续数据之间的间隔(以秒为单位)
-j cookieCookie标头的值(例如:-j“ user_id = 1001;超时= 9000”)
-k 流水线系数如果服务器支持HTTP管道,则在同一连接中重复请求以进行慢速读取测试的次数。
-l 秒测试持续时间(以秒为单位)
-m 接受Accept标头的值
-n 秒从接收缓冲区读取操作之间的间隔
-o 文件定制输出文件的路径和/或名称,如果指定了-g,则有效
-p 秒等待探针连接上的HTTP响应超时,此后服务器被视为不可访问
每秒-r个连接连接率
-s 字节如果指定了-B,则Content-Length标头的值
-t 动词要使用的自定义动词
-u URL目标URL,与您在浏览器中键入的格式相同,例如http s:// host [:port] /
-v 级日志0-4的详细级别
-w 字节范围的开始,将从中选择广告窗口大小
-x 字节随访数据的最大长度
-y 字节范围的末端,将从中选择广告窗口大小
-z 字节通过单个read()操作从接收缓冲区读取的字节

2、功能命令

slowloris模式:

slowhttptest -c 1000 -H -i 10 -r 200 -t GET -u https://yourtarget.com/index.html -x 24 -p 3

Slow Body攻击:
慢消息正文模式下的用法示例

slowhttptest -c 1000 -B -g -o my_body_stats -i 110 -r 200 -s 8192 -t FAKEVERB -u http://www.mywebsite.com -x 10 -p 3

Slow Read模式:

slowhttptest -c 1000 -X -r 1000 -w 10 -y 20 -n 5 -z 32 -u http://yourtarget.co

慢节奏模式下的用法示例:

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

通过在xxxx:8080上的代理进行探测:

./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

3、错误信息

错误信息这是什么意思
“Hit test time limit”程序达到了用-l参数指定的时间限制
“No open connections left”同行关闭了所有连接
“Cannot establish connection”在测试的前N秒内未建立任何连接,其中N是-i参数的值,或者是10(如果未指定)。如果没有到主机的路由或远程对等体断开,则会发生这种情况
“Connection refused”远程对等方不接受指定端口上的连接(仅来自您?使用代理进行探测)
“Cancelled by user”您按了Ctrl-C或以其他方式发送了SIGINT
“Unexpected error”永远不会发生

3、判断依据

  1. 当服务器可控,可以通过以下命令来确认是否存在该漏洞:
pgrep http | wc -l  进程数量
netstat -antp | grep 443 | wc -l  网络连接数量
  1. 在攻击的时间段,服务无法正常访问则存在漏洞。
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
你可以在Kali Linux中直接使用以下命令来安装SlowHTTPTest工具:sudo apt-get install slowhttptestSlowHTTPTest是一种用于测试HTTP Slow Attack的工具,它可以模拟Slow Header、Slow Body和Slow Read等常见的拒绝服务攻击方式。 安装完成后,你可以使用命令slowhttptest -h来查看参数的解释和使用方法。例如,使用slowhttptest -c 5000 -u http://...可以指定目标连接数和目标URL。四种攻击模式包括slowloris、show HTTP POST、Apache range header和slow read,默认为slowloris模式。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [慢速DoS攻击工具slowhttptest(网站压力测试工具)](https://blog.csdn.net/weixin_43456810/article/details/110366614)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [HTTP Slow Attack测试工具SlowHTTPTest](https://blog.csdn.net/u014621518/article/details/77035700)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值