查看完整版本: [-- 防火墙、CDN、WAF等防御CC攻击的几种方式 --]

开发者论坛 -> 云服务器 ECS -> 防火墙、CDN、WAF等防御CC攻击的几种方式 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

云代维 2014-12-24 19:30

防火墙、CDN、WAF等防御CC攻击的几种方式

一,防御方式 t\,X G  
1)JavaScript方式输出入口 K|wB0TiXP  
演示可以看下面这张图: %Wg8dy|  
[attachment=66956] K!|J/W  
第一次访问的时候,不是直接返回网页内容,而且返回这段JS程序。 -j}zr yG-  
作用就是计算出入口变量的值,然后在访问的网址后面加上类似于”?jdfwkey=hj67l9″的字串,组合成新的网址,然后跳转,当防火墙验证了jdfwkey的值(hj67l9)是正确的之后,就放行,一段时间内就不会再出这个判断程序的页面。 s>e)\9c  
u_%L~1+'  
2)301或者302转向方式输出入口 Nb/Z+  
原理和1类似,区别在于把入口直接输出在了HTTP头部信息里,不重复叙述了。 ~|8-Mo1ce  
GsNZr=;C  
2.5)还有一些把入口通过其他方式输出的,比如cookie,类似于1和2,原理都是在第一次访问的时候设置一道槛。这个就不单独计算为一条了。 9h0Y">}`b  
43BqNQ0  
3)屏蔽代理 GNI:k{H@"?  
由于一部分的CC攻击是利用代理服务器发起的,所以有些时候防CC会屏蔽掉带x-forward-for这个值的IP,对匿名代理无效。 P^m&oH5]EG  
iiTt{ab\Y  
4)判断速率 X32{y973hT  
由于CC攻击是持续的发起请求,所以发起攻击的IP在单位时间内的请求数量会明显比正常多出很多,通过把请求频率过高的IP屏蔽掉来防御。 yz^Rm2$f9  
l[b`4  
5)验证码 '"]U+aIg  
这个基本是最后的无敌大招了,必须在用户输入验证码后才能访问。 7) Qq  
OCbwV7q:  
二,防御效果(突破方式) ?!$:I8T  
1中的防护方式用的最早并且用的最多的是金盾防火墙。也正是由于用的人太多了,市面上已经有突破金盾防火墙的软件在出售,原理就是通过JS解析引擎计算出jdfwkey的值。 Ws:MbZyr  
lWk/vj<5  
突破2的方式更简单,和1差不多,只不过是直接在HTTP头中,连JS引擎都省了。 !4(QeV-=  
<,Pk  
3无法硬性突破,也就是说,如果屏蔽了带x-forward-for的IP,那么它就不可能访问到。 D[p`1$E-1v  
em?Q4t  
突破4的方式就是限制请求速度,但是这对于攻击者是一个挑战,限制单个攻击源的请求速度,并且保证攻击效果,这就要求攻击者拥有更多倍的攻击源(肉鸡)。 gE~LPwM  
\MB$Cwc  
对于5,验证码识别是个大话题,目前阶段几乎不可能应用到CC攻击中,未来也不太可能。但是网络上有很多的打码平台,如果和这些平台对接的话,人工识别验证码,就OVER了(应该不会有人去搞,太麻烦)。 VqnM>||  
*w[0uQL5Z  
对于所有的防护方式,如果是把网站域名解析到了别处,通过其他机器转发请求来防御CC攻击流量的(比如CDN),都可以通过添加HOST值的方式将流量发到真实机器上,使这些防护失效。找查网站真实IP的方法很多很复杂,不能保证100%都能找得到,本文不做叙述。 4>(rskl_  
^W ,~   
三,负作用 w7QYWf'  
有些IP,我们会要求它一直可以访问到网站内容,比如蜘蛛,比如交易类网站的支付宝异步通知。 Z90]I<a~  
但是收集这些IP,几乎是无法100%准确的收集到的(可能有人会想到useragent,一句话:攻击者可以伪造)。 =&roL7ps  
|a>,FZv8e  
下面要讲的,就不再考虑上述的这个问题了。 !p{CsR8c  
1SSS0&  
对于1和2,对访客几乎不会造成影响,判断过程是由浏览器自动完成的。 0@kL<\u  
5odXT *n  
对于3,由于个别的网络环境,在没有使用代理的情况下,也会在浏览器访问时强行加上x-forward-for的值,最终的导致的就是这个访问无法访问。其实在现在这个年代,除了CC攻击中使用的代理IP外,剩的带x-forward-for的IP,几乎都是这样的情况,也就是访客本地网络环境强加上的。早些年设置代理主要是因为那个时候网速差,用于提高速度。现在搬梯子时设置的SSH代理一般不会加上x-forward-for。 (W+aeB0  
EjP9/V G@=  
对于4,可能会造成误封。而且这个判断攻击的阀值也没法精确的设置,只能凭经验以及分析网站的具体情况。 |H>;a@2d  
|X;|=.  
对于5,对用户体验会产生影响,并且长期下去,对网站形象也会产生影响。 %`}nP3  
W(Rp@=!C  
总结下来就是,几乎所有方式,都会产生或多或少的负作用,所以,任何一种防护方式,在没事的时候不要开,只在被攻击的时候开启。 [Z;ei1l  
)8;At'q}  
四,什么样的网站容易被CC攻击 N."x@mV  
在我处理过的CC攻击中,主要消耗的是CPU和内存,通常在带宽被占满前CPU和内存已经爆掉。 w/csLi.O  
而对于静态网站,也就是生成HTML页面的网站,静态请求占用的CPU和内存是极低的,所以几乎不太可能出现生成HTML后被CC攻击挂掉的情况。 PP8627uP  
所以,被CC的主要都是动态网站,比如Discuz,Wordpress等。 <"{VVyK  
D 3Tqk^5  
五,都是什么人在攻击 )Bu#ln"  
1)无聊恶作剧 ;2[),k  
2)打击报复 H:cAORLB  
3)敲诈勒索 =:'\wx X  
4)同行恶意竞争 zJov*^T-C  
-quJX;~  
六,尾声 slAR<8  
今天遇到的一起攻击事件,某网站被敲诈1万块(也就是前文中的截图,网站有金盾防护,但是被肉鸡穿透)。于是理了理思绪,写下了这些经验之谈,与大家分享。 o+Fm+5t;  
;.=]Ar}  
原创文章,转载请以超链接方式注明出处:http://www.yundaiwei.com/post/299.html gFl@A}  

相关文章
阿里云遭遇全球互联网史上最大一次DDoS攻击 ubuntu14.04.1vsftpd神奇问题 不是25号发吗,24号就发券了啊

大韵科技 2014-12-24 20:58
封 http_user_agent 屡试不爽 d|>/eb.R  
偶尔有useragent也随机的cc攻击,可以封 http_refferer,总归有共同点,通过tail日志几秒就看得出来 Z"$iB-]  
nginx一个简单的if判断return一个503之类,或者apache一个简单的deny配置 G|u)eW  
一般一分钟内搞定

净尘 2014-12-25 23:49

八连杀 2014-12-29 13:41
百度cdn 无视 Pz[UAJ  

八连杀 2014-12-29 13:41
具体的应该是ECS+SLB+百度cdn

kideny 2014-12-29 16:04
一些防CC攻击手段方法,对搜索引擎并不友好。

blue焰 2015-01-01 19:15
        

zuijh 2015-01-06 14:43
版主建议CDN加个 黑名单功能吧

飞翔的亚索 2017-03-16 09:18
人家用的大量的肉机来攻击,看起来完全没有任何规律,跟普通用户差不多,这种情况则怎么办?


你可能还喜欢
服务器连接排序规 php代码修改后 砸金蛋活动方案 win10邮箱导 ht7033 急为何最近收不了 泰国落地签申请表 持续改进建议反馈 阿里财报 winxpwge docker发布 mysql服务突 看看5M带宽够用 刚收到促销短信 官方出Serve 人工授精成功经验 安全知识小常识2 有申请成功了那个 转让新购68元续 求助大神这是什么 ps光影风景大片 php数组操作 页面全屏退出 蜘蛛侠纹理 字符串数组循环 rds阿里云 learnxin qq群赞赏照片 rgb取色器 站外优化注意事项 我买网logo 股票空间密码使用

查看完整版本: [-- 防火墙、CDN、WAF等防御CC攻击的几种方式 --] [-- top --]


Powered by phpwind v8.5 Code ©2003-2011 phpwind
Gzip disabled