百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

[其它内容] CC攻击介绍及如何防御 [复制链接]
查看:2024 | 回复:5

453

主题

5066

帖子

39万

积分

落伍者(八仙过海)

禁止访问

Rank: 23Rank: 23Rank: 23Rank: 23Rank: 23Rank: 23Rank: 23

贡献
3436
鲜花
323
注册时间
2012-4-3

落伍者站长知道能手落伍草根英雄技术小组QQ绑定落伍微信绑定落伍手机绑定

发表于 2013-1-16 16:22:13 | |阅读模式 来自 中国山西太原
很多朋友都知道木桶理论,一桶水的最大容量不是由它最高的地方决定的,而是由它最低的地方决定,服务器也是一样,服务器的安全性也是由它最脆弱的地方决定的,最脆弱的地方有多危险服务器就有多危险。DDOS也是一样,只要你的服务器存在一个很耗资源的地方,限制又不够,就马上成为别人DDOS的对象.比如SYN-FLOOD,它就是利用服务器的半连接状态比完全连接状态更耗资源,而SYN发动方只需要不停的发包,根本不需要多少资源。


  一个好的DDOS攻击必须是通过自己极少资源的消耗带来对方较大的资源消耗,否则比如ICMP-FLOOD和UDP-FLOOD都必须和别人一样大的带宽,对方服务器消耗多少资源自己也得赔上多少资源,效率极其低下,又很容易被人发现,现在基本没有什么人用了。


  攻击原理


  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秒服务器也判断处理不过来了,新的连接也处理不了,这样服务器达到了超级繁忙状态。


  当然,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线攻击,服务器马上满负荷了。


  代码层的防御需要从点点滴滴做起,一个脚本代码的错误,可能带来的是整个站的影响,甚至是整个服务器的影响,慎之!
如何快速落伍http://www.im286.com/thread-11644609-1-1.html

没有人有帮助你的责任和义务。感谢每一个帮助过我的人!

226

主题

1229

帖子

646

积分

落伍者(一心一意)

Rank: 1

贡献
7
鲜花
1
注册时间
2010-9-9

QQ绑定

发表于 2013-1-17 15:47:25 | 来自 中国北京
还有比12306攻击跟强的吗   

218

主题

975

帖子

679

积分

落伍者(一心一意)

Rank: 1

贡献
46
鲜花
2
注册时间
2012-7-6

落伍手机绑定

发表于 2013-1-18 09:08:31 | 来自 中国福建厦门
做好CC攻击防护

18

主题

388

帖子

185

积分

落伍者(一心一意)

Rank: 1

贡献
321
鲜花
1
注册时间
2012-9-20

落伍手机绑定

发表于 2013-1-18 14:36:07 | 来自 中国江苏南京
CC主要攻击的是页面,这个问题还是挺麻烦的,要做好防护啊
www.ibmfwqdl.comIBM服务器www.njibmfwq.com www.chelongqixiu.com

140

主题

1066

帖子

740

积分

落伍者(一心一意)

Rank: 1

贡献
56
鲜花
0
注册时间
2012-12-14
发表于 2013-4-23 11:32:28 | 来自 中国广东深圳
CC主要是用来攻击页面的.大家都有这样的经历,就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢

43

主题

475

帖子

1437

积分

落伍者(两全齐美)

Rank: 2

贡献
49
鲜花
2
注册时间
2011-6-24

落伍手机绑定

发表于 2013-4-23 14:56:36 | 来自 中国河南郑州
专业防DDOS和CC
专业网站建设|郑州网站建设|诚信网站建设 QQ:642280804
论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-5-16 17:08 , Processed in 0.110041 second(s), 32 queries , Gzip On.

返回顶部