Slowloris拒绝服务攻击

作者:动易软件 来源:本站原创 点击数: 发布时间:2018年08月01日

之前有客户遇到了Slowloris拒绝服务攻击,处理完也当做学习了一次,分享下过程。

Slowloris是一个影响线程服务器的HTTP拒绝服务攻击。工作原理:

1、制作大量的HTTP请求。

2、定期发送headers(每秒〜15秒)以保持连接的打开状态。

3、除非服务器关闭,否则绝不关闭连接。如果服务器关闭一个连接,我们创建一个新的继续执行相同的操作。

因此:这样就会耗尽服务器线程池,并且服务器无法回复其他人。

解决办法:

这种攻击主要有三种攻击类型,分别是Slow headers、Slow body、Slow read。以Slow headers为例,Web应用在处理HTTP请求之前都要先接收完所有的HTTP头部,因为HTTP头部中包含了一些Web应用可能用到的重要的信息。攻击者利用这点,发起一个HTTP请求,一直不停的发送HTTP头部,消耗服务器的连接和内存资源。那么服务器上可用的连接将一点一点被占满,从而导致拒绝服务。

对于慢速http拒绝服务攻击,我们很难阻止攻击者攻击服务器。但是,我们通常可以考虑用下面的方法来降低攻击的影响:

将系统更新到最新

IIS7以及以上的版本默认拥有Request Limits功能,通过设置HTTP Request属性、设定Header,和设定connectionTimeout, headerWaitTimeout,与minBytesPerSecond来进行防御或者降低攻击造成的影响

IIS7限制HTTP请求URL及query string 长度

设定headers:

设置连接超时: