http慢速攻击漏洞修复(代码片段)

zhangzhen02 zhangzhen02     2023-01-14     757

关键词:

原理

漏洞原理

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

3种攻击方式

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

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

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

漏洞验证

我这里使用docker方式,感觉方便快捷,命令分享如下:

下载镜像
docker pull shekyan/slowhttptest:latest

slowloris攻击模拟
docker run -it --rm shekyan/slowhttptest -c 1000 -H -g -o my_header_stats -i 10 -r 200 -t GET -u http://ip:port/ -x 24 -p 3

查看对应IP服务器上的连接情况:
命令:netstat -anp |grep 8081 |wc -l

发现已经建立的1002个连接,并持续保持。
这就说明,存在http慢速攻击漏洞。如果加大攻击数量,则会耗尽服务器tcp连接资源,导致服务不可用。

修复漏洞

修改tomcat配置
修改tomcat server.xml中的

<Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="8000"
               disableUploadTimeout="true"
               disableUploadTimeout="true"
               redirectPort="18443"
                           URIEncoding="utf-8"
               maxPostSize="-1"
               maxHttpHeaderSize ="102400"/>

其中connectionTimeout更改为了8000,并增加了disableUploadTimeout="true"参数

保存后重启服务再测

发现攻击连接很快超时关闭,说明漏洞被修复。

其他事宜

另外两种攻击测试方式:

Slow Body攻击:
docker run -it --rm shekyan/slowhttptest  -c 1000 -B -g -o my_body_stats -i 110 -r 200 -s 8192 -t FAKEVERB -u http://ip:port/ -x 10 -p 3

Slow Read模式:
docker run -it --rm shekyan/slowhttptest  -c 1000 -X -r 1000 -w 10 -y 20 -n 5 -z 32 -u http://ip:port/ -p 5 -l 350 -e x.x.x.x:8080

命令字段含义

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

以上。

nginx漏洞扫描及修复方案(代码片段)

...击,直到服务器带宽被打满,造成了拒绝服务。慢速HTTP拒绝服务攻击经过不断的演变和发展,主要有三种攻击类型,分别是Slowheaders、Slowbody、Slowread。以Slowheaders为例,Web应用在处理HTTP请求之前都要先接收完... 查看详情

服务器存在缓慢的http拒绝服务攻击(代码片段)

...洞验证2️⃣漏洞利用3️⃣漏洞由来4️⃣攻击原理5️⃣慢速攻击分类6️⃣解决办法WebSphereWeblogicNginxApacheIHS服务器F5负载均衡IIS服务器1️⃣漏洞验证ip:X.X.X.X,TTL>220s2️⃣漏洞利用Kali上安装测试工具SlowHttpTestsudoapt-getinstallslowhttpt... 查看详情

服务器存在缓慢的http拒绝服务攻击(代码片段)

...洞验证2️⃣漏洞利用3️⃣漏洞由来4️⃣攻击原理5️⃣慢速攻击分类6️⃣解决办法WebSphereWeblogicNginxApacheIHS服务器F5负载均衡IIS服务器1️⃣漏洞验证ip:X.X.X.X,TTL>220s2️⃣漏洞利用Kali上安装测试工具SlowHttpTestsudoapt-getinstallslowhttpt... 查看详情

nginx漏洞扫描及修复方案(代码片段)

目录漏洞扫描结果漏洞扫描缓慢的HTTP拒绝服务攻击漏洞等级:中修改建议Nginx修复建议具体nginx配置文件WebSphere修复建议Weblogic修复建议Apache修复建议IHS服务器F5负载均衡修复建议IIS服务器漏洞扫描结果漏洞扫描OSS2.0物联网创... 查看详情

漏洞修复web服务器http设置漏洞(代码片段)

...TP头信息公开远程Web服务器发送的HTTP标头公开了可以帮助攻击者的信息,例如Web服务器使用的服务器版本和语言。默认的nginxHTTP服务器设置远程网络服务器包含默认设置,例如启 查看详情

安全:httphost头攻击漏洞(代码片段)

nginx中修复:第一种(默认server):serverlisten443default;server_name_;location/return403;第二种(特定server):if($http_Host!~*^192.168.1.32:443$)return403;这种方法在重新加载配置时报错了 查看详情

log4j2远程执行代码漏洞如何攻击?又如何修复(代码片段)

