作者:hacker发布时间:2022-07-16分类:破解邮箱浏览:112评论:2
什么是CC攻击?
攻击者借助代理服务器生成指向受害主机的合法请求,实现DDOS和伪装就叫:CC(Challenge Collapsar)。CC主要是用来攻击页面的。大家都有这样的经历,就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢,访问的人越多,论坛的页面越多,数据库压力就越大,被访问的频率也越高,占用的系统资源也就相当可观。
防御方法
对于CC攻击.其防御必须采用多种方法,而这些方法本质上也是在提高服务器的并发能力。
1、服务器垂直扩展和水平扩容
资金允许的情况下,这是最简单的一种方法,本质上讲,这个方法并不是针对CC攻击的,而是提升服务本身处理并发的能力,但确实提升了对CC攻击的承载能力。垂直扩展:是指增加每台服务器的硬件能力,如升级CPU、增加内存、升级SSD固态硬盘等。水平扩容:是指通过增加提供服务的服务器来提升承载力。上述扩展和扩容可以在服务的各个层级进行,包括:应用服务器、数据库服务器和缓存服务器等等。
2、数据缓存(内存级别,不要用文件)
对于服务中具备高度共性,多用户可重用,或单用户多次可重用的数据,一旦从数据库中检索出,或通过计算得出后,最好将其放在缓存中,后续请求均可直接从缓存中取得数据,减轻数据库的检索压力和应用服务器的计算压力,并且能够快速返回结果并释放进程,从而也能缓解服务器的内存压力。要注意的是,缓存不要使用文件形式,可以使用redis、mem—cached等基于内存的nosql缓存服务,并且与应用服务器分离,单独部署在局域网内。局域网内的网络IO肯定比起磁盘IO要高。为了不使局域网成为瓶颈,千兆网络也是有必要的。
3、页面静态化
与数据缓存一样,页面数据本质上也属于数据,常见的手段是生成静态化的html页面文件,利用客户端浏览器的缓存功能或者服务端的缓存服务,以及CDN节点的缓冲服务,均可以降低服务器端的数据检索和计算压力,快速响应结果并释放连接进程。
4、用户级别的调用频率限制
不管服务是有登陆态还是没登陆态,基于session等方式都可以为客户端分配唯一的识别ID(后称作SID),服务端可以将SID存到缓存中。当客户端请求服务时,如果没有带SID(cookie中或请求参数中等),则由服务端快速分配一个并返回。可以的话,本次请求可以不返回数据,或者将分配SID独立出业务服务。当客户端请求时带了合法SID(即SID能在服务端缓存中匹配到),便可以依据SID对客户端进行频率限制。而对于SID非法的请求,则直接拒绝服务。相比根据IP进行的频率限制,根据SID的频率限制更加精准可控,可最大程度地避免误杀情况。
5、IP限制
最后,IP限制依然可以结合上述规则一起使用,但是可以将其前置至)JCb层的防火墙或负载均衡器上去做,并且可以调大限制的阈值,防止恶意访问穿透到应用服务器上,造成应用服务器压力。
目前市面上已经很多网站防御CC的产品,如高防CDN、高防IP、高防服务器等。相关链接
CC攻击算是比较好解决的,技术含量低。
个人能想到的主要策略有以下几种。
1.使用cdn,百度啊,360啊,cdn都不错,可以智能防御,也可以自己设置单ip的请求和流量限制。
2.从服务器里面入手,比如iptables就可以控制单个ip的最大并发连接数,和一定时间内允许建立的连接数,这样可以很大程度上抵消cc攻击的影响。
3.从web应用程序入手,比如nginx就可以通过配置文件实现控制最大连接数,请求频率等(其实cdn也就是运用了一些nginx的功能)。
4.安装安全软件,比如云锁啊,安全狗啊,随便百度一下安全软件很多的,安装之后正确配置,CC攻击根本不虚。
最后CC攻击真的很垃圾的,一般都是些小学生下载到或者买到攻击器就觉得自己无敌了而已,完全依靠自己的或者肉鸡的网络宽带发送数据包。DDOS之类的才需要注意,或者其它更复杂的攻击模式。
HTTP Flood 俗称CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,前身名为Fatboy攻击,也是一种常见的网站攻击方法。是针对 Web 服务在第七层协议发起的攻击。攻击者相较其他三层和四层,并不需要控制大量的肉鸡,取而代之的是通过端口扫描程序在互联网上寻找匿名的 HTTP 代理或者 SOCKS 代理,攻击者通过匿名代理对攻击目标发起HTTP 请求。匿名代理服务器在互联网上广泛存在。因此攻击容易发起而且可以保持长期高强度的持续攻击,同样可以隐藏攻击者来源避免被追查。
HTTP/CC 攻击的特点:
HTTP/CC 攻击的 ip 都是真实的,分散的
HTTP/CC 攻击的数据包都是正常的数据包
HTTP/CC 攻击的请求都是有效请求,且无法拒绝
HTTP/CC 攻击的是网页,服务器可以连接,ping 也没问题,但是网页就是访问不了
如果 WEB环境 一开,服务器很快就死,容易丢包。
那如何造成更大的杀伤呢。Web 服务与 DNS 服务类似,也存在缓存机制。如果攻击者的大量请求命中了服务器缓存,那么这种攻击的主要作用仅体现在消耗网络带宽资源上,对于计算和 IO 资源的消耗是非常有限的。因此,高效的 HTTP/CC 攻击 应不断发出针对不同资源和页面的 HTTP 请求,并尽可能请求无法被缓存的资源( 如关键词搜索结果、用户相关资料等 ),这样才能更好的加重服务器的负担,达到理想的攻击效果。当然 HTTP/CC 攻击 也会引起严重的连锁反应,不仅仅是直接导致被攻击的 Web 前端响应缓慢,还间接攻击到后端的 Java 等业务层逻辑以及更后端的数据库服务,增大它们的压力,HTTP/CC 攻击 产生的海量日志数据甚至会对日志存储服务器都带来影响。
如果 Web 服务器支持 HTTPS,那么进行 HTTPS 洪水攻击是更为有效的一种攻击方式。原因有二:
其一,在进行 HTTPS 通信时,Web 服务器需要消耗更多的资源用来认证和加解密。
其二,目前一部分防护设备无法对 HTTPS 通信数据流进行处理,会导致攻击流量绕过防护设备,直接对 Web 服务器造成攻击。
简易CC攻击防御方法
1. 把网站做成静态页面:
大量事实证明,把网站尽可能做成静态页面,不仅能大大提高抗攻击能力,而且还给骇客入侵带来不少麻烦,至少到现在为止关于HTML的溢出还没出现,看看吧!新浪、搜狐、网易等门户网站主要都是静态页面,若你非需要动态脚本调用,那就把它弄到另外一台单独主机去,免的遭受攻击时连累主服务器。
2. 在存在多站的服务器上,严格限制每一个站允许的IP连接数和CPU使用时间
这是一个很有效的方法。CC的防御要从代码做起,其实一个好的页面代码都应该注意这些东西,还有SQL注入,不光是一个入侵工具,更是一个DDOS缺口,大家都应该在代码中注意。举个例子吧,某服务器,开动了5000线的CC攻击,没有一点反应,因为它所有的访问数据库请求都必须一个随机参数在Session里面,全是静态页面,没有效果。突然发现它有一个请求会和外面的服务器联系获得,需要较长的时间,而且没有什么认证,开800线攻击,服务器马上满负荷了。代码层的防御需要从点点滴滴做起,一个脚本代码的错误,可能带来的是整个站的影响,甚至是整个服务器的影响!
5. 服务器前端加CDN中转
可以购买高CDN百度云加速,用于隐藏服务器真实IP,域名解析使用CDN的IP,所有解析的子域名都使用CDN的IP地址。此外,服务器上部署的其他域名也不能使用真实IP解析,全部都使用CDN来解析,百度云加速提供四到七层的DDoS攻击防护,包括CC、SYN flood、UDP flood等所有DDoS攻击方式, 通过分布式高性能防火墙+精准流量清洗+CC防御+WEB攻击拦截,组合过滤精确识别,有效防御各种类型攻击。相关链接
CC (Challenge Collapsar)攻击
HTTP Flood,是针对Web服务在 OSI 协议第七层协议发起的攻击,攻击者极力模仿正常用户的网页请求行为,发起方便、过滤困难,极其容易造成目标服务器资源耗尽无法提供服务。
CC攻击的防御
目前CC攻击防御有三种:
1、软件防御 利用安装在服务器上的防火墙进行拦截,主要代表安全狗、云锁等软件,这类防御适用于CC攻击较小,而且CC特征明显的攻击。
2、网站程序防御 利用网站程序限制IP访问频率,并对程序进行优化进少,生成纯静态页,减少动态情况,可一定程度上减少CC攻击的压力。
3、云防火墙 如高防CDN、高防IP,高防CDN会对CC攻击访问进行拦截,对正常访客放行,同时利用边缘节点缓存网站资源,适用于网站被大量CC攻击防御,主要代表百度云加速、抗D宝。高防IP则是DDOS防火墙,利用高带宽、高硬防的特点,对CC攻击进行识别拦截,如正常用户就放行,也适用于被大量CC攻击防御,主要代码阿里云DDoS高防IP 、腾讯云DDoS高防IP,不过价格相对较贵。网页链接
一、CC供给的解决方法
1、取消域名绑定
一般cc攻击都是针对网站的域名进行攻击,对于这样的攻击我们的措施是在IIS上取消这个域名的绑定,让CC攻击失去目标。具体操作步骤是:打开"IIS管理器"定位到具体站点右键"属性"打开该站点的属性面板,点击IP地址右侧的"高级"按钮,选择该域名项进行编辑,将"主机头值"删除或者改为其它的(域名)。
2、域名欺骗解析
如果发现针对域名的CC攻击,我们可以把被攻击的域名解析到127.0.0.1这个地址上。我们知道127.0.0.1是本地回环IP是用来进行网络测试的,如果把被攻击的域名解析到这个IP上,就可以实现攻击者自己攻击自己的目的。
现在一般的Web站点都是利用类似"新网"这样的服务商提供的动态域名解析服务,可以登录进去之后进行设置。
3、更改Web端口
一般情况下Web服务器通过80端口对外提供服务,因此攻击者实施攻击就以默认的80端口进行攻击,所以,我们可以修改Web端口达到防CC攻击的目的。运行IIS管理器,定位到相应站点,打开站点"属性"面板,在"网站标识"下有个TCP端口默认为80,我们修改为其他的端口就可以了。
4、IIS屏蔽IP
通过命令或在查看日志发现了CC攻击的源IP,就可以在IIS中设置屏蔽该IP对Web站点的访问,从而达到防范IIS攻击的目的。
在相应站点的"属性"面板中,点击"目录安全性"选项卡,点击"IP地址和域名现在"下的"编辑"按钮打开设置对话框,可以设置"拒绝访问"即"黑名单"。将攻击者的IP添加到"拒绝访问"列表中,就屏蔽了该IP对于Web的访问。
二、CC攻击的防范手段
1、优化代码
尽可能使用缓存来存储重复的查询内容,减少重复的数据查询资源开销。减少复杂框架的调用,减少不必要的数据请求和处理逻辑。程序执行中,及时释放资源,比如及时关闭mysql连接,及时关闭memcache连接等,减少空连接消耗。
2、限制手段
对一些负载较高的程序增加前置条件判断,可行的判断方法如下:
必须具有网站签发的session信息才可以使用(可简单阻止程序发起的集中请求);必须具有正确的referer(可有效防止嵌入式代码的攻击);禁止一些客户端类型的请求(比如一些典型的不良蜘蛛特征);同一session多少秒内只能执行一次。
3、完善日志
尽可能完整保留访问日志。日志分析程序,能够尽快判断出异常访问,比如单一ip密集访问;比如特定url同比请求激增。
标签:cc攻击网站软件
已有2位网友发表了看法:
访客 评论于 2022-07-16 07:32:25 回复
服务器和缓存服务器等等。2、数据缓存(内存级别,不要用文件)对于服务中具备高度共性,多用户可重用,或单用户多次可重用的数据,一旦从数据库中检索出,或通过计算得出后,最好将其放在缓存中,后续请求均可直接从缓存中取得数据,减轻数据库的检索压力和应用服务器的计算压力,并
访客 评论于 2022-07-16 09:07:26 回复
,有效防御各种类型攻击。相关链接什么是cc?网站被cc攻击怎么办?CC (Challenge Collapsar)攻击HTTP Flood,是针对Web服务在 O