网页访问者身份识别方法及系统的制作方法

文档序号:7692563阅读:246来源:国知局
专利名称:网页访问者身份识别方法及系统的制作方法
技术领域
本发明涉及计算机网络安全技术领域,特别是涉及一种网页访问者身份识别方法和系统。
背景技术
随着网络技术的不断发展,搜索引擎得到了不断的完善,通过搜索引擎可以从互联网上获取各种信息。从搜索引擎技术发展而来的爬虫技术可以根据既定的抓取目标,有选择的访问网页与相关的链接,从而获取所需要的信息。随着爬虫技术的发展,爬虫类软件越来越多的被应用于生活中,使网站信息不断被抓取。目前,已经有爬虫类软件被用于非诚信的交易操作,影响系统的安全性。如秒杀器、下单器等常见的爬虫类软件,通过模拟浏览器请求提交参数到服务器端,把原本用户行 为的操作用程序机器行为替代,从而进行一些非诚信的交易操作。通常情况下,在进行某些操作时,用户需要首先访问某一必要页面,然后通过该必要页面到达目标页面,为了节省时间和提交效率,爬虫软件通常不会象浏览器那样请求所有页面资源,等待用户手动交互,而是将用户的行为直接事先拼凑好参数,用程序代替直接到浏览器的目标页面进行提交。为了防止爬虫软件等非法访问者跨过必要页面向目标页面进行提交,通常做法是在服务端对该必要页面的请求进行日志记录,在提交到目标页面时检测日志记录是否有必要页面的访问历史。但是,因为爬虫软件需要提交请求成功,会反复测试需要跟服务端交互的最少访问途径,如果是必要页面,一般都会被爬虫软件用程序访问获取日志记录,而这个过程中并不会对必要页面的页面资源提出访问所以,这种方法很容易就被爬虫软件检测至IJ,并不能有效的防范爬虫软件。如何防止爬虫类软件的非诚信的交易操作,提高系统的安全性,是本申请所要解决的技术问题。

发明内容
本申请所要解决的技术问题是提供一种网页访问者身份识别方法及系统,能够识别出访问者身份,例如,是合法的访问者,还是非法的访问者,并且能够有效的防范非法访问者,且具有较好的隐蔽性,以避免被非法访问者检测到,提高系统的安全性。为了解决上述问题,本申请公开了一种网页访问者身份识别方法,包括以下步骤当访问者对具有虚拟页面资源的必要页面提出访问请求时,存储访问者对必要页面的虚拟页面资源的访问信息;接收访问者对目标页面的访问请求;读取存储的所述访问者对必要页面中虚拟页面资源的访问信息;如果能够读取到所述访问者对必要页面中虚拟页面资源的访问信息,则访问者属于合法访问者,对访问者的访问请求给出反馈,反之,则访问者属于非法访问者,跳转到必要页面要求访问者对必要页面进行访问。
进一步地,所述方法还包括所述访问者请求访问必要页面时,对所述虚拟页面资源的访问请求早于对所述必要页面中的点击按钮所对应的页面资源的访问请求。进一步地,所述方法还包括所述访问者请求访问必要页面时,首先提出对所述虚拟页面资源的访问请求。进一步地,所述方法还包括在当访问者对具有虚拟页面资源的必要页面提出访问请求时,存储访问者对必要页面的虚拟页面资源的访问信息之前增加如下步骤设置虚拟页面资源访问请求的响应程序。进一步地,所述虚拟页面资源的访问信息存储于session或分布式缓存中。
进一步地,所述虚拟页面资源为虚拟的javascript脚本,所述响应程序为Servlet。进一步地,所述虚拟页面资源为虚拟的图片或虚拟的样式定义资源文件。为了解决上述问题,本申请还公开了一种网页访问者身份识别系统,包括虚拟页面资源访问信息存储模块,用于存储访问者对具有虚拟页面资源的必要页面的虚拟页面资源的访问信息;请求接收模块,用于接收访问者的访问请求;访问信息读取模块,用于读取必要页面中虚拟页面资源的访问信息;和判断模块,根据是否有虚拟页面资源的访问信息来判断访问者的身份,若访问者属于合法访问者,则对访问者的访问请求给出反馈,若访问者属于非法访问者,则跳转到必要页面要求访问者对必要页面进行访问。进一步地,所述系统还包括响应模块,用于对虚拟页面资源的访问请求进行响应。与现有技术相比,本申请包括以下优点本申请的网页访问者身份识别方法和系统通过在必要页面增加虚拟页面资源,并根据是否有对该虚拟页面资源的访问信息来判断是合法的访问者还是非法的访问者,如爬虫软件在对目标页面提出访问请求。爬虫软件如果不对必要页面进行访问或者用程序对必要页面进行访问,那么就不会有虚拟页面资源的访问信息,从而就可以较容易的识别出爬虫软件。因为虚拟页面资源的访问请求并不能得到反馈,所以具有较好的隐蔽性,可以避免被爬虫软件检测到,从而能更好的防范爬虫软件。其次,虚拟页面资源的访问请求设置在必要页面中的点击按钮所对应的页面资源的访问请求之前,或者直接作为向必要页面提出的第一个访问请求,从而可以保证在点击按钮被加载前,虚拟页面资源的访问请求已经到达服务器,其访问信息已经被记录。另外,通过在服务器端设置虚拟页面资源的响应程序,对虚拟页面资源的访问请求进行单独响应,可以保证虚拟页面资源的访问路径的唯一性,从而保证识别的准确性。当然,实施本申请的任一产品不一定需要同时达到以上所述的所有优点。


