相信作为站长,都是希望租用美国服务器搭建的网站或者论坛,可以提高知名度,然后为网站或者论坛带来更多的流量,但是有一点需要警惕,就是出现大量访问的用户,导致页面打开的速度非常缓慢,占用了几乎满额的系统资源的时候。为什么说要警惕呢?因为这很有可能是遭受到了CC攻击。
那么该怎么防御,保障网站的安全呢?说到这个,就有必要了解CC攻击的原理,和如果发现CC攻击的处理,以及CC攻击的防范措施。
一、CC攻击的原理:
CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃。CC主要是用来攻击页面的,每个人都有这样的体验:当一个网页访问的人数特别多的时候,打开网页就慢了,CC就是模拟多个用户(多少线程就是多少用户)不停地进行访问那些需要大量数据操作(就是需要大量CPU时间)的页面,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的连接直至就网络拥塞,正常的访问被中止。
二、CC攻击的种类:
CC攻击的种类有三种,直接攻击,代理攻击,僵尸网络攻击。
直接攻击:主要针对有重要缺陷的WEB应用程序,一般说来是程序写的有问题的时候才会出现这种情况,比较少见。
僵尸网络攻击:类似于DDOS攻击了,从WEB应用程序层面上已经无法防御。
代理攻击:CC攻击者一般会操作一批代理服务器,比方说100个代理,然后每个代理同时发出10个请求,这样WEB服务器同时收到1000个并发请求的,并且在发出请求后,立刻断掉与代理的连接,避免代理返回的数据将本身的带宽堵死,而不能发动再次请求,这时WEB服务器会将响应这些请求的进程进行队列,这样一来,正常请求将会被排在很后被处理,这时就出现页面打开极其缓慢或者白屏。
三、攻击症状
CC攻击有一定的隐蔽性,通过以下三个方法来确定确定服务器正在遭受或者曾经遭受CC攻击:
1.命令行法
一般遭受CC攻击时,Web服务器会出现80端口对外关闭的现象,因为这个端口已经被大量的垃圾数据堵塞了正常的连接被中止了。
2.批处理法
上述方法需要手工输入命令且如果Web服务器IP连接太多看起来比较费劲,我们可以建立一个批处理文件,通过该脚本代码确定是否存在CC攻击。打开记事本键入如下代码保存为CC.bat:
@echooff
time /t >>log.log
netstat -n -p tcp |find ":80">>Log.log
notepad log.log
exit
上面的脚本的含义是筛选出当前所有的到80端口的连接。当我们感觉服务器异常是就可以双击运行该批处理文件,然后在打开的log.log文件中查看所有的连接。如果同一个IP有比较多的到服务器的连接,那就基本可以确定该IP正在对服务器进行CC攻击。
3.查看系统日志
上面的两种方法有个弊端,只可以查看当前的CC攻击,对于确定Web服务器之前是否遭受CC攻击就无能为力了,此时我们可以通过Web日志来查,因为Web日志忠实地记录了所有IP访问Web资源的情况。通过查看日志我们可以Web服务器之前是否遭受CC攻击,并确定攻击者的IP然后采取进一步的措施。
四、CC攻击防御策略
确定Web服务器正在或者曾经遭受CC攻击,需要进行以下操作进行防御:
1.取消域名绑定
2.域名欺骗解析
3.更改Web端口