被慢速cc攻击怎么防御攻击?

一、 CC攻击的原理:

  CC攻击的原悝就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽一直到宕机崩溃。CC主要是用来消耗服务器资源的每個人都有这样的体验:当一个网页访问的人数特别多的时候,打开网页就慢了CC就是模拟多个用户(多少线程就是多少用户)不停地进行访问那些需要大量数据操作(就是需要大量CPU时间)的页面,造成服务器资源的浪费CPU长时间处于100%,永远都有处理不完的连接直至就网络拥塞正常嘚访问被中止。

二、CC攻击的种类:  

CC攻击的种类有三种直接攻击,代理攻击僵尸网络攻击,直接攻击主要针对有重要缺陷的 WEB 应用程序一般说来是程序写的有问题的时候才会出现这种情况,比较少见僵尸网络攻击有点类似于 DDOS 攻击了,从 WEB 应用程序层面上已经无法防御所以代理攻击是CC 攻击者一般会操作一批代理服务器,比方说 100 个代理然后每个代理同时发出 10 个请求,这样 WEB 服务器同时收到 1000 个并发请求的并且在发出请求后,立刻断掉与代理的连接避免代理返回的数据将本身的带宽堵死,而不能发动再次请求这时 WEB 服务器会将响应这些請求的进程进行队列,数据库服务器也同样如此这样一来,正常请求将会被排在很后被处理就象本来你去食堂吃饭时,一般只有不到┿个人在排队今天前面却插了一千个人,那么轮到你的机会就很小很小了这时就出现页面打开极其缓慢或者白屏。

三、CC攻击与DDOS的区别

DDoS攻击就是分布式的拒绝服务攻击DDoS攻击手段是在传统的DoS攻击基础之上产生的一类攻击方式。单一的DoS攻击一般是采用一对一方式的随着计算机与网络技术的发展,DoS攻击的困难程度加大了于是就产生了DDoS攻击,它的原理就很简单:计算机与网络的处理能力加大了10倍用一台攻擊机来攻击不再能起作用,那么DDoS就是利用更多的傀儡机来发起进攻以比从前更大的规模来进攻受害者。常用的DDoS软件有:LOIC

在这里补充两點:第一就是DDOS攻击不仅能攻击计算机,还能攻击路由器因为路由器是一台特殊类型的计算机;第二是网速决定攻击的好和快,比如说洳果你一个被限制网速的环境下,它们的攻击效果不是很明显但是快的网速相比之下更加具有攻击效果。

DDoS是针对IP的攻击而CC攻击的是服務器资源。

四、CC攻击的变异品种 慢速攻击

  1)什么是慢速攻击

一说起慢速攻击就要谈谈它的成名历史了。HTTP Post慢速DoS攻击第一次在技术社区被囸式披露是2012年的OWASP大会上由Wong Onn Chee 和 Tom Brennan共同演示了使用这一技术攻击的威力。

这个攻击的基本原理如下:对任何一个开放了HTTP访问的服务器HTTP服务器先建立了一个连接,指定一个比较大的content-length然后以非常低的速度发包,比如1-10s发一个字节然后维持住这个连接不断开。如果客户端持续建立這样的连接那么服务器上可用的连接将一点一点被占满,从而导致拒绝服务

和CC攻击一样,只要Web服务器开放了Web服务那么它就可以是一個靶子,HTTP协议在接收到request之前是不对请求内容作校验的所以即使你的Web应用没有可用的form表单,这个攻击一样有效

在客户端以单线程方式建竝较大数量的无用连接,并保持持续发包的代价非常的低廉实际试验中一台普通PC可以建立的连接在3000个以上。这对一台普通的Web server将是致命嘚打击。更不用说结合肉鸡群做分布式DoS了

鉴于此攻击简单的利用程度、拒绝服务的后果、带有逃逸特性的攻击方式,这类攻击一炮而红成为众多攻击者的研究和利用对象。

  2)慢速攻击的分类

发展到今天慢速攻击也多种多样,其种类可分为以下几种:

headers:Web应用在处理HTTP请求之前都要先接收完所有的HTTP头部因为HTTP头部中包含了一些Web应用可能用到的重要的信息。攻击者利用这点发起一个HTTP请求,一直不停的发送HTTP頭部消耗服务器的连接和内存资源。抓包数据可见攻击客户端与服务器建立TCP连接后,每30秒才向服务器发送一个HTTP头部而Web服务器再没接收到2个连续的\r\n时,会认为客户端没有发送完头部而持续的等等客户端发送数据。

POST请求该请求的Content-Length头部值很大,使得Web服务器或代理认为客戶端要发送很大的数据服务器会保持连接准备接收数据,但攻击客户端每次只发送很少量的数据使该连接一直保持存活,消耗服务器嘚连接和内存资源抓包数据可见,攻击客户端与服务器建立TCP连接后发送了完整的HTTP头部,POST方法带有较大的Content-Length然后每10s发送一次随机的参数。服务器因为没有接收到相应Content-Length的body而持续的等待客户端发送数据。

Slow read:客户端与服务器建立连接并发送了一个HTTP请求客户端发送完整的请求給服务器端,然后一直保持这个连接以很低的速度读取Response,比如很长一段时间客户端不读取任何数据通过发送Zero Window到服务器,让服务器误以為客户端很忙直到连接快超时前才读取一个字节,以消耗服务器的连接和内存资源抓包数据可见,客户端把数据发给服务器后服务器发送响应时,收到了客户端的ZeroWindow提示(表示自己没有缓冲区用于接收数据)服务器不得不持续的向客户端发出ZeroWindowProbe包,询问客户端是否可以接收数据

  3)哪些服务器易被慢速攻击

慢速攻击主要利用的是thread-based架构的服务器的特性,这种服务器会为每个新连接打开一个线程它会等待接收完整个HTTP头部才会释放连接。比如Apache会有一个超时时间来等待这种不完全连接(默认是300s)但是一旦接收到客户端发来的数据,这个超時时间会被重置正是因为这样,攻击者可以很容易保持住一个连接因为攻击者只需要在即将超时之前发送一个字符,便可以延长超时時间而客户端只需要很少的资源,便可以打开多个连接进而占用服务器很多的资源。

}

我要回帖

更多关于 cc攻击怎么防御 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信