什么是CC攻击,如何防止网站被CC攻击?

如题所述

  CC主要是用来攻击页面的。就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢,对不?!一般来说,访问的人越多,论坛的页面越多,数据库就越大,被访问的频率也越高,占用的系统资源也就相当可观,现在知道为什么很多空间服务商都说大家不要上传论坛,聊天室等东西了吧。

一个静态页面不需要服务器多少资源,甚至可以说直接从内存中读出来发给你就可以了,但是论坛就不一样了,我看一个帖子,系统需要到数据库中判断我是否有读读帖子的权限,如果有,就读出帖子里面的内容,显示出来——这里至少访问了2次数据库,如果数据库的体积有200MB大小,系统很可能就要在这200MB大小的数据空间搜索一遍,这需要多少的CPU资源和时间?如果我是查找一个关键字,那么时间更加可观,因为前面的搜索可以限定在一个很小的范围内,比如用户权限只查用户表,帖子内容只查帖子表,而且查到就可以马上停止查询,而搜索肯定会对所有的数据进行一次判断,消耗的时间是相当的大。

CC就是充分利用了这个特点,模拟多个用户(多少线程就是多少用户)不停的进行访问(访问那些需要大量数据操作,就是需要大量CPU时间的页面)。很多朋友问到,为什么要使用代理呢?因为代理可以有效地隐藏自己的身份,也可以绕开所有的防火墙,因为基本上所有的防火墙都会检测并发的TCP/IP连接数目,超过一定数目一定频率就会被认为是Connection-Flood。

使用代理攻击还能很好的保持连接,我们这里发送了数据,代理帮我们转发给对方服务器,我们就可以马上断开,代理还会继续保持着和对方连接(我知道的记录是有人利用2000个代理产生了35万并发连接)。

可能很多朋友还不能很好的理解,我来描述一下吧。我们假设服务器A对Search.asp的处理时间需要0.01S(多线程只是时间分割,对结论没有影响),也就是说他一秒可以保证100个用户的Search请求,服务器允许的最大连接时间为60s,那么我们使用CC模拟120个用户并发连接,那么经过1分钟,服务器的被请求了7200次,处理了6000次,于是剩下了1200个并发连接没有被处理。有的朋友会说:丢连接!丢连接!问题是服务器是按先来后到的顺序丢的,这1200个是在最后10秒的时候发起的,想丢?!还早,经过计算,服务器满负开始丢连接的时候,应该是有7200个并发连接存在队列,然后服务器开始120个/秒的丢连接,我们发动的连接也是120个/秒,服务器永远有处理不完的连接,服务器的CPU 100%并长时间保持,然后丢连接的60秒服务器也判断处理不过来了,新的连接也处理不了,这样服务器达到了超级繁忙状态。

蝴蝶:我们假设服务器处理Search只用了0.01S,也就是10毫秒(这个速度你可以去各个有开放时间显示的论坛看看),我们使用的线程也只有120,很多服务器的丢连接时间远比60S长,我们的使用线程远比120多,可以想象可怕了吧,而且客户机只要发送了断开,连接的保持是代理做的,而且当服务器收到SQL请求,肯定会进入队列,不论连接是否已经断开,而且服务器是并发的,不是顺序执行,这样使得更多的请求进入内存请求,对服务器负担更大。

当然,CC也可以利用这里方法对FTP进行攻击,也可以实现TCP-FLOOD,这些都是经过测试有效的。

防范方法

说了攻击原理,大家肯定会问,那么怎么防御?使用硬件防火墙我不知道如何防范,除非你完全屏蔽页面访问,我的方法是通过页面的编写实现防御。

1. 使用Cookie认证。这时候朋友说CC里面也允许Cookie,但是这里的Cookie是所有连接都使用的,所以启用IP+Cookie认证就可以了。

2. 利用Session。这个判断比Cookie更加方便,不光可以IP认证,还可以防刷新模式,在页面里判断刷新,是刷新就不让它访问,没有刷新符号给它刷新符号。给些示范代码吧,Session:

<%if session(“refresh”)<> 1 then
Session(“refresh”)=session(“refresh”)+1
Response.redirect “index.asp”
End if
%>

这样用户第一次访问会使得Refresh=1,第二次访问,正常,第三次,不让他访问了,认为是刷新,可以加上一个时间参数,让多少时间允许访问,这样就限制了耗时间的页面的访问,对正常客户几乎没有什么影响。

3. 通过代理发送的HTTP_X_FORWARDED_FOR变量来判断使用代理攻击机器的真实IP,这招完全可以找到发动攻击的人,当然,不是所有的代理服务器都发送,但是有很多代理都发送这个参数。详细代码:

<%
Dim fsoObject
Dim tsObject
dim file
if Request.ServerVariables("HTTP_X_FORWARDED_FOR")="" then
response.write "无代理访问"
response.end
end if
Set fsoObject = Server.CreateObject("Scripting.FileSystemObject")
file = server.mappath("CCLog.txt")
if not fsoObject.fileexists(file) then
fsoObject.createtextfile file,true,false
end if
set tsObject = fsoObject.OpenTextFile(file,8)
tsObject.Writeline Request.ServerVariables("HTTP_X_FORWARDED_FOR")&"["&Request.ServerVariables("REMOTE_ADDR")&"]"&now()
Set fsoObject = Nothing
Set tsObject = Nothing
response.write "有代理访问"
%>

