HTTP慢速攻击

摘要:
漏洞原理HTTP慢攻击也称为慢HTTP攻击,这是一种DoS攻击。发送大量慢速HTTP数据包将导致拒绝服务攻击DoS。漏洞验证工具:slowhttptestSlowHTTPTest是一种对服务器进行慢速攻击的测试软件。所谓的缓慢攻击与cc或DDoS的速度有关。不仅数量大、速度快,还会导致服务器挂断。缓慢的攻击有时也能达到同样的效果。

漏洞原理

HTTP慢速攻击也叫slow http attack,是一种DoS攻击的方式。由于HTTP请求底层使用TCP网络连接进行会话,因此如果中间件对会话超时时间设置不合理,并且HTTP在发送请求的时候采用慢速发HTTP请求,就会导致占用一个HTTP连接会话。如果发送大量慢速的HTTP包就会导致拒绝服务攻击DoS。

3种攻击方式

1.Slow headers(也称slowloris):Web应用在处理HTTP请求之前都要先接收完所有的HTTP头部,Web服务器再没接收到2个连续的 时,会认为客户端没有发送完头部,而持续的等等客户端发送数据,消耗服务器的连接和内存资源。

2.Slow body(也称Slow HTTP POST):攻击者发送一个HTTP POST请求,该请求的Content-Length头部值很大,使得Web服务器或代理认为客户端要发送很大的数据。服务器会保持连接准备接收数据,但攻击客户端每次只发送很少量的数据,使该连接一直保持存活,消耗服务器的连接和内存资源。

3.Slow read(也称Slow Read attack):客户端与服务器建立连接并发送了一个HTTP请求,客户端发送完整的请求给服务器端,然后一直保持这个连接,以很低的速度读取Response,比如很长一段时间客户端不读取任何数据,通过发送Zero Window到服务器,让服务器误以为客户端很忙,直到连接快超时前才读取一个字节,以消耗服务器的连接和内存资源。

漏洞验证

使用工具:slowhttptest

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

安装工具

Kali Linux:

apt-get install slowhttptest

其他Linux发行版:

./configure
make
sudo make install

参数说明

-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()操作

电脑刺绣绣花厂 http://www.szhdn.com广州品牌设计公司https://www.houdianzi.com

验证命令

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.com -p 5 -l 350 -e x.x.x.x:8080

判断依据

1、当服务器可控,可以通过以下命令来确认是否存在该漏洞:
pgrep http | wc -l  进程数量
netstat -antp | grep 443 |wc -l  网络连接数量
2、在攻击的时间段,服务无法正常访问则存在漏洞。

修复建议

  • 设定URL白名单和黑名单,识别坏的IP;
  • 设置一个绝对连接超时;
  • 定义最小的输入数据速率;
  • 对web服务器的http头部传输的最大许可时间进行限制,修改成最大许可时间为20秒。

免责声明:文章转载自《HTTP慢速攻击》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Oracle字段增删改、添加约束理解全虚拟、半虚拟以及硬件辅助的虚拟化下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

网站响应时间过长的原因及解决方法

遇到过类似问题,我认为有以下几个原因: 1、网站服务器故障维修(这种情况只能等段时间重新登录试试)2、网络连接不通(查看网线接口处是否插好)3、网站地址被和谐了(用代理) 4、本身网站程序卡死了(程序问题) 服务器网站响应时间过长的问题解决方法如下:1、机器的配置。包括服务器端与客户机端的硬件配置程度,同样的网络环境下,双核的服务器的运算能力肯定...

构建伪Update服务器工具isr-evilgrade

构建伪Update服务器工具isr-evilgrade   现在大部分软件都提供更新功能。软件一旦运行,就自动检查对应的Update服务器。如果发现新版本,就会提示用户,并进行下载和安装。而用户往往相信任提示,会选择进行升级。如果更新策略制定不严密,就存在严重漏洞。   基于这个社工思路,渗透测试人员可以轻松控制目标主机。Kali Linux提供了一款工具...

大数据之Linux服务器集群搭建

之前写过一篇关于Linux服务器系统的安装与网关的配置,那么现在我们要进一步的搭建多台Linux服务器集群。 关于单台服务器的系统搭建配置就不在赘述了,详情见https://www.cnblogs.com/sky9408251/p/12034904.html 那么好,现在我们来开始搭建多台Linux服务器集群。   首先第一步,准备环境,我们需要准备环境有...

iOS_网络_02_搭建本地Web服务器

搭建Apache(Web)服务器,在本地搭建开发用的网络测试环境 一、Web服务器   WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。Web服务器是可以向发出请求的浏览器提供文档的程序。   (1) 服务器是一种被动程序:只有当Internet上运行在其他计算机中的浏览器发出请求时,服务器才会响应   (...

2.服务器的介绍

目录: 1.有哪些分类?市面上有哪些常见的类型. 2.服务器的组成部分. 3.各个部分的功能1.有哪些分类?市面上有哪些常见的类型.互联网公司服务器品牌:DELL(大多数公司),HP,IBM(百度),浪潮,联想,航天联志. DELL:1U高度=4.45cm 2010年以前:1U 1850,1950.2U 2850,2950 2010-2013年:1U R4...

本地电脑与远程服务器之间不能复制粘贴解决方法!

刚才用远程桌面登陆服务器,突然发现不能在本地电脑和远程服务器之间粘贴文本了,即不能从本机复制文本粘贴到服务器,也不能从服务器复制文本粘贴到本机。 下面我们说下解决方法,已作记录! 第一种方法: 打开本机的远程桌面连接图标按照下图所示,勾选以下项目,就可以了。 第二种方法: 在服务器上打开任务管理器,查看进程,有 rdpclip.exe 进程。通常,只要存...