不浪费大家时间去看这个吧:https://www.cnblogs.com/andashu/p/6344306.html
前言
今天用awvs给网站做扫描,然后AWVS报了个慢速HTTP拒绝服务攻击
为了方便大家复制,文字版的也放在下面
### Slow HTTP Denial of Service Attack
`Medium` `Open`
##### Vulnerability description
Your web server is vulnerable to Slow HTTP DoS (Denial of Service) attacks.
Slowloris and Slow HTTP POST DoS attacks rely on the fact that the HTTP protocol, by design, requires requests to be completely received by the server before they are processed. If an HTTP request is not complete, or if the transfer rate is very low, the server keeps its resources busy waiting for the rest of the data. If the server keeps too many resources busy, this creates a denial of service.
Discovered by `Slow_HTTP_DOS`
##### Attack details
Time difference between connections: 10813 ms
##### The impact of this vulnerability
A single machine can take down another machine's web server with minimal bandwidth and side effects on unrelated services and ports.
##### How to fix this vulnerability
Consult Web references for information about protecting your web server against this type of attack.
##### Classification
CVSS Base score: 5.3 — CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Attack Vector: Network
Attack Complexity: Low
Privileges Required: None
User Interaction: None
Scope: Unchanged
Confidentiality: None
Integrity: None
Availability: Low
##### Web References
[Slowloris DOS Mitigation Guide](http://www.funtoo.org/wiki/Slowloris_DOS_Mitigation_Guide)
[Protect Apache Against Slowloris Attack](http://blog.secaserver.com/2011/08/protect-apache-slowloris-attack/)
原理
漏洞详情请参考(就是上面那个链接):https://www.cnblogs.com/andashu/p/6344306.html
1、Slow Attack 大致可分为以下几种:
-
Slow Header (slowloris):每个 HTTP 请求都是以空行结尾,即以两个 (\r\n)结 尾 。 若将空行去掉 ,即以 一个 (\r\n) 结尾,则服务器会一直等待直到超时。在等待过程中占用线程(连接数),服务器线程数量达到极限,则无法处理新的合法的 HTTP请求,达到DOS目的。
-
Slow Read:向 Web 服务器发送正常合法的 read 请求,请求一个很大的文件,并将 TCP 滑动窗口 size 设置很小如 1 或 2,服务器就会以非常缓慢的速度发送文件,文件将长期滞留在服务器内存中,消耗资源,造成DOS。
-
Slow Post:攻击者向服务器发送 POST 请求,告诉服务器它将要 POST 的数据为 n,服务器将分配长度为 n 的空间来等待接收数据。当 n 足够大, POST 的请求足够多的时候,这种攻击会占用服务器的大量内存,从而降低服务器性能,甚至导致瘫痪。
-
以及多年前的 Apache Range Attack(现已修复):在 HTTP 请求的 RANGE HEADER 中包含大量字段,使得服务器在服务端将一个很小的文件分割成大量的更小的片段再压缩。分段压缩过程消耗大量的服务器资源,导致 DOS。
这个东西还需要给他手动验证一下,这可就为难我了,我没手动验证过啊,没办法,求助百度吧。
在百度上搜了一下,不太满意,一点也不详细(事实证明我是菜鸡)
利用
slowhttptest:
slowloris模式:
slowhttptest -c 1000 -H -g -o my_header_stats -i 10 -r 200 -t GET -u https://host.example.com/index.html -x 24 -p 3
slow post模式:
slowhttptest -c 3000 -B -g -o my_body_stats -i 110 -r 200 -s 8192 -t FAKEVERB -u http://host.example.com/loginform.html -x 10 -p 3
slow read模式:
slowhttptest -c 8000 -X -r 200 -w 512 -y 1024 -n 5 -z 32 -k 3 -u https://host.example.com/resources/index.html -p 3
大多是介绍了一下slowhttptest这个工具,简单讲了一下安装,但是像我这种菜鸡遇到这个也不会解决啊,烦死了
但我依稀好像在哪里看过MSF上好像有一个慢速HTTP拒绝服务攻击
的模块,工具介绍的话看看这个https://www.fujieace.com/hacker/tools/slowloris-dos.html/
在msf里查找一下,msf里面这个只是slow http attack 三种模式中的一种
基本上用默认配置也就行了
正常访问只需要567毫秒
开启httpslow 攻击后,访问速度变慢,然后直到无法访问网站
那个slowhttptest我竟然在parrot上安装成功了
这是安装教程:https://www.cnblogs.com/shenlinken/p/7400336.html
安装的过程中遇到一个configure: error: OpenSSL-devel is missing
的问题,这个只需要下载个模块就好了
sudo apt-get install libssl-dev
其实kali报错也是少了个模块,安装一下就好了
修复
这个以后补充吧
可以看看这位师傅的:https://www.cnblogs.com/v1vvwv/p/slowHTTPtest-attack-and-defense.html
https://www.cnblogs.com/andashu/p/6344306.html
http://help.cloud.nsfocus.com/hc/kb/article/1063714/
https://blog.csdn.net/meiru8/article/details/38726025?depth_1-