这样会生成CCLog.txt,它的记录格式是:真实IP [代理的IP] 时间,看看哪个真实IP出现的次数多,就知道是谁在攻击了。将这个代码做成Conn.asp文件,替代那些连接数据库的文件,这样所有的数据库请求就连接到这个文件上,然后马上就能发现攻击的人。

4. 还有一个方法就是把需要对数据查询的语句做在Redirect后面,让对方必须先访问一个判断页面,然后Redirect过去。

5. 在存在多站的服务器上,严格限制每一个站允许的IP连接数和CPU使用时间,这是一个很有效的方法。

CC的防御要从代码做起,其实一个好的页面代码都应该注意这些东西,还有SQL注入,不光是一个入侵工具,更是一个DDOS缺口,大家都应该在代码中注意。举个例子吧,某服务器,开动了5000线的CC攻击,没有一点反应,因为它所有的访问数据库请求都必须一个随机参数在Session里面,全是静态页面,没有效果。突然发现它有一个请求会和外面的服务器联系获得,需要较长的时间,而且没有什么认证,开800线攻击,服务器马上满负荷了。

代码层的防御需要从点点滴滴做起,一个脚本代码的错误,可能带来的是整个站的影响,甚至是整个服务器的影响,慎之!
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-06-07
现在很多都能放掉秘密民中学的
第2个回答  2018-07-01

对于绝大多数的朋友而言,对于CC攻击都是很陌生的,只知道它是一种网络攻击方式,并不知道它是怎么完成攻击的。那么到底CC攻击是什么?如何防止网站被CC攻击呢?

CC攻击是DDOS(分布式拒绝服务)的一种形式,也是近年来一种常见的网站攻击形式,其攻击原理是通过代理服务器或者肉鸡向受害主机不停地发大量数据包,造成对方服务器资源耗尽,直到对方服务器宕机崩溃。不可否认,CC攻击会造成很大的影响,使真正的用户访问不了或者访问很慢,导致大批量用户流失,网站流量骤降,给企业造成巨大的损失。

下面小编给大家分享几种常用的预防CC攻击的方法和方式:

1、使用百度云加速

百度云加速为广大站长免费提供了网站加速,智能高防DNS,防DDOS,预防CC攻击,防黑客和网站在线等服务,是百万站长的共同选择。当然最如果攻击量大的话最好买百度云加速收费版的。相关链接

2、利用IIS屏蔽IP

我们可以在日志文件里面查看CC攻击的ip,然后就可以在IIS中进行设置来屏蔽该IP对Web站点的访问,从而达到防范IIS攻击的目的。

3、设置拒绝代理访问

一般CC攻击可以利用代理发动攻击,我们可以设置“拒绝所有代理访问”就可以很好的防止代理访问的攻击。

4、修改Web端口

一般情况下Web服务器通过80端口对外提供服务,因此攻击者实施攻击以默认的80端口进行攻击,所以,我们可以修改Web端口达到防CC攻击的目的。

第3个回答  推荐于2018-09-22
CUP使用率如果经常百分百的话,很可能是受到cc攻击。
cc攻击,是一种以网站页面为攻击目标的应用层攻击,攻击时选择服务器开放的页面中需要较多资源开销的应用。例如占用大量cpu资源进行运算或需要大量访问数据库的应用。因此攻击会造成服务器CPU使用率百分之百。
cc攻击的特点:
很小的流量达到拒绝服务的效果;
正常访问特征,攻击特征不明显,没有长时间的半开连接,也没有大量的tcp或UDP的syn包流量出现,很难与正常访问区分。
cc攻击的检测方法:
1.cookie认证,验证浏览器端cookie;

2.通过HTTP_X_FORWARDED_FOR变量检测代理服务器,提供代理时会通过HTTP_X_FORWARDED_FOR变量发送原始的用户
ip地址,根据这个变量可以统计在一段时间内同一原始ip通过不同的代理服务器发送了多少个访问请求,如果超出正常值,就可以认定为攻击行为;

3.将页面中需要进行数据访问或者较复杂处理的内容放在一个重定向指令之后,访问该页面得用web服务器访问重定向功能先让用户访问一个简单的预处理页
面,由预处理页面记录用户访问信息,并进行认证,通过认证的请求重定向到执行用户访问请求的页面,对用户访问信息设置过期,如果一段时间内出现大量用户信
息过去,就可以判断出页面正受到攻击;
4.建立网站各个页面访问量分布模型,当用户访问分布情况发生较大的变化时,可以判定为发生cc攻击了。
cc攻击的防御只需要在服务器上装上相应的服务器安全防御软件就可以达到效果了,至于这类的软件可以百度上自行搜索,服务器安全狗效果不错,建议可以考虑。本回答被网友采纳
第4个回答  推荐于2017-05-22
CC主要是用来攻击页面的。大家都有这样的经历,就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢,访问的人越多,论坛的页面越多,数据库就越大,被访问的频率也越高,占用的系统资源也就相当可观。(百度百科)
CC攻击防护基本原理是防止一个IP多次不断刷新而断开与该IP得连接,防止服务器瘫痪,达到了防攻击目的。
网站安全狗有CC防护功能,开启即可防护。也允许用户设置CC攻击防护规则。允许用户设置“访问规则”、“会话验证规则”、“代理规则”、“不受防护的网站"(网站白名单)等。本回答被网友采纳

