CC攻击介绍
CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,前身名为Fatboy攻击,也是一种常见的网站攻击方法。攻击者借助代理服务器生成指向受害主机的合法请求,实现DDOS和伪装就叫:CC(ChallengeCollapsar)。
CC主要是用来攻击页面的。攻击者通过代理服务器或者肉鸡向向受害主机不停地发大量数据包,造成对方服务器资源耗尽,一直到宕机崩溃。相比其它的DDOS攻击CC似乎更有技术含量一些。这种攻击你见不到真实源IP,见不到特别大的异常流量,但造成服务器无法进行正常连接。最让站长们忧虑的是这种攻击技术含量低,利用更换IP代理工具和一些IP代理一个初、中级的电脑水平的用户就能够实施攻击。
CC攻击的原理
CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃。CC主要是用来攻击页面的,每个人都有这样的体验:当一个网页访问的人数特别多的时候,打开网页就慢了,CC就是模拟多个用户(多少线程就是多少用户)不停地进行访问那些需要大量数据操作(就是需要大量CPU时间)的页面,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的连接直至就网络拥塞,正常的访问被中止。
CC攻击防御方法
1. 利用Session做访问计数器:利用Session针对每个IP做页面访问计数器或文件下载计数器,防止用户对某个页面频繁刷新导致数据库频繁读取或频繁下载某个文件而产生大额流量。(文件下载不要直接使用下载地址,才能在服务端代码中做CC攻击的过滤处理)
2. 把网站做成静态页面:大量事实证明,把网站尽可能做成静态页面,不仅能大大提高抗攻击能力,而且还给骇客入侵带来不少麻烦,至少到现在为止关于HTML的溢出还没出现,看看吧!新浪、搜狐、网易等门户网站主要都是静态页面,若你非需要动态脚本调用,那就把它弄到另外一台单独主机去,免的遭受攻击时连累主服务器。
3. 增强操作系统的TCP/IP栈:Win2000和Win2003作为服务器操作系统,本身就具备一定的抵抗DDOS攻击的能力,只是默认状态下没有开启而已,若开启的话可抵挡约10000个SYN攻击包,若没有开启则仅能抵御数百个,具体怎么开启,自己去看微软的文章吧!《强化 TCP/IP 堆栈安全》。也许有的人会问,那我用的是Linux和FreeBSD怎么办?很简单,按照这篇文章去做吧!《SYN Cookies》。
4. 在存在多站的服务器上,严格限制每一个站允许的IP连接数和CPU使用时间,这是一个很有效的方法。CC的防御要从代码做起,其实一个好的页面代码都应该注意这些东西,还有SQL注入,不光是一个入侵工具,更是一个DDOS缺口,大家都应该在代码中注意。举个例子吧,某服务器,开动了5000线的CC攻击,没有一点反应,因为它所有的访问数据库请求都必须一个随机参数在Session里面,全是静态页面,没有效果。突然发现它有一个请求会和外面的服务器联系获得,需要较长的时间,而且没有什么认证,开800线攻击,服务器马上满负荷了。代码层的防御需要从点点滴滴做起,一个脚本代码的错误,可能带来的是整个站的影响,甚至是整个服务器的影响!
5. 服务器前端加CDN中转(免费的有百度云加速、360网站卫士、加速乐、安全宝等),如果资金充裕的话,可以购买高防的盾机,用于隐藏服务器真实IP,域名解析使用CDN的IP,所有解析的子域名都使用CDN的IP地址。此外,服务器上部署的其他域名也不能使用真实IP解析,全部都使用CDN来解析。
另外,防止服务器对外传送信息泄漏IP地址,最常见的情况是,服务器不要使用发送邮件功能,因为邮件头会泄漏服务器的IP地址。如果非要发送邮件,可以通过第三方代理(例如sendcloud)发送,这样对外显示的IP是代理的IP地址。
总之,只要服务器的真实IP不泄露,10G以下小流量DDOS的预防花不了多少钱,免费的CDN就可以应付得了。如果攻击流量超过20G,那么免费的CDN可能就顶不住了。
以上内容来源于:公众号: EMLab攻防实验室 及百度百科