[发明专利]处理客户端请求的方法和装置有效
| 申请号: | 201410185947.4 | 申请日: | 2014-05-05 |
| 公开(公告)号: | CN103929498B | 公开(公告)日: | 2018-01-05 |
| 发明(设计)人: | 岳大炯;肖飞;陈峰;宋德鲁;潘晔 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
| 代理公司: | 中原信达知识产权代理有限责任公司11219 | 代理人: | 刘光明,陆锦华 |
| 地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 处理 客户端 请求 方法 装置 | ||
技术领域
本发明涉及一种处理客户端请求的方法和装置。
背景技术
当今互联网业务中,Web服务占据了相当大的比例,尤其是智能终端设备比如手机等的大面积普及,使得通过Web提供和获取信息的公司和用户呈爆炸性增长,Web服务的安全问题也日益成为人们的一大关注点。超文本传输协议(Hyper Text Transfer Protocol,HTTP)作为Web应用的核心协议,经常被黑客利用来实施分布式拒绝服务攻击(Distributed Denial of Service,DDoS)。在实施DDoS时,黑客发动大量的HTTP请求,使服务器的主要资源在短时间内被用来处理这些HTTP请求从而被几乎耗尽,无法提供其他服务。由于这些HTTP请求非常接近于用户行为,让一般防火墙等防御工具无法区分其为黑客行为还是用户正常访问,所以很难检测和防御。
黑客发动在实施DDoS攻击前,先通过特殊手段按分级治理(黑客主机控制主僵尸,主僵尸控制从僵尸,从僵尸发动攻击)的方式来控制大批散落于互联网各处的可运行程序的计算机或智能设备,这些可运行程序的设备被统称为“肉鸡”,通过操纵数量众多的“肉鸡”,黑客能够在短时间发起大量的HTTP请求,即实施DDoS攻击。
挑战/回复(Challenge/Response)是应对DDoS的一种技术,该种技术一般将真正提供Web服务的服务器隐藏起来,暴露在访问者面前的是守护真正提供Web服务的代理服务器,挑战(Challenge)就发生在访问者与中间的代理服务器之间。
访问者请求首先被代理服务器截住,然后代理服务器利用Cookies技术和HTTP访问跳转技术构造一个响应并返回给访问者,访问者收到这个响应后,通常会先执行一段代码(该步骤可选),然后利用Cookies携带结果并跳转到新的URL上,代理服务器再次截住这个请求,对携带的Cookies值进行校验,如果通过校验,则请求将发送到真正的Web服务器;否则将再次返回之前构造的响应,并记录重试次数,如此循环往复,如超过重试次数,就拒绝访问者。
上述过程中用到的HTTP访问跳转技术一般包括:
1. 302/307等HTTP状态码;
2.HTML语言中关于跳转的META标签;
3.利用JavaScript的Document.location.href语法或基于JavaScript定制的模板。
Challenge/Response的基本过程如下:
步骤1.访问者请求真正提供Web服务的URL;
步骤2.代理服务器截住该请求,然后利用Cookies技术和HTTP访问跳转技术构造响应,并将之返回给访问者;
步骤3.访问者收到该响应后,先执行响应内容中的一段代码,然后利用跳转请求中的Cookies携带计算结果然后发送给代理服务器以进行跳转;
步骤4.代理服务器截住该跳转请求,对其中的Cookies值进行校验,如果校验成功,则将请求直接发送给真正的Web服务器;否则,将之前构造的响应再次返回给访问者,并记录重试次数;
步骤5.循环往复1-4步骤,直到超过重试次数,代理服务器拒绝访问者。
对于现有的挑战/回复技术,黑客能够通过人工或计算机辅助的方式另行分析出步骤2中的响应的源代码得出其中的计算结果,然后将计算结果直接附加在跳转请求中的Cookies内,对于每一台“肉鸡”来说,都通过该方式直接生成跳转请求从而避免由攻击程序进行计算,因此在进行DDoS攻击时仍能够向WEB服务器施加相当大的负荷。
发明内容
有鉴于此,本发明提供一种处理客户端请求的方法和装置,有助于降低WEB服务器受到DDoS攻击时的负荷。
为实现上述目的,根据本发明的一个方面,提供了一种处理客户端请求的方法。
本发明的处理客户端请求的方法包括:WEB服务器的代理服务器截取客户端发送的HTTP访问请求;所述代理服务器根据所述HTTP访问请求确定客户端类型,然后向所述客户端发送响应代码,所述响应代码包含从预设的代码集中选择的对应于该客户端类型的专用挑战代码;所述代理服务器截取所述客户端发送的包含所述客户端执行所述专用挑战代码的结果的跳转请求,然后所述代理服务器判断该结果是否正确,若正确则将该跳转请求发送给所述WEB服务器,否则拒绝所述跳转请求。
可选地,在将所述响应代码发送给所述客户端之前,还包括:所述代理服务器对所述响应代码进行阅读混淆处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410185947.4/2.html,转载请声明来源钻瓜专利网。





