CC攻击(Challenge Collapsar)是DDOS(散布式谢绝服务)的一种,也是一种常见的网站攻击方法,攻击者通过代理服务器或肉鸡向向受害主机不停地发大量数据包,造成对方服务器资源耗尽,一直到宕机崩溃。
CC攻击的攻击技术含量低,利用工具和一些IP代理,一个初、中级的电脑水平的用户就可以够实行攻击。不过,如果了解了CC攻击的原理,那就不难针对CC攻击实行一些有效的防范措施。
通常避免CC攻击的方法有几种,一个是通过防火墙,另外一些高防服务器也提供了一些防火墙服务,例如XX网站卫士和XX宝,还有一种方法是自己写程序预防,昨天网站遇到CC攻击,这也让我尝试了一下各种避免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攻击就会得到防。
手头有几个网站:1个Z-Blog的博客、1个phpwind论坛、1个Discuz!论坛,流量又都不高,所以用个512M内存的VPS也足够用了,平时速度也还不错。
但是……网站算是网络安全类的,所以,对网站的攻击隔三差五也是有的。还好,多数时候是扫描、踩点,用某安全监控软件检测到的攻击企图最多的一天竟然有8万次……不过由于装有安全软件,一般的SQL注入等攻击或者没甚么问题的——直到遇到CC攻击。
最开始的表现是w3wp.exe耗费CPU资源,从30%一直到100%。
刚开始以为是程序或数据库问题,查看了VPS上的程序,发现没有被篡改,然后对.mdb数据库进行了紧缩,但是发现没效果。这个时候,我感觉,是遇到攻击了……因而下载了分析软件,发现大量要求是对Z-Blog博客程序的catalog.asp进行多参数提交,这个文件可以读取tags,而我网站的tags又比较多,所以频繁的查询必定造成性能的急剧降落。
可以看到,catalog.asp文件(其实还有几个,但是这个文件最明显)的履行速度,已到了让人无可忍耐的地步!
我想过把catalog.asp等文件删除或改名:但是其实不能解决问题。删除这个文件酿成的流量损失和功能损失是我不能接受的;改名的话攻击者照样可以用改名后的文件进行攻击。
其实,针对这样的攻击,手工能做的事情非常有限!
找了几款安全防护软件,多数对CC的防范效果都不算好,不能说完全无效,却只有有限的防御效果。因而,终究我装上了安全狗!
安全狗分为2个版本:服务器安全狗、网站安全狗。前者主要对服务器进行安全防范,后者主要对WEB服务器进行安全防护。对Web服务器而言,建议2个一起装。
在服务器安全狗开启DDoS防护功能:
在网站安全狗上开启CC攻击防护功能:
然后……对,和我想的一样,服务器的CPU占用率就下来了。虽然还会有瞬间占用太高,但是网站的浏览不再遭到影响,目的已到达。
然后看了下这两款软件,功能或者蛮多的:
服务器安全狗:系统漏洞修复、注册表优化、垃圾清算、帐号安全防护、远程桌面防护、利用程序守护、系统资源守护、定时操作、DDOS防火墙、ARP防火墙、网络监控、IP防火墙、邮件告警等。
网站安全狗:网页木马扫描、主动防御(SQL注入防护)、网站资源防盗链、网站特定资源保护、CC攻击防护、多线程下载控制、IP黑白名单等。
安全狗两款产品的安装配置非常人性化,基本上“下一步”就能够完成部署。并且可以方便的进行系统加固和WEB安全防护,非常合适个人站长、IDC使用。
安全狗我的服务器安全专家。