简介

http慢速攻击是利用网络协议的设计缺陷,尽可能的长时间保持链接,占用系统的资源,若是达到了Web Server对于并发连接数的上限,同时恶意占用的连接没有被释放,那么服务器端将无法接受新的请求,导致拒绝服务。

http 慢速攻击

http 慢速攻击主要分为一下三种

  1. Slow headers
  2. Slow body
  3. Slow read
Slow headers

这种慢速攻击方式首先要看一下http报文的格式了,我用burp抓了个包,报文内容如下。

GET / HTTP/1.1
Host: www.baidu.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close

在实际传输中,,\r\n代表一行报文的结束也被称为空行(CRLF),而\r\n\r\n代表整个报文的结束,当我们客户端发送一个报文,不以CRLF结尾,而是10s发送一行报文,我们的报文需要80s才能发送完毕,这80s内,服务器需要一直等待客户端的CRLF,然后才能解析这个报文。当我们大量的发起这种请求,就会占用大量的http 连接数,倒是web 服务器无法在接收连接,导致拒绝服务。

Slow body

原理为在POST提交方式中,允许在HTTP的头中声明content-length,即POST内容的长度。

这种方式与Slow headers,差别不大,主要就是在数据内容中做手脚,缓慢的发送报文内容,以达到长时间占用http连接的目的。

Slow read

第三类攻击方式采用调整TCP协议中滑动窗口大小,来对服务器单次发送的数据大小进行控制,使得服务器需要对一个相应包分为很多个包来发送,想要使这种攻击效果明显,请求的资源要尽量大,这里很容易理解,当请求的资源越大,返回包才越大,这样才能分成更多的包让服务器发送,导致拒绝服务的产生。

漏洞测试

http慢速攻击漏洞一般使用slowhttptest工具进行测试。

可以直接使用Linux命令在系统中直接安装

apt install slowhttptest

或者使用下载、编译等方式进行安装。

Slow headers

slowhttptest -c 65500 -H -i 10 -r 200 -s 8192 -t SLOWHEADER -u http://vulurl.com

Slow body

slowhttptest -c 65500 -B -i 10 -r 200 -s 8192 -t SLOWBODY -u http://vulurl.com

Slow read

slowhttptest -c 65500 -X -r 1000 -w 10 -y 20 -t SLOWREAD -n 5 -z 32 -u http://vulurl.com

漏洞修复

对于这种类似于DOS 的攻击,都是不好搞的,毕竟我只要量大,总有可能把你搞挂,介绍几种缓解、修复方式。

修改超时时常

将http连接保持时间改的短一点,这样可以确保连接不会长时间存在,可以有效缓解。

增大允许连接数

在系统资源允许的范围内容,将连接数改大,但是这种方式应该不会有多大效果。

限制每个IP连接数

这种方式因该是相当有效的。

设置每个 IP 只能建立20个连接

iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j REJECT --reject-with tcp-reset

参考

https://my.oschina.net/u/4369742/blog/3484553
https://www.cnblogs.com/Cl0ud/p/13409171.html