Log4j2远程执行代码漏洞如何攻击?又如何修复12月9日晚,ApacheLog4j2反序列化远程代码执行漏洞细节已被公开,ApacheLog4j-2中存在JNDI注入漏洞,当程序将用户输入的数据进行日志记录时,即可触发此漏洞,成功利... 查看详情

常见安全漏洞及修复方案(代码片段)

1.1跨站脚本(XSS)漏洞漏洞描述跨站脚本攻击(CrossSiteScripting,XSS)发生在客户端,可被用于进行窃取隐私、钓鱼欺骗、偷取密码、传播恶意代码等攻击行为。恶意的攻击者将对客户端有危害的代码放到服务器上作为一个... 查看详情

sh修复了raspberrypi上的慢速鼠标(代码片段)

查看详情

cve-2020-27986(sonarqube敏感信息泄漏)漏洞修复(代码片段)

...rqube的漏洞CVE-2020-27986修复方案。SonarQube8.4.2.36762允许远程攻击者通过api/settings/valuesURI发现明文SMTP、SVN和GitLab凭据。注意:据报道,供应商对SMTP和SVN的立场是“配置它是管理员的责任”。该漏洞为2020年10月披露,近期... 查看详情

安全测试web安全测试常规安全漏洞可能存在sql和js注入漏洞场景分析。为什么自己没有找到漏洞,哪么可能存在漏洞场景是?sql注入漏洞修复js注入漏洞修复漏洞存在场景分析和修复示例(代码片段(代码片段

...eb常规安全漏洞问题介绍和防范说明,如:SQL注入攻击、XSS跨站点脚本攻击、JS注入、注释与异常信息泄露、跨站点请求伪造、路径遍历与强制浏览、越权访问类常见网络安全问题是什么?_BenjaminCSDN博客-CSDN博客    ... 查看详情

options漏洞修复(代码片段)

...OPTIONS方法可能会暴露一些敏感信息,这些信息将帮助攻击者准备更进一步的攻击。不同的项目,可以通过不同的方法进行修复,在此记录一下几种情况:更改Nginx的配置;更改Tomcat参数;SpringBoot项目增加... 查看详情

jquerycve-2019-11358原型污染漏洞分析和修复建议(代码片段)

...通告,通报了漏洞编号为CVE-2019-11358的原型污染漏洞。由攻击者控制的属性可被注入对象,之后或经由触发JavaScript异常引发拒绝服务,或篡改该应用程序源代码从而强制执行攻击者注入的代码路径。奇安信代码卫士将持续关注该... 查看详情

androidwebview历史高危漏洞与攻击面分析(代码片段)

...录前言WebView基础极简Demo程序JS调用Android加载远程HTML接口攻击场景漏洞示例程序本地攻击程序url白名单校验代码执行漏洞JAVA反射机制历史漏洞POC漏洞修复方案跨域访问漏洞File协议风险通用协议风险漏洞防御策略总结前言WebView是... 查看详情

androidwebview历史高危漏洞与攻击面分析(代码片段)

...录前言WebView基础极简Demo程序JS调用Android加载远程HTML接口攻击场景漏洞示例程序本地攻击程序url白名单校验代码执行漏洞JAVA反射机制历史漏洞POC漏洞修复方案跨域访问漏洞File协议风险通用协议风险漏洞防御策略总结前言WebView是... 查看详情

IIS headerWaitTimeout ssems 对慢速 HTTP 标头攻击没有影响

】IISheaderWaitTimeoutssems对慢速HTTP标头攻击没有影响【英文标题】:IISheaderWaitTimeoutssemstohavenoeffectonslowHTTPheaderattacks【发布时间】:2021-02-0110:53:22【问题描述】:我正在尝试提供一些形式的缓解或缓解使用IIS的慢速HTTPPOST攻击。不幸... 查看详情

慢速http拒接服务攻击(dos)复现

...                      在进行慢速DOS攻击期间打开相应页面服 查看详情

csrf漏洞(代码片段)

目录一、简介与原理二、简单攻击方式 通过GET方式实现CSRF攻击通过POST请求实现CSRF攻击三、与XSS以及SSRF的区别四、相关检测方法五、相关预防与修复方案用户侧开发侧一、简介与原理        CSRF(Cross-SiteRequestForgeryÿ... 查看详情