抗页面访问类型ddos

[适合读者:DDOS研究员、各大站长、网络管理员

前置知识:ASP基本阅读能力

蝴蝶:前段时间上海一家游戏娱乐公司的网站遭到了基于页面请求的DDOS分布式拒绝服务攻击,网站陷入完全瘫痪状态,并被黑客的匿名信勒索,金额高达10万元,而在勒索过程中,这群黑客还表示会对腾讯QQ等网站下手,随后QQ“服务器维护”几天。12月5号的时候,全球BitTorrent服务器也受到了很强烈的DDOS攻击,一度陷入瘫痪。而DDOS攻击中最流行的也是威力最大的就是基于页面的DDOS以及将这个攻击理论发挥得淋漓尽致的攻击工具CC,本文特邀CC作者和我们共同了解CC的相关攻击原理和防范方法,希望能让更多的朋友了解这样的攻击方式并能防范它。

我写CC的思路及防范方法

文/ kiki

    很多朋友都知道木桶理论,一桶水的最大容量不是由它最高的地方决定的,而是由它最低的地方决定,服务器也是一样,服务器的安全性也是由它最脆弱的地方决定的,最脆弱的地方有多危险服务器就有多危险。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秒服务器也判断处理不过来了,新的连接也处理不了,这样服务器达到了超级繁忙状态。

    蝴蝶:我们假设服务器处理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
respon
se.write “有代理访问”
%>

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

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

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

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

代码层的防御需要从点点滴滴做起,一个脚本代码的错误,可能带来的是整个站的影响,甚至是整个服务器的影响,慎之!

cd 电子警察权威分布

[

点击

北京计划

[

1、BTBBS成员见面 freewizard almost NetElephant zhangbao leepoor ConSummaTe Tomovie hanabishi BTpicasso heineken furnace foxmile MarvinFox Bigpea

2、s5proxy 韩非见面

3、云网李晓云见面,能见到曲懋更好

4、huangyi、小人、还有北京的ex-scuer 见面

5、北京联通孙楠见面,顺便去联通机房看看

WOW 补丁 WoW-1.8.3.4807-to-1.8.4.4878-zhCN-patch.exe

[

点击这里 http://shb.ppig.cn/WoW-1.8.3.4807-to-1.8.4.4878-zhCN-patch.exe

微软发布Windowx服务器升级版,增加虚拟内容

[

116,软件巨头微软公司发布了人们期待以久的目前版本Windows服务器操作系统和Windows服务器2003 R2的临时升级版本。

微软公司服务器和工具部门副总裁Bob Muglia在日前表示,通常情况下,这个新的升级版本在发布后六十天内消费者可以采用,新版本与目前的Windows服务器2003版本运行的软件100%的兼容。如果消费者已经部署了Windows 2003,今天将能够感觉到部署新的版本不需要较长的测试周期。微软公司在今年八月份发布了Windows服务器2003 R2预览版,今年十月份又发布了另一个预览版版本。

Muglia表示,升级版关键的创新是虚拟化,它的工作接近于虚拟化服务器2005、微软公司操作管理器(MOM)和系统管理服务器(SMS),是微软公司动态系统计划的一部分。微软公司最近简化了它的虚拟化Windowx服务器系统许可,Windowx服务器、MOMSMS是简化许可中的一部分。

Muglia指出,微软公司不久将需要用户支付网络上的windowx服务器系统的虚拟图象,取代微软公司目前实际上在用户网络上运行的Windowx服务器系统虚拟图象的费用。微软公司还授权用户Windows服务器2003 R2企业版和没有额外成本的Windowx服务器“长角牛”资料处理中心版最多可运行四个虚拟装置。

Muglia称,作为继续集中在“虚拟化领域获得领导角色”的一部分,微软公司将提供特殊的Windows服务器2003 R2的提升,到2006630为止,用户购买企业升级版和获得虚拟服务器2005 R2企业版需要支付99美元。

新的Windowx服务器升级版的发布同样包括微软公司关键的身份管理技术和活动目录联合服务(ADFS),它提出了联合网络身份进入操作系统的概念,能够使公司安全的提供分布式识别、证明和授权。Windows服务器2003 R2增加了承诺新的分支管理功能,通过内含的Unix子系统和Windowx系统,能够较好的实现Unix的互用性和一个新的网络框架版本Net 2.0

硅谷动力2005/12/08

专家称QQ可成驰名商标,奇瑞用得越久赔越多

[

腾讯QQ与奇瑞QQ的侵权争议仍旧众说纷纭,日前,京沪两地律师大多认为,以腾讯QQ目前的知名度,完全可以被认定为驰名商标,而对奇瑞来说,“QQ”商标用的时间越长,最后赔的越多。

北京市逢时律师事务所律师郑章军指出,我国驰名商标的门槛很低,以腾讯目前的知名度而言,已经具备了成为驰名商标的条件。

在《商标法》第14条对驰名商标应具备的因素规定中,相关公众对该商标的知晓程度是最重要的考核标准。此外,商标使用的持续时间,商标的任何宣传工作的持续时间、程度和地理范围,以及该商标作为驰名商标受保护的记录也都是需要加以考虑的因素。

而且,我国驰名商标的认定都是国家商标局和人民法院在处理争议与审理案件的过程中加以认定的。郑章军认为,只要腾讯提出申请,被认定为驰名商标不成问题。

一旦腾讯QQ被认定为驰名商标,根据《商标法》,在没有被授权的情况下,任何行业领域再使用类似的商标都属于侵权。

郑章军同时指出,虽然两个“QQ”都是变化后的字母,外形有一定差别,但在表述时仍无法避免造成误解。因此,他提醒,奇瑞使用“QQ”商标的时间越长,最后赔偿的越多,而且之后还存在转型的问题。他建议奇瑞以“奇瑞QQ”组合注册,这样更为安全。

上海和华利盛律师事务所的杨春宝律师也站在腾讯一边。据他分析,目前腾讯QQ的注册用户已占到了全国总人数的相当比例,知名度已经非常高。而且,虽然腾讯QQ只出现了六年,但是参考互联网普及的时间,六年已经不算短了。他表示,如果腾讯的律师很好地组织这些证据,完全可以认定奇瑞是侵权或不正当竞争。

不过,中国社会科学院知识产权中心研究员、科华律师事务所律师张玉瑞的看法则完全相反。在他看来,腾讯QQ远称不上是驰名商标,即使说是比较知名,也只是在IT领域中。

北京晨报2005/12/08

巩固中低端处理器市场,英特尔免除SiS芯片组授权费用

[

芯片制造商英特尔日前表示,将会从明年开始,解除台湾PC芯片组制造商SiS的授权费用。目前为止,SiS每生产一块英特尔PC芯片组,就要为英特尔支付1.5美元的权利金,这笔钱已经相当于10%的制造成本。而英特尔方面表示,为了提高公司在低端CPU市场的表现,将减轻SiS等芯片组制造商的压力,从而提高产量。芯片组在个人电脑平台扮演着极为重要的角色,是电脑和CPU之间的枢纽。

今年早些时候,微软停止了低端芯片组的生产,并且转投向利润率更高的高端CPU市场,这也导致了低端芯片组的严重缺货。正是鉴于缺货的严重,上个月英特尔宣布将重新开始低端芯片组的生产。“为了巩固中低端处理器市场的地位,英特尔不得不更多的求助于第三方制造商,例如SiSATi等。因此从明年开始,SiS方面每片1.5美元的授权费用将完全免除。”台湾ViaSiS分别是世界第二和第三大芯片组制造商,市场份额分别达到15%12%,英特尔仍然凭借47%的占有率排名第一。

赛迪网2005/12/08

广达击败华硕,抢下索尼明年笔记本代工订单

[

日前,中文报纸苹果日报源引市场消息,指被市场研究机构国际数据公司列为2004年世界上最大ODM厂商的广达电脑公司,也许会取代华硕电脑成为索尼公司2006年主要的笔记本电脑生产商。

这一传闻正好与83的一篇报导相符合。这篇出现在中文版的《Commercial Times》上的报导指,华硕公司正在失去日本公司的笔记本电脑的订单。而华硕公司和广达公司都拒绝对此作出评论。

2005年,索尼公司主要的笔记本电脑生产商是华硕电脑和富士康电子。

根据苹果日报引用JP Morgan的消息,广达电脑2006年对索尼公司的笔记本电脑的年度出货量计划达到85万台。除了索尼公司以外,宏基公司也将明年的超过一半的笔记本电脑订单交给了广达电脑。

11月,广达电脑的月收入超过了500亿新台币,大部分是由服务器产品线的出货量增长所推动的。

太平洋电脑网2005/12/09

长虹创维等四家电巨头将共建液晶生产线

[

2010年全球70%的市场份额都将是平板电视的,目前中国市场虽然70%都是国产品牌,但80%的利润都被境外液晶面板厂商赚走了”。创维数码(0751 HK)董事局主席王殿甫表示,国内液晶平板电视产业面临的难题是“上游产业链缺失”,而为彻底解决这一难题,长虹、TCL、康佳与创维四大彩电巨头已达成共识,将合资共建液晶面板生产线。

值得注意的是,上游的液晶屏生产厂家,如夏普、LG、三星、索尼也都同时涉足终端产品的制造。根据IDC的数据预测,上游面板生产商到2006年上半年将处于供大于求的状况,因为平板电视的实际销售要低于行业预测,只有在规模效应和上升周期内才能获得较高的利润。

“目前,上海彩电市场60%以上的份额都属于液晶和等离子平板彩电。从统计数字来看,等离子彩电增长145%,液晶彩电则增长了877%,而由于参与竞争的企业太多,导致行业利润急剧下降,也出现上下游企业相互渗透的趋势,这标志着平板彩电已经过早地进入‘拐点’期。”上海苏宁电器总经理凌国胜日前称,相对于CRT传统彩电而言,平板彩电消费习惯也将向“体验”进行转移。

凌国胜认为,由于平板电视技术更新速度和价格调整速度都远超传统家电,因此消费现场实机体验,消费过程服务感受将成为重点关注的另一个消费增长点。

新闻晨报2005/12/08

维珍董事会嫌NTL出价太低,否决其收购方案

[

【】

维珍公司(VirginMobile)董事会在星期三晚间对英国有线电视运营商NTL公司提出的以14.2亿美元收购维珍公司方案表示拒绝,维珍公司董事会称NTL公司过低估算了维珍公司的价值。

英国企业家RichardBranson持有维珍公司72%的股份,他已经表示如果交易得以顺利进行,他同意将他持有的维珍公司股份置换为NTL公司的股份和一部分现金。Branson的维珍集团代表GordonMcCallum没有参加维珍公司董事会就收购事宜的讨论会。

维珍公司是英国第五大手机运营商,NTL公司在星期一向维珍公司提出以现金或者公司股份的方式全部买下维珍公司,以期在维珍品牌下建立一个集电视、因特网、固定电话和手机业务于一体的系统。NTL公司没有立即就此发表评论。

维珍公司在电子邮件中表示:“公司董事会已经作出决定,认为NTL公司过低估算了维珍公司的价值。”某业内分析师称,这项决定表明维珍公司将继续待价而沽。

CharterEquityResearch研究机构的分析师EdSnyder称:“维珍公司说出价不合理而没有说不准备出售公司,它是想借着否定第一个出价来挑起竞价而抬高身价。”

NTL公司希望把维珍公司收购之后作为手机服务并入其现有的电视、因特网和电话服务三角业务中,从而在与其他的竞争对手竞争时获得一定的优势。比如固定电话电信运营商BT集团和卫星广播公司BSkyB公司。

在格林威治标准时间2145时,NTL公司股票在纳斯达克股票交易市场上下跌了20美分,达到每股62.44美元。

对于这种少有的还价方式,Snyder说维珍公司自己并没有网络而是租借的T-Mobile公司的通讯网络,因此许多传统固定电话运营商可能会推迟出售。

他说:“对于希望进入无线领域的大型有线通讯服务商来说,这并非良策。但是问题在于现在并没有多少无线网络公司准备出售。”

eNet硅谷动力05/12/09