CC攻击可以归为DDoS攻击的一种。他们之间的原理都是一样的,即发送大量的请求数据来导致服务器拒绝服务,使用代理服务器向受害服务器发送大量貌似合法的请求,是一种连接攻击。CC攻击会导致大量服务器资源被占用,造成服务器资源浪费,致使无法正常方面,或者访问缓慢。
CC攻击有一定的隐蔽性,判断是否有CC攻击可以通过以下三个方法来确定:
1.可以通过在命令行下输入命令netstat -an来查看,"SYN_RECEIVED"是TCP连接状态标志,意思是"正在处于连接的初始同步状态 ",一般遭受CC攻击时,Web服务器会出现80端口对外关闭的现象, 表明无法建立握手应答处于等待状态。这就是攻击的特征,一般情况下这样的记录一般都会有很多条,表示来自不同的代理IP的攻击。
2.可以建立一个批处理文件,通过该脚本代码确定是否存在CC攻击。脚本筛选出当前所有的到80端口的连接。当感觉服务器异常时就可以双击运行该批处理文件,然后在打开的log.log文件中查看所有的连接。如果同一个IP有比较多的到服务器的连接,那就基本可以确定该IP正在对服务器进行CC攻击。
3.可以通过系统日志判断,Web日志一般在C:\WINDOWS\system32\LogFiles\HTTPERR目录下,该目录下用类似httperr1.log的日志文件,这个文件就是记录Web访问错误的记录。管理员可以依据日志时间属性选择相应的日志打开进行分析是否Web被CC攻击了。
CC攻击要如何防御:
1.升级服务器本身的硬件水准,资金允许的情况下,这是最简单的一种方法,这个方法并不是针对CC攻击的,而是提升服务本身处理并发的能力,但确实提升了对CC攻击的承载能力。
2.屏蔽IP,可以通过命令或查看日志查看攻击的源IP,在防火墙中设置屏蔽该IP对Web站点的访问,从而达到防范攻击的目的。
3.更改web端口,web服务器一般通过80端口提供服务,因此攻击者实施攻击就以默认的80端口进行攻击。通过修改Web端口达到防CC攻击的目的。运行IIS管理器,定位到相应站点,打开站点"属性"面板,在"网站标识"下有个TCP端口默认为80,可以将其修改为其他端口。
4.可以接入相应的高防产品,提升配置,屏蔽拉黑IP,修改端口并不能有效处理CC攻击的问题,因为我们不能一直去操作修改端口,屏蔽拉黑IP,时间成本太高。可以接入相应的防护产品与高防服务器,自动匹配CC防护的策略,防护CC攻击。