zoukankan      html  css  js  c++  java
  • 什么是CC攻击,如何防止网站被CC攻击的方法总汇

    CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,也是一种常见的网站攻击方法,攻击者通过代理服务器或者肉鸡向向受害主机不停地发大量数据包,造成对方服务器资源耗尽,一直到宕机崩溃。

    CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,也是一种常见的网站攻击方法,攻击者通过代理服务器或者肉鸡向向受害主机不停地发大量数据包,造成对方服务器资源耗尽,一直到宕机崩溃。

      CC攻击的攻击技术含量低,利用工具和一些IP代理,一个初、中级的电脑水平的用户就能够实施攻击。不过,如果了解了CC攻击的原理,那就不难针对CC攻击实施一些有效的防范措施。

      通常防止CC攻击的方法有几种,一个是通过防火墙,另外一些网络公司也提供了一些防火墙服务,例如XX网站卫士和XX宝,还有一种方法是自己写程序预防,昨天网站遇到CC攻击,这也让我尝试了一下各种防止CC攻击方法的有效性。

      一开始我想使用某某网站卫士来预防攻击,从界面上看,似乎是防止了大量的CC攻击,但登录网站后发现,流量依旧异常,攻击还是依旧,看起来这个网站卫士的效果并没有达到。

      从原理上看,基本上所有的防火墙都会检测并发的TCP/IP连接数目,超过一定数目一定频率就会被认为是Connection-Flood。但如果IP的数量足够大,使得单个IP的连接数较少,那么防火墙未必能阻止CC攻击。

      实际上,通过分析网站日志,还是很容易分辨出哪个IP是CC攻击的,因为CC攻击毕竟是通过程序来抓取网页,与普通浏览者的特性区别还是很大 的,例如普通浏览者访问一个网页,必定会连续抓取网页的HTML文件、CSS文件、JS文件和图片等一系列相关文件,而CC攻击者仅仅只会抓取一个URL 地址的文件,不会抓取其他类型的文件,其User Agent也大部分和普通浏览者不同,这就可以在服务器上很容易分辨出哪些访问者是CC攻击了,既然可以判断出攻击者的IP,那么预防措施就很简单,只需 要批量将这些IP屏蔽,即可达到防范CC攻击的目的。

      最终,我花了半个小时写了一段小程序,运行之后自动屏蔽了数百个IP,网站才算正常,从而证明,防火墙对于CC攻击的防御并不有效,最有效的方法还是在服务器端通过程序自动屏蔽来预防。

      看来CC攻击的门槛还真低啊,搞个几百个代理或者肉鸡就能攻击别人了,其成本非常低,但效果比较明显,如果攻击者流量巨大的话,通过耗费带宽资 源的方式都可以进行攻击。但是,CC攻击也有明显的技术缺陷,就是攻击者的IP并不是海量的,通常就是几百数千的级别,并且是真实访问了网站页面,这就使 得网站可以通过程序过滤的方式,轻松获取到这些攻击者IP,批量进行屏蔽,那么这种CC攻击就会得到防。    

    IIS专家CC防御系统 这是一款针对CC防御效果还是不错的软件,现在推荐给大家

    IIS专家

    下载地址http://www.jb51.net/softs/43858.html

    以下对IIS专家CC防御功能进行演示

        CC攻击,与DDOS、UDP、SYN Flood并为当今最流行的四大攻击方式,硬件防火墙防御UDP等效果较好,但对于CC这种全连接攻击,软件防御更占优势;
        CC防御的原理概括:利用代理或者肉鸡的方式,对某服务器某个(某些)消耗资源较大的处理过程(文件)进行大量请求,远远超出服务器的处理能力,导致服务器瘫痪,无法响应正常请求;
        基本特征:可以通过cmd命令:netstat –an查看当前TCP连接数,如果发现许多重复的等待连接数,如"TCP 211.87.147.4:80 220.10.69.67:2205 SYN_RECEIVED 4",并且服务器CPU一直100%,带宽使用也很高,停止网络服务后CPU使用恢复正常,这种情况基本可以断定为CC攻击。
        IIS专家的CC防御,相比其它软件的防御,有着智能防御的优势,不影响正常用户的访问,我们接下来进行演示:

    一、 CC防御基本信息设置:
        我们先设置CC防御后发送到客户端浏览器的提示信息,如图1:


    图1 设置CC攻击拦截提示信息

        接下来对CC防御基本参数进行设置,图2:


    图2 CC防御基本参数设置

        关于防御性能指数,如果不能防御CC,我们可以设置的更低一些,比如8-15之间即可。
        设置好后,让我们继续:
    二、 拒绝代理访问:
        1、 普通CC利用代理发动攻击,我们选中图2中的【拒绝所有代理访问】就可以很好的防止代理访问的攻击。设置好浏览器的代理,打开测试页面,如图3:


    图3 禁止代理访问服务器示意图

    三、 防御恶意刷新演示:
        1、 图2中,设置单IP连接数访问上限为15(表示每个IP一秒内允许对某个页面进行15次请求),超过该上限即认为恶意刷新,系统进行拦截,如图4:


    图4 拦截单IP恶意刷新示意图

        该IP被拦截后,根据图2的【防御解锁时间】,该时间过后该IP自动解封,如果继续发动攻击,则继续重新拦截!拦截后,能立即生产拦截日志:blacklist_ip.log

    四、 防御肉鸡攻击演示(以半自动过滤为例):
        比较高级的CC攻击,除了使用代理,也使用肉鸡的方式进行攻击,导致服务器不堪重负,IIS专家如果发现肉鸡攻击,立即会要求访问该页面的用户输入验证,验证后用户可以正常访问,同时,服务器其他未被攻击的页面可以照常访问,丝毫无影响,图5:


    图5 输入验证码后即可正常访问

        该页面被防护后,根据图2的【防御解锁时间】,该时间过后该页面的防御自动解除,如果继续被攻击,则IIS专家将对该页面继续重新防护!拦截后,能立即产生日志:blacklist_cc.log

    五、 IP黑名单:
        对于不信任的IP,可以将其直接加入黑名单,阻止对服务器进行访问,如图6:


    图6 设置IP黑名单

        设置IP"127.0.0.1"到黑名单,通过该IP访问的用户就会被拦截,如图7:


    图7 拦截IP示意图

        CC防御后,IIS专家会记录攻击日志,如图5:


    图5 在主控端看到的CC防御日志

    六、 总结:

        1、 IIS专家测试过成功防御8000TCP连接攻击;
        2、 CC防御效果与很多因素有关系,包括防御规则设置、服务器本身参数、非法用户攻击对象、非法用户攻击方式等;
        3、 为了更加人性化,IIS专家不会鲁莽地对正常用户进行拒绝, 而白名单制度很好的解决了这个问题;

  • 相关阅读:
    【Linux命令】mysql数据库常用操作命令
    【Linux命令】Ubuntu14.04+QT5.2配置mysql
    【Linux命令】数据库mysql配置命令
    【Linux命令】杀死僵尸程序
    【Linux命令】配置ssh远程连接步骤
    【QT相关】对话框相关
    【QT相关】Image Viewer Example
    【QT相关】Qt Widgets Module
    【QT相关】类头文件解读、QT编辑模式、读取text文本
    【QT相关】QT+opencv环境配置
  • 原文地址:https://www.cnblogs.com/Larry115/p/4557666.html
Copyright © 2011-2022 走看看