图I是本申请的网页访问者身份识别方法实施例一的流程图;图2是本申请的网页访问者身份识别方法实施例二的流程图3是本申请的网页访问者身份识别方法实例的示意图;图4是本申请的网页访问者身份识别系统实施例一的结构示意图;图5是本申请的网页访问者身份识别系统实施例二的结构示意图。
具体实施例方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本申请作进一步详细的说明。参照图1,示出本申请的一种网页访问者身份识别方法实施例一,包括以下步骤步骤101,当访问者在具有虚拟页面资源的必要页面提出访问请求时,存储访问者对必要页面的虚拟页面资源的访问信息。
通常情况下,用户需要登录到某一个网站进行相应操作时,首先需要通过一个必要页面,输入个人信息再点击登录到目标页面,或者用户需要购买某网站上的某个物品时,需要从必要页面点击购买按钮再进入到目标页面,例如进行支付等。也就是说,用户需要访问目标页面,必须先经过必要页面,通过在必要页面设置虚拟页面资源来判断用户是否访问过必要页面。虚拟页面资源是指在必要页面中实际存在的页面资源的基础上附加的用于系统识别访问者身份的页面资源,并不是必要页面的原始组成资源。可以不显示在必要页面中,或者显示在必要页面中,但是不具有实际页面资源所具有的相关功能。用户在访问必要页面时,向必要页面实际存在的页面资源提出访问请求时也会向虚拟页面资源提出访问请求,服务器端在给出实际存在的页面资源的反馈的同时,可以给出虚拟页面资源的反馈,也可以不给出。无论是否给出反馈,都不会对用户造成任何影响,也就是说,虚拟页面资源相对于用户来说并没有意义。对于虚拟页面资源的访问请求,服务器端在接收后会进行存储。一般情况下,为了保证虚拟页面资源的隐蔽性,虚拟页面资源可以设置为不呈现在访问页面中的页面资源,如,虚拟的js脚本。即用户并不会知道有该页面资源的存在,但是,服务器端会接收到该虚拟页面资源的访问请求,同时记录该访问信息,但是不会对该访问请求给出反馈。虚拟页面资源也可以是透明的图片,服务器端可以对该访问请求给出反馈,但是用户并不知道该反馈,因为图片是透明的。这样可以避免对用户造成影响,同时可以避免被非法访问者,如爬虫软件识别破解,从而有效的防范爬虫软件。当然,虚拟页面资源也可以呈现在必要页面中,例如虚拟的图片资源等。在必要页面中可能会有对应的图标,但是因为服务器端实际并不存在对应的图片资源,接收访问请求后并不会有图片反馈,所以呈现在必要页面中的会是图片未打开或打开错误时的提示图标。步骤102,接收访问者对目标页面的访问请求。此时访问者对目标页面的访问请求,可能是访问者通过必要页面向目标页面提出的,也可能是访问者跳过必要页面直接向目标页面提出的。无论是怎么样提出的,服务器都会接收访问者的访问请求,并对访问请求进行解析,以供后续使用。其中,访问请求中会包含访问者的身份信息,如cookie信息等等。步骤103,读取存储的针对必要页面中虚拟页面资源的访问信息。服务器在接收到访问者向目标页面提出的访问请求后,会读取该访问者存储的针对必要页面中虚拟页面资源的访问信息,其中,可以通过访问请求中所带的访问者身份信息,如cookie信息,来查找对应的针对必要页面中虚拟页面资源的访问信息。其中,访问信息可以存储在缓存或者其他可供存储的地方,目标页面在接收到访问请求时便会从存储的地方去读取虚拟页面资源的访问信息。步骤104,如果能够读取到当前的访问请求所对应的必要页面中虚拟页面资源的访问信息,则访问者属于合法访问者,对访问者的访问请求给出反馈,反之,则访问者属于非法访问者,跳转到必要页面要求访问者对必要页面进行访问。目标页面可以根据是否能够读取到虚拟页面资源的访问信息来是合法的访问者还是非法访问者在对目标页面提出访问请求,从而识别出访问者的身份。如果目标页面能够读取到虚拟页面资源的访问信息,则说明是合法的访问者通过浏览器打开必要页面,并通过必要页面向目标页面提出的访问请求,反之,则说明是非法的访问者,如爬虫软件,直接向目标页面提出的访问请求。因为在通常情况下,如果是合法的 访问者访问网页,浏览器打开所需访问的必要页面时,会逐个请求必要页面中的所有资源从而进入到目标页面,这其中也包括请求虚拟页面资源,那么服务器端就会有虚拟页面资源的访问信息。如果是非法的爬虫软件访问网页,其会直接请求访问目标页面,从而跳过必要页面的其它页面资源,也包括虚拟页面资源,那么服务器端就不会有虚拟页面资源的访问信息,目标页面也就不能读取到虚拟页面资源的访问信息。目标页面读取到虚拟页面资源的访问信息后,可以判断出是合法的访问者在进行访问,便会给出访问结果。目标页面如果没有读取到虚拟页面的访问信息,则说明是非法访问者在进行访问,便会转向必要页面,表示没有通过验证,需要访问者对必要页面进行访问。进一步地,通常情况下,当浏览器打开必要页面时,会逐个请求访问必要页面中的页面资源,为了保证虚拟页面资源的访问信息能够被及时记录,对虚拟页面资源的访问请求也可以设置在必要页面中的点击按钮所对应的页面资源的访问请求之前,或者直接将虚拟页面资源的访问请求作为向必要页面提出的第一个访问请求,从而可以保证在点击按钮被加载前,虚拟页面资源的访问请求已经到达服务器,其访问信息已经被记录。此种设置方式,可以在网速不佳时,保证点击按钮出现时服务器已经存储有虚拟页面资源的访问信息,而无需等待必要页面的所有页面资源都加载完成。参照图2,示出本发明的一种网页访问者身份识别方法实施例二,在实施例一的步骤101之前还包括如下步骤步骤201,设置虚拟页面资源访问请求的响应程序。通过在服务器端设置虚拟页面资源的响应程序来对虚拟页面资源的访问请求进行响应,从而保证虚拟页面资源的访问路径的唯一性,避免与必要页面中实际存在的页面资源的访问请求混淆。在响应程序接收到虚拟页面资源的访问请求后会将其访问信息存储在预定的位置以供目标页面读取。例如,session或缓存中。在具体操作时,响应程序可以是设置在服务器端的应用程序,可以根据虚拟页面资源的类型来确定。例如,虚拟页面资源是虚拟的javascript脚本,实际上并不对应javascript代码资源,那么它的访问请求可以通过在服务器端设置的Servlet来响应。同时,Servlet将虚拟页面资源的访问信息存储在session或缓存中,目标页面则可以从session或缓存中读取虚拟页面资源的访问信息。下面结合具体的实例对本申请的网页访问者身份识别方法进行说明。参照图3,示出本实例的流程,假设访问者需要通过客户端浏览器提交一个http请求访问必要页面A. htm,并通过A. htm向目标页面Action, htm提出访问请求。其中,A. htm页面包含有很多用于页面逻辑的javascript脚本,./js/a. js是虚拟脚本,实际上并不对应javascript代码资源,它的URL (Uniform Resource Locator,统一资源定位符)请求被服务器端的一个JsServlet响应。如果是合法的访问者通过正常途径打开A. htm页面,那么会逐个请求A. htm页面中所有的javascript, css,图片资源等页面资源,此时,JsServlet可以获取到虚拟脚本访问请求,并将访问信息记录到session或分布式缓存中。如果是非法的爬虫软件,则可能会跳过A. htm页面而直接向Action, htm提交请求,JsServlet就不能获取到虚拟脚本访问请求,那么session或分布式缓存中就不会有访问标记等信息。 所以,当Action, htm接收到提交请求时,会从session或分布式缓存读取访问信息来对是否是合法请求进行验证。如果能读取到访问信息,则说明是合法的访问者,能通过验证,那么Action, htm会对请求作出响应,并反馈给客户端浏览器。如果不能读取到访问信息,则说明是爬虫软件等非法的访问者,不能通过验证,那么Action, htm会忽略请求,并自动跳转到必要页面A. htm。参照图4,示出本申请实施例一的网页访问者身份识别系统,包括虚拟页面资源访问信息存储模块80、请求接收模块10、访问信息读取模块20和判断模块30。虚拟页面资源访问信息存储模块80,用于存储访问者对具有虚拟页面资源的必要页面的虚拟页面资源的访问信息。请求接收模块IO,用于接收访问者的访问请求。访问信息读取模块20,用于读取必要页面中虚拟页面资源的访问信息。判断模块30,根据是否有虚拟页面资源的访问信息来判断访问者的身份,若访问者属于合法访问者,则对访问者的访问请求给出反馈,若访问者属于非法访问者,则跳转到必要页面要求访问者对必要页面进行访问。参照图5,示出本申请实施例二的网页访问者身份识别系统,还包括响应程序40。响应模块40,用于虚拟页面资源的访问请求进行响应,并将相应结果传递给虚拟页面资源访问信息存储模块80进行存储。本申请的网页访问者身份识别方法和系统通过在必要页面增加虚拟页面资源,并根据是否有对该虚拟页面资源的访问信息来判断是合法的访问者在对目标页面提出访问请求还是非法的访问者,如爬虫软件在提出访问请求。非法的访问者如果不对必要页面进行访问或者用程序对必要页面进行访问,那么就不会有虚拟页面资源的访问信息,从而就可以较容易的识别出访问者身份。因为虚拟页面资源的访问请求并不能得到反馈,所以具有较好的隐蔽性,可以避免被爬虫软件检测到,从而能更好的防范爬虫软件。例如,采用javascript脚本作为虚拟页面资源,通过直接下载脚本代码到客户端浏览器,这并不会在必要页面中体现,必要页面中也不会得到对应的反馈,那么爬虫软件便无法识别及检测到虚拟页面资源,从而可以能更好的防范爬虫软件。
其次,虚拟页面资源的访问请求设置在必要页面中的点击按钮所对应的页面资源的访问请求之前,或者直接作为向必要页面提出的第一个访问请求,从而可以保证在点击按钮被加载前,虚拟页面资源的访问请求已经到达服务器,其访问信息已经被记录。另外,通过在服务器端设置虚拟页面资源的响应程序,对虚拟页面资源的访问请求进行单独响应,可以保证虚拟页面资源的访问路径的唯一性,从而保证识别的准确性。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上对本申请所提供的网页访问者身份识别方法及系统进行了详细 介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
权利要求
1.一种网页访问者身份识别方法,其特征在于,包括以下步骤 当访问者对具有虚拟页面资源的必要页面提出访问请求时,存储访问者对必要页面的虚拟页面资源的访问信息; 接收访问者对目标页面的访问请求;读取存储的所述访问者对必要页面中虚拟页面资源的访问信息; 如果能够读取到所述访问者对必要页面中虚拟页面资源的访问信息,则访问者属于合法访问者,对访问者的访问请求给出反馈,反之,则访问者属于非法访问者,跳转到必要页面要求访问者对必要页面进行访问。
2.如权利要求I所述的方法,其特征在于,所述方法还包括 所述访问者请求访问必要页面时,对所述虚拟页面资源的访问请求早于对所述必要页面中的点击按钮所对应的页面资源的访问请求。
3.如权利要求2所述的方法,其特征在于,所述方法还包括 所述访问者请求访问必要页面时,首先提出对所述虚拟页面资源的访问请求。
4.如权利要求I所述的方法,其特征在于,所述方法还包括在当访问者对具有虚拟页面资源的必要页面提出访问请求时,存储访问者对必要页面的虚拟页面资源的访问信息之前增加如下步骤 设置虚拟页面资源访问请求的响应程序。
5.如权利要求4所述的方法,其特征在于,所述虚拟页面资源的访问信息存储于session或分布式缓存中。
6.如权利要求I至5任一项所述的方法,其特征在于,所述虚拟页面资源为虚拟的javascript脚本,所述响应程序为Servlet。
7.如权利要求I至5任一项所述的方法,其特征在于,所述虚拟页面资源为虚拟的图片或虚拟的样式定义资源文件。
8.—种网页访问者身份识别系统,其特征在于,包括 虚拟页面资源访问信息存储模块,用于存储访问者对具有虚拟页面资源的必要页面的虚拟页面资源的访问信息; 请求接收模块,用于接收访问者的访问请求; 访问信息读取模块,用于读取必要页面中虚拟页面资源的访问信息;和 判断模块,根据是否有虚拟页面资源的访问信息来判断访问者的身份,若访问者属于合法访问者,则对访问者的访问请求给出反馈,若访问者属于非法访问者,则跳转到必要页面要求访问者对必要页面进行访问。
9.如权利要求8所述的系统,其特征在于,所述系统还包括 响应模块,用于对虚拟页面资源的访问请求进行响应。
全文摘要
本申请提供了一种网页访问者身份识别方法,包括当访问者对具有虚拟页面资源的必要页面提出访问请求时,存储访问者对必要页面的虚拟页面资源的访问信息;接收访问者对目标页面的访问请求;读取存储的所述访问者对必要页面中虚拟页面资源的访问信息;如果能够读取到所述访问信息,则访问者属于合法访问者,对访问者的访问请求给出反馈,反之,则访问者属于非法访问者,跳转到必要页面要求访问者对必要页面进行访问。本申请还提供一种实现前述方法的网页访问者身份识别系统。本申请的网页访问者身份识别方法及系统,能够识别出访问者身份,并且能够有效的防范非法访问者,且具有较好的隐蔽性,以避免被非法访问者检测到,提高系统的安全性。
文档编号H04L29/06GK102833212SQ201110158690
公开日2012年12月19日 申请日期2011年6月14日 优先权日2011年6月14日
发明者彭渊 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1