http慢速拒绝服务攻击相关推荐

  1. pache tomcat慢速HTTP拒绝服务攻击安全问题解决办法

    pache tomcat慢速HTTP拒绝服务攻击安全问题解决办法 参考文章: (1)pache tomcat慢速HTTP拒绝服务攻击安全问题解决办法 (2)https://www.cnblogs.co ...

  2. 检测到目标主机可能存在缓慢的HTTP拒绝服务攻击

    受影响站点    *********** 详细描述    缓慢的HTTP拒绝服务攻击是一种专门针对于Web的应用层拒绝服务攻击,攻击者操纵网络上的肉鸡,对目标Web服务器进行海量HTTP请求攻击,直到 ...

  3. 服务器存在缓慢的HTTP拒绝服务攻击

    目录 1️⃣漏洞验证 2️⃣漏洞利用 3️⃣漏洞由来 4️⃣攻击原理 5️⃣慢速攻击分类 6️⃣解决办法 WebSphere Weblogic Nginx Apache IHS服务器 F5负载均衡 I ...

  4. 缓慢的HTTP拒绝服务攻击漏洞

    漏洞介绍 缓慢的HTTP拒绝服务攻击是一种专门针对于Web的应用层拒绝服务攻击,攻击者操纵网络上的肉鸡,对目标Web服务器进行海量HTTP请求攻击,直到服务器带宽被打满,造成了拒绝服务. 慢速HTTP ...

  5. 缓慢的 HTTP 的拒绝服务攻击

    1.描述 缓慢的http拒绝服务攻击是一种专门针对于Web的应用层拒绝服务攻击,攻击者操纵网络上的肉鸡,对目标Web服务器进行海量http request攻击,直到服务器带宽被打满,造成了拒绝服务. ...

  6. [渗透]缓慢的HTTP拒绝服务攻击原理、利用和防范

    漏洞等级:中 Slow HTTP Denial of Service Attack 缓慢的HTTP拒绝服务攻击 TCP三次握手: 攻击原理: 对任何一个开放了http访问的服务器,先建立一个连接,指定 ...

  7. 剖析拒绝服务攻击-SYN拒绝服务(转)

    剖析"拒绝服务"攻击-SYN拒绝服务(转) 一.洪水――大自然对人类的报复 每一年,自然界都要用各种方式去报复人们对它做的一切,例如洪水. 每一年,人们都要为洪水后满地的狼籍和可能 ...

  8. http拒绝服务攻击(Avws复现)

    1.声明:本文仅限学习研究讨论,切忌做非法乱纪之事! 什么是HTTP慢速攻击? HTTP慢速攻击是利用HTTP合法机制,以极低的速度往服务器发送HTTP请求,尽量长时间保持连接,不释放,若是达到了We ...

  9. 【网络安全】——服务端安全(注入攻击、认证与会话管理和访问控制、访问控制、加密算法与随机数、Web框架安全、应用层拒绝服务攻击DDOS)

    这一篇博客记录的是服务端安全应用安全的知识,学习内容来自<白帽子讲Web安全>. ​ 承接自上一篇客户端安全之后,包括注入攻击.认证与会话管理和访问控制.访问控制.加密算法与随机数.Web ...

最新文章

  1. 远程办公,为什么一直不被公司普遍接受?
  2. 在android布局中使用include和merge标签
  3. 被5月GitHub Top20榜单惊呆了 原来区块链大佬都在做这个
  4. 室内空气流动原理图_新风系统原理图—新风系统原理介绍
  5. 数据库流行度11月排行榜:Oracle 意外滑落和 PostgreSQL 再创新高
  6. [u]intN_t - uint8_t, uint16_t, uint32_t, uint64_t
  7. 蓝桥杯 ADV-14 算法提高 卡勒沃夫之弱水路三千(提高型)
  8. 在Ruby中,如何跳过.each循环中的循环,类似于‘continue‘[duplicate]
  9. ztree 后台异步加载_ztree 异步加载示例
  10. ISO9001、ISO14001和ISO45001体系审核时需要准备哪些资料?
  11. 揭秘360手机助手未经用户同意,自动开启辅助的“黑科技”
  12. Java大型工程项目管理系统源码,原生APP源码,建筑工程管理源码
  13. Windows 常见后缀名
  14. HTML5期末大作业:电影网站设计——电影资讯博客(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 web学生网页设计作业源码
  15. Linux查看目录大小文件大小内存大小硬盘大小
  16. 升级打怪课堂的题库更新了!
  17. 20200614在ubuntu20.04的本地编译全志R系列的步骤20
  18. 2021年金属非金属矿山(小型露天采石场)安全管理人员复审考试及金属非金属矿山(小型露天采石场)安全管理人员考试申请表
  19. C++代码重用(一)
  20. Ubuntu双系统安装

热门文章

  1. 单片机基础:什么是中断系统、中断系统如何用(附中断系统应用实例)
  2. HDU Max Sum Plus Plus
  3. 人人网开心农场小帮手
  4. 扒一扒航测人口中的“黑卡”
  5. 城开云外新中式风格,古典与现代的完美融合,东方诗意尽显。
  6. 数据结构——求树的最大深度或者树高
  7. AndroidStudio,Colors.xml颜色表,配中文注释
  8. 从事了多年总承包现场管理,依然没有真正学会项目管理
  9. 显微镜下的webpack4入门
  10. c语言 循环赛日程表 n=2^k,循环赛日程表分治算法(c语言)