浅谈Slowloris拒绝服务攻击

63 篇文章 1 订阅

0X01 前言

一提起攻击,第一反应就是海量的流量,海量的报文。但是有一种攻击却反其道而行之,以慢著称,以至于有些攻击目标被打死了都不知道是怎么死的,这就是慢速连接攻击,最具代表性的是rsnake发明的SlowLoris。
HTTP协议规定,HTTP Request以rnrn结尾表示客户端发送结束,服务端开始处理。那么,如果永远不发送\r\n\r\n会如何?SlowLoris就是利用这一点来做DDoS攻击。攻击者在HTTP请求头中将Connection设置为Keep-Alive,要求Web Server保持TCP连接不要断开,随后缓慢的每隔几分钟发送一个key value格式的数据到服务端,如a:b\r\n,导致服务端认为HTTP头部没有接收完成而一直等待。如果攻击者使用多线程或者傀儡机来做同样的操作,服务器的WEB容器很快就被攻击者占满了TCP连接而不再接受新的请求。

 

0X02 演示

下面就采用slowloris攻击虚拟机测试,附上下载地址

服务器:www.dvwa.com  IP:10.10.10.103

攻击机:10.10.10.106

1,获取keep-alive时间: slowloris.pl  -dns www.dvwa.com -port 80 -test

可以看到,默认的时间是90s。

./slowloris.pl -dns www.dvwa.com -timeout 90 -cache -num 2000

下面看一下实际的效果:

建立了很多的连接

发送http header 维持连接

现象

0X04 结论

这种慢速攻击很类似于http flood,http flood是消耗服务器的资源,包括数据库服务器。但是它们之间又是有所区别的,慢速攻击就是要维持跟服务器的连接,导致正常客户端的连接不能建立,从而达到拒绝服务的目的。

对于这种慢速攻击的防御,可以简单的依据其特征,修改些参数即可,包括:限制单机IP的连接数、限制http request header/body 的超时时间、包括其头部包含的字段也是其特征。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值