资讯专栏INFORMATION COLUMN

如何提升防御CC攻击的能力

BlackFlagBin / 755人阅读

摘要:服务器垂直扩展和水平扩容资金允许的情况下,这是最简单的一种方法,本质上讲,这个方法并不是针对攻击的,而是提升服务本身处理并发的能力,但确实提升了对攻击的承载能力。

今天先是看到一篇讨论CC攻击的文章:Nginx防CC攻击,紧接着就有同学在群里问我关于防CC攻击的问题,巧吗?好巧!

什么是CC攻击?

CC攻击是DDoS攻击的一种类型,使用代理服务器向受害服务器发送大量貌似合法的请求(通常使用HTTP GET)。CC(Challenge Collapsar,挑战黑洞)根据其工具命名,攻击者创造性地使用代理机制,利用众多广泛可用的免费代理服务器发动DDoS攻击。许多免费代理服务器支持匿名模式,这使追踪变得非常困难。

本来看了上面那篇文章,觉得虽然写的很用心,还做了样本压测,但仅仅做基于IP的频率限制,从原理上来讲并不实用,为什么呢?其实,作者自己在文末也提到了。

虽然用limit_req_module可以在一定程度上的防止CC攻击,但是有误杀概率;国内宽带用户的IP地址已经大量内网化,几百人共享一个IP的可能性是很大的。

做基于IP的频率限制,误杀的概率确实非常大。在国内,一个小区、一个公司经常会遇到共用IP的情况,而移动网络共用基站的设备更是容易出现相同的公网IP。

墨菲定律第一条就是:任何事物都没有表面看起来那么简单。何况这个看起来一点都不简单,怎么可能只用IP频率限制这一种手段呢?对于CC攻击,其防御必须采用多种方法,而这些方法本质上也是在提高服务器的并发能力。

1. 服务器垂直扩展和水平扩容

资金允许的情况下,这是最简单的一种方法,本质上讲,这个方法并不是针对CC攻击的,而是提升服务本身处理并发的能力,但确实提升了对CC攻击的承载能力。

垂直扩展:是指增加每台服务器的硬件能力,如升级CPU,增加内存,升级SSD固态硬盘等。

水平扩容:是指通过增加提供服务的服务器来提升承载力。

上述扩展和扩容可以在服务的各个层级进行,包括:应用服务器、数据库服务器、缓存服务器等等。

2. 数据缓存(内存级别,不要用文件)

对于服务中具备高度共性,多用户可重用,或单用户多次可重用的数据,一旦从数据库中检索出,或通过计算得出后,最好将其放在缓存中,后续请求均可直接从缓存中取得数据,减轻数据库的检索压力和应用服务器的计算压力,并且能够快速返回结果并释放进程,从而也能缓解服务器的内存压力。

需要注意的是,缓存不要使用文件形式,可以使用redis、memcached等基于内存的no sql缓存服务,并且与应用服务器分离,多带带部署在局域网内。局域网内的网络IO肯定比起磁盘IO要高。当然,为了不使局域网带宽成为瓶颈,千兆网络也是有必要的。

3. 页面静态化

与数据缓存一样,页面数据本质上也属于数据,常见的手段是生成静态化的html页面文件,利用客户端浏览器的缓存功能或者服务端的缓存服务,以及CDN节点的缓冲服务,均可以降低服务器端的数据检索和计算压力,快速相应结果并释放连接进程。

4. 用户级别的调用频率限制

不管服务是有登陆态还是没登陆态,基于session等方式都可以为客户端分配唯一的识别ID(后称作SID),服务端可以将SID存到缓存中。当客户端请求服务时,如果没有带SID(cookie中或请求参数中等),则由服务端快速分配一个并返回。可以的话,本次请求可以不返回数据,或者将分配SID独立出业务服务。当客户端请求时带了合法SID(即SID能在服务端缓存中匹配到),便可以依据SID对客户端进行频率限制。而对于SID非法的请求,则直接拒绝服务。

相比根据IP进行的频率限制,根据SID的频率限制更加精准可控,最大程度的避免误杀的情况。

5. IP限制

最后,IP限制依然可以结合上述规则一起使用,但是可以将其前置到外层的防火墙或负载均衡器上去做,并且可以调大限制的阈值(结合历史统计数量,预测一个极端的访问量阈值,在服务器可承受的范围内,尽量避免误伤),防止恶意访问穿透到应用服务器上,造成应用服务器压力。

扫描下方二维码或者微信搜索[phpjiagoushier],关注我的微信公众号[PHP架构],参与互动交流。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/11239.html

相关文章

  • 什么是高防服务器?高防服务器辨认方法/步骤

    摘要:高防服务器如何辨认通过以上的内容,大家已经了解了高防服务器辨认的方法了,这样在选择高防服务器的时候,就知道该注意什么了。什么是高防服务器?高防服务器主要是指独立单个硬防防御50G以上的服务器,可以为单个客户提供安全维护,总体来看属于服务器的一种,根据各个IDC机房的环境不同,有的提供有硬防,有使用软防。简单来说,就是能够帮助网站拒绝服务攻击,并且定时扫描现有的网络主节点,查找可能存在的安全漏...

    番茄西红柿 评论0 收藏2637
  • UWAF推出IPv6合规解决方案,助力金融政府客户IPv6改造,更有1元体验版尝鲜!

    摘要:近期,又迎来了一次重大升级,主要包括如下重点功能新增华南区域节点扩展包,推出合规解决方案,新增中国内地体验版。后续将进一步支持回源多区域部署等功能,助力政府金融企业快速安全的实现改造。Web系统承载着各企事业单位的门户、注册登录、业务执行等职责,很容易遭受各种类型的恶意流量攻击,影响应用可用性、损害安全性或消耗过多的资源,UCloud Web应用防火墙UWAF则可以有效保护用户的 Web 应...

    Tecode 评论0 收藏0
  • 美国高防服务器怎么样?美国高防服务器注意事项

    摘要:美国高防服务器怎么样高防服务器已经成为现在人们租用服务器时的第一选择,主要是因为现在服务器太容易受到攻击了。有的美国美国高防服务器只能通过自己的方式抵御攻击,对于防御反而无可奈何。美国高防服务器怎么样?高防服务器已经成为现在人们租用服务器时的第一选择,主要是因为现在服务器太容易受到攻击了。美国高防服务器除了价格会高一点,和普通的美国服务器在功能并没有太大的区别。因此在租用美国高防服务器时,在...

    eechen 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<