什么是CC攻击?与DDOS的区别是什么?
一、因为CC攻击来的IP都是真实的,分散的; 二、CC攻击的数据包都是正常的数据包; 三、CC攻击的请求,全都是有效的请求,无法拒绝的请求。四. 因为cc攻击的是网页,服务器什么都可以连接,ping也没问题,但是网页就是访问不。五.但是iis一开服务器一会就死,而且被攻击后就老丢包。不知道是不是...

什么是真正有效的防CC攻击手段
CC攻击是DDOS攻击下的主要手段之一,也是大家所熟知的网络攻击之一。它主要是通过傀儡主机或找到一个匿名代理服务器发起大量的真实HTTP请求,最终消耗大量的并发资源,拖慢整个网站甚至彻底拒绝服务。高防CDN租用地址:https:\/\/www.aqxyun.com\/gfcdn\/ 互联网体的架构追求扩展性本质上是为了提高并发能力,各种...

如何有效防御网站被CC攻击
了解CC攻击,需知其原理及危害。CC攻击,即流量型攻击,通过向目标网站发送大量无效请求,耗尽服务器资源,导致网站无法正常访问。有效防御CC攻击,需多措并举。首先,选择可靠的防护工具,如360网站卫士,提供网站加速、智能高防DNS、抗DDOS、防CC等服务,助力抵御黑客侵扰。其次,利用IIS屏蔽IP。通过分析日...

如何判断网站是否被CC攻击了
什么是CC攻击?CC攻击是黑客集合大量僵尸用户来模拟正常用户的行为,并不断访问需要大量数据操作的地址,导致服务器资源的巨大浪费。CPU长时间处于100%的爆满状态,永远都有处理不完的连接直至网络拥塞,正常的访问被中止。那如何断定自己的网站是否被CC攻击呢?翔云网络通过多年安全防护经验,来简单跟大家说一...

什么是CC攻击,如何防止网站被CC攻击的方法
CC攻击的原理在于攻击者控制众多主机,持续向目标服务器发送大量数据包,直至服务器资源被耗尽,无法正常提供服务。此攻击源自于名为Fatboy的程序,后因“黑洞”防护产品广泛普及,CC攻击应运而生,旨在挑战并克服此类防护。CC攻击在OSI协议的第七层发起,其特点在于模拟正常用户请求,频率极高,难以过滤,易...

cc攻击简介
CC攻击是一种针对网站的攻击方式,主要目标是攻击网站的页面。当访问某个论坛时,如果该论坛的用户量大,访问的人多,页面打开速度会变慢。访问的人越多,论坛的页面越多,数据库也就会越大,被访问的频率也会越高,占用的系统资源也会相应增多。静态页面只需要服务器少量资源,可以直接从内存中读取并...

cc攻击是什么
如何防御CC攻击?1、做好网站程序和服务器自身维护。尽可能把网站做成静态页面,做好服务器漏洞防御,服务器权限设置,最好把数据库和程序单独拿出根目录,需要更新使用时再放进去,也可有效防御CC攻击,不过此举操作较为麻烦。2、隐藏自己服务器IP,更改网站DNS。可以接入安全卫士或云加速,ping自己的网站...

CC攻击是什么?怎么防护?
深入理解CC攻击:防护策略全解析CC攻击,如同洪水猛兽,是网络世界中的一种恶意DDoS攻击手段。它通过海量的HTTP请求如潮水般涌向目标网站,意图淹没其服务器,导致服务瘫痪,用户访问受阻。面对CC攻击的威胁,我们需采取多层面的防护措施:首先,设置并发连接限制是关键一环。通过设定每个IP地址的最大连接数,...

cc防护是什么意思?
CC防护的全称是DDoS防护,是一种利用现代网络攻击方式进行保护的技术。CC攻击是过载攻击的一种,旨在通过向目标网站或服务器发送大量请求来瘫痪它们或使它们无法正常工作。当网站或服务器无法应对大量的请求时,服务质量会降低,用户可能无法访问网站,这可能会对商业和个人带来损失。为了防止这种情况发生,我们...

网站被CC攻击该如何防御?
网站被CC攻击该如何防御?1、取消域名绑定:一般cc攻击都是针对网站的域名进行攻击,比如我们的网站域名是:www.oldboyedu.com,那么攻击者就在攻击工具中设定攻击对象为该域名然后实施攻击。对于这样的攻击我们的措施是取消这个域名的绑定,让cc攻击失去目标。2、域名欺骗解析:如果发现针对域名的cc攻击,我们...

相似回答