CN114006711A - 网络爬虫识别方法、系统、装置及计算机存储介质 - Google Patents

网络爬虫识别方法、系统、装置及计算机存储介质 Download PDF

Info

Publication number
CN114006711A
CN114006711A CN202010741262.9A CN202010741262A CN114006711A CN 114006711 A CN114006711 A CN 114006711A CN 202010741262 A CN202010741262 A CN 202010741262A CN 114006711 A CN114006711 A CN 114006711A
Authority
CN
China
Prior art keywords
mouse
sampling
abnormal
moving
interval
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010741262.9A
Other languages
English (en)
Other versions
CN114006711B (zh
Inventor
肖军
欧怀谷
王枭卿
张盼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yundun Smart Security Technology Co ltd
Original Assignee
Yundun Smart Security Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yundun Smart Security Technology Co ltd filed Critical Yundun Smart Security Technology Co ltd
Priority to CN202010741262.9A priority Critical patent/CN114006711B/zh
Publication of CN114006711A publication Critical patent/CN114006711A/zh
Application granted granted Critical
Publication of CN114006711B publication Critical patent/CN114006711B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Position Input By Displaying (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

一种网络爬虫识别方法、系统、装置及计算机存储介质,该方法包括:获取植入至客户端的前端系统回传的鼠标移动数据,所述鼠标移动数据包括若干个采样点分别对应的鼠标采样信息;按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测;在检测到所述鼠标移动数据存在异常时,将所述客户端识别为网络爬虫;拦截被识别为网络爬虫的客户端发送的访问请求。实施本发明实施例,能够通过鼠标移动数据对网络爬虫进行识别,即使网络爬虫试图通过伪造浏览器UA或者更换IP地址的方式进行伪装,也可以准确识别。

Description

网络爬虫识别方法、系统、装置及计算机存储介质
技术领域
本发明涉及网络安全技术领域,具体涉及一种网络爬虫识别方法、系统、服务器及计算机存储介质。
背景技术
网络爬虫,指按照一定的规则自动地抓取网站信息的程序或者脚本。网络爬虫在一定程度上会对网站造成负担,容易导致服务器崩溃,也容易导致数据泄露。目前,已有基于用户代理(User Agent,UA)匹配或者基于网际互连协议(Internet Protocol,IP)地址识别的网络爬虫识别方法。但是,基于UA匹配的方法可以通过伪造浏览器UA的方式破解,基于IP地址识别的方法可以通过更换IP地址的方式破解。因此,需要开发一种新的网络爬虫识别方法。
发明内容
本发明实施例公开了一种网络爬虫识别方法、系统、服务器及计算机存储介质,可以准确识别网络爬虫。
本发明实施例公开一种网络爬虫识别方法,所述方法包括:获取植入至客户端的前端系统回传的鼠标移动数据,所述鼠标移动数据包括若干个采样点分别对应的鼠标采样信息;按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测;在检测到所述鼠标移动数据存在异常时,将所述客户端识别为网络爬虫;拦截被识别为网络爬虫的客户端发送的访问请求。
本申请实施例公开一种网络爬虫识别系统,其特征在于,包括:前端系统和后端系统;所述前端系统部署于客户端,所述后端系统部署于识别装置;所述前端系统,用于获取鼠标移动数据;所述鼠标移动数据包括若干个采样点分别对应的鼠标采样信息;所述后端系统,用于按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测;以及,在检测出所述鼠标移动数据异常时,将所述客户端识别为网络爬虫;以及,拦截被识别为网络爬虫的客户端发送的访问请求。
本申请实施例公开一种爬虫识别装置,包括存储器及处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现本申请实施例公开的网络爬虫识别方法。
本申请实施例公开一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行本申请实施例公开的网络爬虫识别方法。
与现有技术相比,本发明实施例具有以下有益效果:
在本申请实施例中,可以通过植入至客户端的前端系统获取鼠标移动数据,并判断鼠标移动数据是否存在异常;在检测到鼠标移动数据存在异常时,将客户端识别为网络爬虫,并对被识别为网络爬虫的客户端发送的访问请求进行拦截,从而可以减轻网络爬虫对网站造成的负担。在本申请实施例中,即使网络爬虫试图通过伪造浏览器UA或者更换IP地址的方式进行伪装,也可以通过鼠标移动数据准确地对网络爬虫进行识别。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例公开的一种网络爬虫识别系统的结构示意图;
图2A本申请实施例公开的一种网络爬虫识别系统在网络服务器侧部署的示例图;
图2B本申请实施例公开的一种网络爬虫识别系统进行本地化部署的示例图;
图2C本申请实施例公开的一种网络爬虫识别系统进行云端化部署的示例图;
图3是本申请实施例公开的一种网络爬虫识别方法的流程示意图;
图4是本申请实施例公开的一种按照鼠标移动速度异常检测规则对鼠标移动数据进行异常检测的流程示意图;
图5是本申请实施例公开的一种按照鼠标移动加速度异常检测规则对鼠标移动数据进行异常检测的流程示意图;
图6是本申请实施例公开的一种按照鼠标移动轨迹异常检测规则对鼠标移动数据进行异常检测的流程示意图;
图7是本申请实施例公开的一种鼠标移动方向变化的示例图;
图8是本申请实施例公开的另一种网络爬虫识别系统的结构示意图;
图9是本申请实施例公开的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开了一种网络爬虫识别方法、系统、服务器及计算机存储介质,可以准确识别网络爬虫。以下分别进行详细说明。
请一并参阅图1,图1是本申请实施例公开的一种网络爬虫识别系统的结构示意图。如图1所示,该网络爬虫识别系统至少可以包括:前端系统101和后端系统102。其中,
前端系统101,可以用于获取客户端的鼠标移动数据,并将鼠标移动数据回传至后端系统102。后端系统102可以根据获取到的鼠标移动数据进行异常检测,以识别客户端是否为网络爬虫。
此外,在本申请实施例中,网络爬虫识别系统可以包括但不限于以下三种部署方式:网络服务器侧部署、本地化部署或者云端化部署。
请一并参阅图2A,图2A本申请实施例公开的一种网络爬虫识别系统在网络服务器侧部署的示例图。如图2A所示,当网络爬虫识别系统在网络服务器侧部署时,可以将后端系统102设于网络服务器中,进而后端系统102可以向客户端的浏览器植入前端系统101。其中,将网络爬虫识别系统在网络服务器侧部署可以节省客户端的本地内存空间。
请一并参阅图2B,图2B本申请实施例公开的一种网络爬虫识别系统进行本地化部署的示例图。如图2B所示,当将网络爬虫识别系统进行本地化部署时,可以将后端系统102设于本地网络防护系统,进而后端系统102可以向客户端的浏览器植入前端系统101。可选的,网络爬虫识别系统在本地网络防护系统的部署方式可以包括但不限于:本地硬件化部署(即通过在本地服务器设置相对应的硬件,以实现识别装置的功能)和本地虚拟化部署(即通过虚拟化技术将识别装置部署于本地服务器,虚拟化技术可以让一个中央处理器工作起来像多个中央处理器在并行运行,从而使得在一部电脑内同时运行多个操作系统的技术);此外,网络爬虫识别系统可以作为单独的安全设备进行部署,也可以与网站应用级入侵防御系统(Web Application Firewall,WAF)等安全设备进行集成后再进行部署,以提高防护系统的综合防护能力。可选的,网络爬虫识别系统与WAF等安全设备进行集成后的防护系统可以采用透明代理模式或者反向代理模式,在此不作限定。
请一并参阅图2C,图2C本申请实施例公开的一种网络爬虫识别系统进行云端化部署的示例图。如图2C所示,当将网络爬虫识别系统进行云端化部署时,可以将后端系统102设于云端防护系统,进而后端系统102可以向客户端的浏览器植入前端系统101。可选的,云端防护系统可以是SaaS(Software-as-a-Service,SaaS)软件即服务化的云端防护系统;可选的,该网络爬虫识别系统还可以与各类云端防御系统WAF,以及云端抗DDoS(Distributeddenial of service attack,分布式拒绝服务攻击)的系统集成后再进行部署,以提高防护系统的综合防护能力。可选的,网络爬虫识别系统还可以与各类云端防御系统WAF,以及云端抗DDoS的系统集成的防护系统可以采用反向代理模式等代理模式,在此不作限定。
以上内容对本申请实施例公开的网络爬虫识别系统进行了介绍。为了更好清楚地说明本申请实施例公开的网络爬虫识别方法进行介绍,以下内容先对本申请实施例涉及的名词进行介绍。
鼠标移动数据,可以指在鼠标移动过程中前端系统记录到的鼠标的位置信息、时间信息等信息。前端系统可以按照一定时间间隔对上述信息进行记录(可称为采样)。采样时的时间间隔可以称为采样时间间隔T,例如可以设置为10微秒或者20微秒。
采样点,可以指采样得到的数据点。每个采样点可以对应有鼠标采样信息,鼠标采样信息可以包括但不限于:鼠标位置或者采样时刻。示例性的,假设某次采样包括M个采样点,M可以为大于等于2的整数。第m(1≤m≤M)个采样点可以表示为(tm,Xm,Ym)。其中,m可以为整数,tm为采样时刻,Xm为第m个采样点对应的鼠标位置的横坐标,Ym为第m个采样点对应的鼠标位置的纵坐标。作为一种可选的实施方式,采样得到的采样点可以为两次鼠标点击事件之间采样得到的。示例性的,由M个采样点对应的采样时刻构成的采样时间序列可以表示为:[t1,t2,...,tM-1,tM],t1为检测到第一次鼠标点击事件的时刻,tM为检测到第二次鼠标点击事件的时刻。一般而言,在采样时间序列中,两个相邻的采样时刻之间的时间间隔为上述的采样时间时间间隔。但是,若针对相邻两次鼠标点击事件之间的鼠标移动进行采样,则最后两次采样时刻之间的时间间隔可能会小于上述的采样时间间隔,即tM-tM-1<采样时间间隔。
采样区间,可以指由两个连续的采样点构成的区域。示例性的,假设两个连续的采样点分别为:第m个采样点和第m+1个采样点,第m个采样点表示为(tm,Xm,Ym),第m+1个采样点表示为(tm+1,Xm+1,Ym+1)。则,由第m个采样点和第m+1个采样点构成的采样区间A1可以表示为:[(tm,Xm,Ym),(tm+1,Xm+1,Ym+1)]。
区段,可以指由两个连续的采样区间构成的区域。示例性的,假设有三个连续的采样点,分别为:第m个采样点、第m+1个采样点、第m+2个采样点。则第m个采样点和第m+1个采样点构成的采样区间A1可以表示为:[(tm,Xm,Ym),(tm+1,Xm+1,Ym+1)],第m+1个采样点和第m+2个采样点构成的采样区间A2可以表示为:[(tm+1,Xm+1,Ym+1),(tm+2,Xm+2,Ym+2)]。采样区间A1和采样区间A2可以构成一个区段。
下面对本申请实施例公开的网络爬虫识别方法进行介绍。
请参阅图3,图3是本申请实施例公开的一种网络爬虫识别方法的流程示意图。该识别方法可以应用于网络爬虫识别系统中的后端系统,该识别方法可以包括以下步骤:
310、获取植入至客户端的前端系统回传的鼠标移动数据。
在本申请实施例中,前端系统可以是后端系统植入至客户端的。作为一种给可选的实施方式,后端系统向客户端植入前端系统的方式可以包括:后端系统具体可以选择一个超文本标记语言(HyperText Markup Language,HTML)请求的应答插入包含前端系统101功能代码的JS(Java Script,JS)文件链接,并将插入了JS文件链接的HTML应答发送至客户端;当客户端的浏览器打开该HTML应答时,会自动发送获取该JS文件的请求;后端系统可以拦截上述的获取JS文件的请求,将JS文件发送至客户端,从而将前端系统植入至客户端。
320、按照预设的异常检测规则对若干个采样点分别对应的鼠标采样信息进行异常检测。
在本申请实施例中,异常检测规则可以包括但不限于以下规则中的一种或多种组合:鼠标移动速度异常检测规则、鼠标移动加速度异常检测规则、鼠标移动轨迹异常检测规则、鼠标点击异常检测规则。
当异常检测规则为鼠标移动速度异常检测规则时,步骤320的实施方式可以包括:根据若干个采样点分别对应的鼠标采样信息确定鼠标的移动速度,并按照鼠标移动速度异常检测规则判断鼠标的移动速度是否存在异常。
当异常检测规则为鼠标移动加速度异常检测规则时,步骤320的实施方式可以包括:根据若干个采样点分别对应的鼠标采样信息确定鼠标的移动加速度,并按照标移动加速度异常检测规则判断鼠标的移动加速度是否存在异常。
当异常检测规则为鼠标移动轨迹异常检测规则时,步骤320的实施方式可以包括:根据若干个采样点分别对应的鼠标采样信息确定鼠标的移动方向、移动速度以及鼠标位置的变化等与移动轨迹相关的参数,按照鼠标移动轨迹异常检测规则判断鼠标的移动轨迹是否存在异常。
当异常检测规则为鼠标点击异常检测规则时,步骤320的实施方式可以包括:根据若干个采样点分别对应的鼠标采样信息确定鼠标的点击事件,按照为鼠标点击异常检测规则判断鼠标的点击是否存在异常。
在本申请实施例中,可以按照上述的一种或者多种异常检测规则的组合对若干个采样点分别对应的鼠标采样信息进行异常检测,具体不做限定。
此外,作为一种可选的实施方式,后端系统可以对鼠标移动数据中的有效鼠标轨迹进行异常检测,而不对无效鼠标轨迹进行异常检测。其中,有效鼠标轨迹可以指第一个采样点和最后一个采样点之间的距离
Figure BDA0002606461860000071
大于有效距离阈值的鼠标轨迹;而无效鼠标轨迹可以指第一个采样点和最后一个采样点之间的距离小于等于有效距离阈值的鼠标轨迹。上述的有效距离阈值可以设置为200个像素。
进一步可选的,包括有效鼠标轨迹的鼠标移动数据可以是前端系统通过合并操作得到的。合并操作可以包括:在检测到鼠标在移动过程中存在停顿,即相邻的两个采样点对应的鼠标位置没有发生变化时,合并相邻的两个采样点。这一过程可以重复迭代,直至数据不再可合并。示例性的,假设一个原始采样包括M个采样点。其中,从第n到p个采样点鼠标静止(1≤n<p≤M),则整个鼠标移动过程中的鼠标位置可以合并为[X1,X2,…,Xn,Xp+1,…,XM]和[Y1,Y2,…,Yn,Yp+1,…,YM],对应的采样时刻为[t1,t2,…,tn,tp+1,…,tM]。
330、在检测到鼠标移动数据存在异常时,将客户端识别为网络爬虫。
在本申请实施例中,检测到鼠标移动数据存在异常可以包括:
根据鼠标移动速度异常检测规则以及若干个采样点分别对应的鼠标采样信息检测到鼠标移动速度异常;
根据鼠标移动加速度异常检测规则以及若干个采样点分别对应的鼠标采样信息检测到鼠标移动加速度异常;
340、拦截被识别为网络爬虫的客户端发送的访问请求。
在本申请实施例中,后动系统可以获取被识别为网络爬虫的客户端的IP地址;在接收到访问请求时,识别发送该访问请求的设备的IP地址。若发送访问请求的IP地址与被识别为网络爬虫的客户端的IP地址相匹配,则对该访问请求进行拦截。
在本申请实施例中,可以通过植入至客户端的前端系统获取鼠标移动数据,并进一步根据鼠标移动数据判断鼠标的移动速度、移动加速度、移动轨迹或者鼠标点击是否存在异常;在判断出移动速度、移动加速度、移动轨迹或者鼠标点击中的一项或者多项存在异常时,可以确定鼠标移动数据存在异常,将客户端识别为网络爬虫。即使网络爬虫试图通过伪造浏览器UA或者更换IP地址的方式进行伪装,也可以通过鼠标移动数据准确地对网络爬虫进行识别。
针对上述的各项异常检测规则,以下内容进行分别介绍。
请一并参阅图4,图4是本申请实施例公开的一种按照鼠标移动速度异常检测规则对鼠标移动数据进行异常检测的流程示意图。图4所示的步骤可以是上述步骤320的一种可选实施方式。如图4所示,可以包括以下步骤:
401、获取鼠标移动数据包括的若干个采样点分别对应的鼠标位置。
403、根据两个连续的采样点分别对应的鼠标位置和采样时刻确定鼠标在每个采样区间中的移动速度。
在本申请实施例中,鼠标在某一采样区间中的移动速度可以包括鼠标在该采样区间中的第一方向速度分量和第二方向速度分量,第一方向和第二方向可以为相互垂直的方向。例如,第一方向速度分量可以为横向速度分量,第二方向速度分量可以为纵向速度分量;或者,第一方向速度分量可以为纵向速度分量,第二方向速度分量可以为横向速度分量。为了方便描述,以下内容以第一方向速度分量为横向速度分量,第二方向速度分量为纵向速度分量为例进行说明,不应构成限定。
在本申请实施例中,假设由第m个采样点和第m+1个采样点构成的采样区间A1表示为[(tm,Xm,Ym),(tm+1,Xm+1,Ym+1)],则鼠标在采样区间A1的横向速度分量可以表示为
Figure BDA0002606461860000091
鼠标在采样区间A1纵向速度分量可以表示为
Figure BDA0002606461860000092
鼠标在采样区间A1的移动速度可以为
Figure BDA0002606461860000093
在本申请实施例中,可以选择性执行下述地步骤405或步骤407中的一个或多个步骤,具体不做限定。
405、若鼠标在某一采样区间中的移动速度大于预设的速度阈值,则检测到鼠标移动数据存在异常。
在本申请实施例中,预设的速度阈值可以参考人为控制鼠标移动时,鼠标移动的平均速度设置。示例性的,可以将速度阈值设置为人为控制鼠标移动时鼠标的平均速度的110%。
407、若根据鼠标在相邻的采样区间中的移动速度确定出鼠标移动速度异常,则检测到鼠标移动数据存在异常。
作为一种可选的实施方式,在本申请实施例中,根据鼠标在相邻的采样区间中的移动速度确定出鼠标移动速度异常的情况包括以下一种或多种:
鼠标在连续N个采样区间中的横向速度分量相同,N为大于等于2的正整数;即,鼠标在连续多个采样区间中移动时,横向速度保持匀速。
鼠标在连续K个采样区间中的纵向速度分量相同,K为大于等于2的正整数;即,鼠标在连续多个采样区间中移动时,纵向速度保持匀速。
人为控制鼠标移动时,控制鼠标匀速移动的难度较高,因此在本申请实施例中,当鼠标在连续N个采样区间中的横向速度分量相同或者在连续K个采样区间中的纵向速度分量相同时,可以确定鼠标移动速度异常,以将客户端识别为网络爬虫。
作为一种可选的实施方式,在本申请实施例中,根据鼠标在相邻的采样区间中的移动速度确定出鼠标移动速度异常的情况还包括以下一种或多种:
鼠标在第一个采样区间的移动速度大于等于鼠标在第二个采样区间的移动速度;即,
Figure BDA0002606461860000101
鼠标在移动起始区域的移动速度比鼠标后续的移动速度快;
鼠标在倒数第一个采样区间的移动速度大于等于鼠标在倒数第二个采样区间的移动速度;即,
Figure BDA0002606461860000102
鼠标在移动终止区域的移动速度比在此之前的鼠标移动速度快。
人为控制鼠标移动时,鼠标的移动速度变化过程一般遵循先慢,后快,逐渐平稳,再变慢,最终停止的规律。也就是说,在人为控制鼠标移动时,移动起始区域和移动终止区域的移动速度一般为整个移动过程中最慢的。因此,在本申请实施例中,在检测到鼠标在移动起始区域和移动终止区域的移动速度反常规地变快时,可以确定鼠标移动速度异常,以将客户端识别为网络爬虫。
综上,按照鼠标移动速度异常检测规则对鼠标移动数据进行异常检测可以包括,当检测到以下情况中的一种或者多种时,确定鼠标移动数据存在异常:
1.鼠标在某一采样区间中的移动速度大于预设的速度阈值;
2.鼠标在连续N个采样区间中的第一方向速度分量相同;
3.鼠标在连续K个采样区间中的第二方向分量相同;第一方向和第二方向为相互垂直的方向;
4.鼠标在第一个采样区间的移动速度大于等于鼠标在第二个采样区间的移动速度;
5.鼠标在倒数第一个采样区间的移动速度大于等于鼠标在倒数第二个采样区间的移动速度。
可见,在本申请实施例中,可以通过鼠标在单个采样区间中的移动速度或者在相邻的采样区间中的移动速度判断鼠标移动速度存在异常,从而可以准确地识别出网络爬虫。
请一并参阅图5,图5是本申请实施例公开的一种按照鼠标移动加速度异常检测规则对鼠标移动数据进行异常检测的流程示意图。图5所示的步骤可以是上述步骤320的一种可选实施方式。如图5所示,可以包括以下步骤:
501、根据鼠标移动数据包括的若干个采样点分别对应的鼠标位置和采样时刻确定鼠标在采样区间中的移动速度。
在本申请实施例中,鼠标在由第m个采样点和第m+1个采样点构成的采样区间A1中的移动速度的横向速度分量可以表示为
Figure BDA0002606461860000111
纵向速度分量可以表示为
Figure BDA0002606461860000112
鼠标在由第m个采样点和第m+1个采样点构成的采样区间A2中的移动速度的横向速度分量可以表示为
Figure BDA0002606461860000113
纵向速度分量可以表示为
Figure BDA0002606461860000114
503、根据鼠标分别在两个连续的采样区间中的移动速度确定每个区段对应的移动加速度。
在本申请实施例中,每个区段对应的移动加速度可以该区段对应的第一方向速度分量和第二方向加速度分量,第一方向和第二方向可以为相互垂直的方向。例如,第一方向加速度分量可以为横向速度分量,第二方向加速度分量可以为纵向加速度分量;或者,第一方向加速度分量可以为纵向加速度分量,第二方向加速度分量可以为横向加速度分量。为了方便描述,以下内容以第一方向加速度分量为横向加速度分量,第二方向加速度分量为纵向加速度分量为例进行说明,不应构成限定。
在本申请实施例中,在由采样区间A1和采样区间A2构成的区段B1中,鼠标在区段B1中对应的移动加速度的横向加速度分量可以表示为:
Figure BDA0002606461860000115
纵向加速度分量可以表示为:
Figure BDA0002606461860000116
其中,T为采样时间间隔。
在本申请实施例中,可以选择性执行下述地步骤505或步骤507中的一个或多个步骤,具体不做限定。
505、若根据某一区段对应的移动加速度确定出鼠标移动加速度异常,则检测到鼠标移动数据存在异常。
作为一种可选的实施方式,在本申请实施例中,根据某一区段对应的移动加速度确定出鼠标移动加速度异常的情况可以包括以下一种或多种:
存在某一区段对应的横向加速度分量超过预设的横向加速度阈值。其中,横向加速度阈值可以参考人为控制鼠标移动时,鼠标的平均横向加速度设置。示例性的,可以将横向加速度阈值设置为人为控制鼠标移动时,鼠标移动的平均横向加速度的110%。
存在某一区段对应的纵向加速分量超过预设的纵向加速度阈值。其中,纵向加速度阈值可以参考人为控制鼠标移动时,鼠标的平均纵向加速度设置。示例性的,可以将纵向加速度阈值设置为人为控制鼠标移动时,鼠标移动的平均纵向加速度的110%。
人为控制鼠标移动时,除了难以控制鼠标进行匀速运动,一般也不会突然改变鼠标的移动速度。即,人为控制鼠标移动时,一般会是较为平缓的移动。因此,在本申请实施例中,当鼠标的横向加速度存在突变(超过横向加速度阈值)或者纵向加速度存在突变(超过纵向加速度阈值)时,可以确定鼠标移动加速度异常,以将客户端识别为网络爬虫。
作为另一种可选的实施方式,在本申请实施例中,根据某一区段对应的移动加速度确定出鼠标移动加速度异常的情况还可以包括以下一种或多种:
首部区段对应的横向加速度分量或纵向加速度分量为0,首部区段包括第一个采样区间和第二个采样区间;即,
Figure BDA0002606461860000121
或者
Figure BDA0002606461860000122
鼠标在移动起始区域的移动速度变化较小。
尾部区段对应的横向加速度分量或纵向加速度分量为0,尾部区段包括倒数第一个采样区间和倒数第二个采样区间,即
Figure BDA0002606461860000123
或者
Figure BDA0002606461860000124
鼠标在移动终止区域的移动速度变化较小。
人为控制鼠标移动时,鼠标在移动起始区域的移动速度一般存在先慢后快的过程,在移动终止区域的移动速度一般存在先快后慢的变化过程。也就是说,在人为控制鼠标移动时,移动起始区域和移动终止区域一般时存在移动速度突变的。因此,在本申请实施例中,在检测到鼠标在移动起始区域和移动终止区域的移动速度变化较小时,可以确定鼠标移动加速度异常,以将客户端识别为网络爬虫。
507、若存在两个连续的区段分别对应的移动加速度之间的变化值超过预设的移动加速度变化阈值,则检测到鼠标移动数据存在异常。
在本申请实施例中,假设由第m个采样点和第m+1个采样点构成采样区间A1,由第m个采样点和第m+1个采样点构成的采样区间A2,由第m+1个采样点和第m+2个采样点构成的采样区间A3,则采样区间A1与采样区间A2构成区段B1,采样区间A2与采样区间A3构成区段B2。
鼠标在区段B1中对应的移动加速度的横向加速度分量可以表示为:
Figure BDA0002606461860000131
纵向加速度分量可以表示为:
Figure BDA0002606461860000132
鼠标在区段B2中对应的移动加速度的横向加速度分量可以表示为:
Figure BDA0002606461860000133
纵向加速度分量可以表示为:
Figure BDA0002606461860000134
两个连续的区段B1和B2分别对应的移动加速度之间的变化值可以表示为
Figure BDA0002606461860000135
上述的移动加速度变化阈值可以参考人为控制鼠标移动时移动加速度的平均变化值设置。示例性的,可以将移动加速度变化阈值设置为人为控制鼠标移动时,移动加速度的平均变化值的110%。
人为控制鼠标移动时,除了在移动起始区域和移动终止区域中移动的情况,其余情况下鼠标一般会是较为平缓的移动,鼠标的移动加速度变化值较小。因此,在本申请实施例中,当鼠标的移动加速度的变化值过大时,可以确定鼠标移动加速度异常,以将客户端识别为网络爬虫。
综上,按照鼠标移动加速度异常检测规则对鼠标移动数据进行异常检测可以包括,当检测到以下情况中的一种或者多种时,确定鼠标移动数据存在异常:
1.存在某一区段对应的第一方向加速度分量超过预设的第一加速度阈值;
2.存在某一区段对应的第二方向加速分量超过预设的第二加速度阈值;第一方向与第二方向为相互垂直的方向;当第一方向加速度分量为横向加速度分量时,第二加速度分量为纵向加速度分量,第一加速度阈值为上述的横向加速度阈值,第二加速度阈值为上述的纵向加速度阈值;当第一方向加速度分量为纵向加速度分量时,第二方向加速度分量为横向加速度分量,第一加速度阈值为上述的纵向加速度阈值,第二方向加速度分量为上述的横向加速度阈值;
3.首部区段对应的横向加速度分量或纵向加速度分量为0;
4.尾部区段对应的横向加速度分量或纵向加速度分量为0;
5.存在两个连续的区段分别对应的移动加速度之间的变化值超过预设的移动加速度变化阈值。
可见,在本申请实施例中,可以通过鼠标在连续两个采样区间中的移动加速度判断鼠标移动速度存在异常;或者,通过鼠标的移动加速度变化值判断鼠标移动速度存在异常,从而可以准确地识别出网络爬虫。
请一并参阅图6,图6是本申请实施例公开的一种按照鼠标移动轨迹异常检测规则对鼠标移动数据进行异常检测的流程示意图。图6所示的步骤可以是上述步骤320的一种可选实施方式。如图6所示,可以包括以下步骤:
601、获取鼠标移动数据包括的若干个采样点分别对应的鼠标位置。
603、根据两个连续的采样点分别对应的鼠标位置确定鼠标在采样区间中的移动方向。
在本申请实施例中,假设第m个采样点和第m+1个采样点构成采样区间A1,第m个采样点对应的鼠标位置为(Xm,Ym),第m+1个采样点对应的鼠标位置为(Xm+1,Ym+1),则鼠标在采样区间A1中的移动方向可以表示为
Figure BDA0002606461860000141
605、根据两个连续的采样点分别对应的鼠标位置以及采样时刻确定鼠标在采样区间中的移动速度。
在本申请实施例中,鼠标在采样区间A1纵向速度分量可以表示为
Figure BDA0002606461860000142
鼠标在采样区间A1的移动速度可以为
Figure BDA0002606461860000143
Figure BDA0002606461860000151
607、根据鼠标移动的鼠标位置、移动方向或者移动速度中的一项或多项确定鼠标移动轨迹异常情况。
作为一种可选的实施方式,根据鼠标移动的鼠标位置确定鼠标移动轨迹异常的情况可以包括:连续P个采样点对应的鼠标位置的横坐标或者纵坐标保持不变。即,检测到鼠标移动轨迹异常,鼠标移动数据异常。其中,上述的P可以为大于等于2的正整数,例如可以设置为5。人为控制鼠标移动时,鼠标的移动轨迹很少严格沿着屏幕的横轴或者纵轴移动。因此,在本申请实施例中,当检测到鼠标在一段时间内只沿着屏幕的横轴移动(即,纵坐标保持不变)或者只沿着屏幕的纵轴移动(即,横坐标保持不变)时,可以确定鼠标移动轨迹异常,以将客户端识别为网络爬虫。
作为另一种可选的实施方式,根据鼠标移动的移动方向确定鼠标移动轨迹异常的情况可以包括:若各个采样区间对应的移动方向检测到鼠标移动方向存在突变,则检测到鼠标移动轨迹异常,检测到鼠标移动数据异常。
其中,各个采样区间对应的移动方向的突变情况,可以通过移动方向的变异系数进行表征。Q个连续的采样区间对应的移动方向的值可以构成Dm序列,移动方向的变异系数可以表示为Dm序列的标准差除以Dm序列的平均值的差值,Q可以为大于等于2的正整数。在该实施方式中,若存在Q个连续的采样区间的移动方向变异系数大于预设的移动方向变异阈值,则确定检测到鼠标移动方向存在突变,检测到鼠标移动数据异常。上述的移动方向变异阈值可以参考人为控制鼠标移动时,鼠标的移动方向变化设置。示例性的,可以将移动方向变异阈值设置为连续8个移动方向对应的移动方向系数的90%。
人为控制鼠标移动时,鼠标的移动方向一般会沿着某个移动趋势缓慢变化,而不会发生突变。因此,在本申请实施例中,当检测到鼠标的移动方向存在突变时,确定鼠标移动轨迹异常,以将客户端识别为网络爬虫。
作为另一种可选的实施方式,根据鼠标移动的移动方向和移动速度确定鼠标移动轨迹异常的情况可以包括:
获取鼠标在第一区间中的第一移动方向与鼠标在第二区间中的第二移动方向;第一区间为任一采样区间,第二区间为采样时刻在所述第一区间之后,且与所述目标区间相邻的采样区间;若第一移动方向与第二移动方向之间的夹角大于预设的角度阈值,则检测到鼠标移动轨迹异常,检测到鼠标移动数据存在异常。
请一并参阅图7,图7是本申请实施例公开的一种鼠标移动方向变化的示例图。如图7所示,弧线701表示鼠标的实际移动轨迹,D1和D2表示两个连续采样区间的移动方向。α为两个移动方向之间的夹角,可以表示移动方向的变化。
人为控制鼠标移动时,鼠标的移动方向在短时间内不会发生大的变化。因此,在本申请实施例中,当检测到鼠标在相邻的两个采样区间中的移动方向变化较大时,可以确定鼠标移动轨迹异常,以将客户端识别为网络爬虫。
可选的,第一区间还可以进一步限定为鼠标的移动速度大于预设速度值的采样区间。上述的预设速度值可以人为设定,可以与用于判断鼠标在采样区间中的移动速度是否异常时使用的速度阈值相同,也可以不同,具体不做限定。
人为控制鼠标移动时,鼠标的移动速度和移动方向一般不会同时发生较大变化。因此,在本申请实施例中,当检测到鼠标在某个采样区间的移动速度过快,且鼠标在相邻的两个采样区间中的移动方向变化较大时,可以确定鼠标移动轨迹异常,以将客户端识别为网络爬虫。
综上,按照鼠标移动轨迹异常检测规则对鼠标移动数据进行异常检测可以包括,当检测到以下情况中的一种或者多种时,确定鼠标移动数据存在异常:
1.连续P个采样点对应的鼠标位置的横坐标或者纵坐标保持不变;
2.根据各个采样区间对应的移动方向检测到鼠标移动方向存在突变(动方向变异系数大于预设的移动方向变异阈值);
3.鼠标在第一区间中的第一移动方向与鼠标在第二中的第二移动方向之间的夹角大于预设的角度阈值。
4.鼠标在第一区间中的移动速度大于预设速度值,且鼠标在第一区间中的第一移动方向与鼠标在第二中的第二移动方向之间的夹角大于预设的角度阈值。
可见,在本申请实施例中,可以通过鼠标移动的鼠标位置、移动速度、移动方向判断鼠标移动轨迹存在异常,从而可以准确地识别出网络爬虫。
此外,作为一种可选的实施方式,鼠标点击异常检测规则可以包括:若两个连续的鼠标点击事件之间的事件间隔小于预设的点击时间间隔阈值,则鼠标的点击存在异常。上述的点击时间间隔阈值可以参考正常用户操作鼠标时,移动距离大于上述的有效距离阈值的两次点击事件之间的时间间隔设置。例如,可以设置为移动距离大于有效距离阈值的两次点击事件之间的时间间隔的90%。网络爬虫为了提高抓取网站的效率,可能会触发常人难以实现的高频词点击事件。因此,在检测到两个连续的鼠标点击事件之间的时间间隔过短,鼠标点击事件过快时,可以确定鼠标点击异常,以将客户端识别为网络爬虫。
可见,在本申请实施例中,还可以通过鼠标点击事件之间的时间间隔判断鼠标点击存在异常,从而可以准确地识别出网络爬虫。
请一并参阅图8,图8是本申请实施例公开的另一种网络爬虫识别系统的结构示意图。如图8所示,该网络爬虫识别系统至少可以包括:前端系统101和后端系统102。
前端系统101,可以用于获取鼠标移动数据;鼠标移动数据包括若干个采样点分别对应的鼠标采样信息。
后端系统102,可以用于按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测;以及,在检测出鼠标移动数据异常时,将客户端识别为网络爬虫;以及,拦截被识别为网络爬虫的客户端发送的访问请求。
作为一种可选的实施方式,前端系统101至少可以包括:前端数据获取模块1011和数据回传模块1012。
前端数据获取模块1011,可以用于按照一定时间间隔对鼠标的移动进行采样,得到若干个采样点分别对应的鼠标采样信息。
作为一种可选的实施方式,若前端数据获取模块1011检测到鼠标在移动过程中存在停顿,即相邻的两个采样点对应的鼠标位置没有发生变化,则前端数据获取模块1011可以合并相邻的两个采样点。这一过程可以重复迭代,直至数据不再可合并。
数据回传模块1012,可以用于将前端数据获取模块1011获取到的鼠标移动数据回传至后端系统102。作为一种可选的实施方式,若某一鼠标轨迹对应的两次鼠标点击事件之间的位置距离小于等于有效距离阈值,则可以视为无效鼠标轨迹。有效鼠标轨迹可以被回传至后端系统102进行继续处理,以识别客户端是否为网络爬虫;而后端处理系统102不会对无效鼠标轨迹进行继续处理。
作为一种可选的实施方式,后端系统102至少可以包括前端系统植入模块1021、回传数据接收模块1022和网络爬虫识别模块1023。
前端系统植入模块1021,可以用于向客户端植入前端系统101。可选的,前端系统植入模块1021可以将前端系统101植入客户端的浏览器。前端系统植入模块1021具体可以选择一个HTML请求的应答插入包含前端系统101功能代码的JS文件链接,并将插入了JS文件链接的HTML应答发送至客户端;当客户端的浏览器打开该HTML应答时,会自动发送获取该JS文件的请求;前端系统植入模块1021可以拦截上述的获取JS文件的请求,将JS文件发送至客户端,从而将前端系统101植入至客户端。
回传数据接收模块1022,可以用于接收数据回传模块1012发送的鼠标移动数据,并将接收到鼠标移动数据转发给网络爬虫识别模块1023。
网络爬虫识别模块1023,可以用于按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测;以及,在检测出鼠标移动数据异常时,将客户端识别为网络爬虫。
拦截模块(图中未示出),可以用于在网络爬虫识别模块1023将客户端识别为网络爬虫之后,拦截被识别为网络爬虫的客户端发送的访问请求。
作为一种可选的实施方式,网络爬虫识别模块1023可以包括:移动速度异常检测单元、移动加速度异常检测单元、移动轨迹异常检测单元、鼠标点击异常检测单元以及综合判别单元。
移动速度异常检测单元,可以用于根据两个连续的采样点分别对应的鼠标位置和分别对应的采样时刻确定鼠标在每个采样区间中的移动速度;
若鼠标在某一采样区间中的移动速度大于预设的速度阈值,则检测到鼠标移动数据存在异常;和/或,
若根据鼠标在相邻的采样区间中的移动速度确定出鼠标移动速度异常,则检测到鼠标移动数据存在异常。
进一步可选的,移动速度异常检测单元根据鼠标在相邻的采样区间中的移动速度确定出鼠标移动速度异常的情况包括以下一种或多种:
鼠标在连续N个采样区间中的第一方速度分量相同,N为大于等于2的正整数;鼠标在连续K个采样区间中的第二方速度分量相同,K为大于等于2的正整数,第一方向和第二方向为相互垂直的方向;鼠标在第一个采样区间的移动速度大于等于鼠标在第二个采样区间的移动速度;鼠标在倒数第一个采样区间的移动速度大于等于鼠标在倒数第二个采样区间的移动速度。
移动加速度异常检测单元,可以用于根据鼠标移动数据包括的若干个采样点分别对应的鼠标位置和分别对应的采样时刻确定鼠标在采样区间中的移动速度;根据鼠标分别在两个连续的采样区间中的移动速度确定每个区段对应的移动加速度;
若根据某一区段对应的移动加速度确定出鼠标移动加速度异常,则检测到鼠标移动数据存在异常;和/或,
若存在两个连续的区段分别对应的移动加速度之间的变化值超过预设的移动加速度变化阈值,则检测到鼠标移动数据存在异常。
进一步可选的,移动加速度异常检测单元,根据某一区段对应的移动加速度确定出鼠标移动加速度异常的情况包括以下一种或多种:存在某一区段对应的第一方向加速度分量超过预设的第一加速度阈值;存在某一区段对应的第二方向加速分量超过预设的第二加速度阈值,第一方向和第二方向为相互垂直的方向;首部区段对应的横向加速度分量或纵向加速度分量为0,首部区段包括第一个采样区间和第二个采样区间;尾部区段对应的横向加速度分量或纵向加速度分量为0,尾部区段包括倒数第一个采样区间和倒数第二个采样区间。
移动轨迹异常检测单元,可以用于获取鼠标移动数据包括的若干个采样点分别对应的鼠标位置;根据两个连续的采样点分别对应的鼠标位置确定鼠标在采样区间中的移动方向;若根据各个采样区间对应的移动方向检测到鼠标移动方向存在突变,则检测到鼠标移动数据存在异常;或者,
移动轨迹异常检测单元,可以用于获取鼠标移动数据包括的若干个采样点分别对应的鼠标位置;以及,若连续P个采样点对应的鼠标位置的横坐标或者纵坐标保持不变时,则检测到鼠标移动数据存在异常;或者,
移动轨迹异常检测单元,可以用于获取鼠标移动数据包括的若干个采样点分别对应的鼠标位置;根据两个连续的采样点分别对应的鼠标位置确定鼠标在采样区间中的移动方向;根据两个连续的采样点分别对应的鼠标位置以及采样时刻确定鼠标在每个采样区间中的移动速度;获取鼠标在第一区间中的第一移动方向与鼠标在第二区间中的第二移动方向;第一区间为任一采样区间,第二区间为采样时刻在第一区间之后,且与第一目标区间相邻的采样区间;若第一移动方向与所述第二移动方向之间的夹角大于预设的角度阈值,则检测到鼠标移动数据存在异常。可选的,第一区间可以为鼠标的移动速度大于预设速度值的采样区间。
鼠标点击异常检测单元,可以用于获取鼠标移动数据包括的鼠标点击事件;若存在至少两个连续的鼠标点击事件之间的点击时间间隔小于预设的点击时间间隔阈值,则检测到鼠标移动数据存在异常。
综合判别单元,用于在移动速度异常检测单元、移动加速度异常检测单元、移动轨迹异常检测单元、鼠标点击异常检测单元中的一个或多个单元检测到鼠标移动数据存在异常时,将客户端识别为网络爬虫。
实施上述各实施例公开的网络爬虫识别系统,可以通过植入至客户端的前端系统获取鼠标移动数据,并进一步根据鼠标移动数据判断鼠标的移动速度、移动加速度、移动轨迹或者鼠标点击是否存在异常;在判断出移动速度、移动加速度、移动轨迹或者鼠标点击中的一项或者多项存在异常时,可以确定鼠标移动数据存在异常,将客户端识别为网络爬虫。即使网络爬虫试图通过伪造浏览器UA或者更换IP地址的方式进行伪装,也可以通过鼠标移动数据准确地对网络爬虫进行识别。
请一并参阅图9,图9是本申请实施例公开的一种爬虫识别装置的结构示意图。如图9所示,该爬虫识别装置900可以包括:
存储有可执行程序代码的存储器901;
与存储器901耦合的处理器902;
其中,处理器902调用存储器901中存储的可执行程序代码,执行上述各实施例公开的网络爬虫识别方法。
本申请实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行上述各实施例公开的网络爬虫的识别方法。
本申请实施例还公开一种应用发布平台,其中,应用发布平台用于发布计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定特征、结构或特性可以以任意适合的方式结合在一个或多个实施例中。本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例上述方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的网络爬虫识别方法、系统、装置及及计算机存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种网络爬虫识别方法,其特征在于,所述方法包括:
获取植入至客户端的前端系统回传的鼠标移动数据,所述鼠标移动数据包括若干个采样点分别对应的鼠标采样信息;
按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测;
在检测到所述鼠标移动数据存在异常时,将所述客户端识别为网络爬虫;
拦截被识别为网络爬虫的客户端发送的访问请求。
2.根据权利要求根据权利要求1所述的方法,其特征在于,所述异常检测规则包括:鼠标移动速度异常检测规则;所述鼠标采样信息包括鼠标位置及采样时刻;
所述按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测,包括:
根据两个连续的采样点分别对应的鼠标位置和分别对应的采样时刻,确定鼠标在每个采样区间中的移动速度;每两个连续的采样点构成一个采样区间;
若鼠标在某一采样区间中的移动速度大于预设的速度阈值,则检测到所述鼠标移动数据存在异常;和/或,
若根据鼠标在相邻的采样区间中的移动速度确定出鼠标移动速度异常,则检测到所述鼠标移动数据存在异常。
3.根据权利要求2所述的方法,其特征在于,所述根据鼠标在相邻的采样区间中的移动速度确定出鼠标移动速度异常的情况包括以下一种或多种:
鼠标在连续N个采样区间中的第一方向速度分量相同,N为大于等于2的正整数;
鼠标在连续K个采样区间中的第二方向速度分量相同,K为大于等于2的正整数,所述第一方向和所述第二方向为相互垂直的方向;
鼠标在第一个采样区间的移动速度大于等于鼠标在第二个采样区间的移动速度;
鼠标在倒数第一个采样区间的移动速度大于等于鼠标在倒数第二个采样区间的移动速度。
4.根据权利要求1所述的方法,其特征在于,所述异常检测规则包括:鼠标移动加速度异常检测规则;所述鼠标采样信息包括鼠标位置及采样时刻;所述按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测,包括:
根据所述鼠标移动数据包括的若干个采样点分别对应的鼠标位置和分别对应的采样时刻确定鼠标在采样区间中的移动速度;每两个连续的采样点构成一个采样区间;
根据鼠标分别在两个连续的采样区间中的移动速度确定每个区段对应的移动加速度;每两个连续的采样区间构成一个区段;
若根据某一区段对应的移动加速度确定出鼠标移动加速度异常,则检测到所述鼠标移动数据存在异常;和/或,
若存在两个连续的区段分别对应的移动加速度之间的变化值超过预设的移动加速度变化阈值,则检测到所述鼠标移动数据存在异常。
5.根据权利要求4所述的方法,其特征在于,所述根据某一区段对应的移动加速度确定出鼠标移动加速度异常的情况包括以下一种或多种:
存在某一区段对应的第一方向加速度分量超过预设的第一加速度阈值;
存在某一区段对应的第二方向加速分量超过预设的第二加速度阈值;所述第一方向和所述第二方向为相互垂直的方向;
首部区段对应的横向加速度分量或纵向加速度分量为0,所述首部区段包括第一个采样区间和第二个采样区间;
尾部区段对应的横向加速度分量或纵向加速度分量为0,所述尾部区段包括倒数第一个采样区间和倒数第二个采样区间。
6.根据权利要求1所述的方法,其特征在于,所述异常检测规则包括:鼠标移动轨迹异常检测规则;所述鼠标采样信息包括鼠标位置;所述按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测,包括:
获取所述鼠标移动数据包括的若干个采样点分别对应的鼠标位置;
根据两个连续的采样点分别对应的鼠标位置确定鼠标在采样区间中的移动方向;每两个连续的采样点构成一个采样区间;
若根据各个采样区间对应的移动方向检测到鼠标移动方向存在突变,则检测到所述鼠标移动数据存在异常。
7.根据权利要求1所述的方法,其特征在于,所述异常检测规则包括:鼠标移动轨迹异常检测规则;所述鼠标采样信息包括鼠标位置及采样时刻;所述按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测,包括:
获取所述鼠标移动数据包括的若干个采样点分别对应的鼠标位置;
根据两个连续的采样点分别对应的鼠标位置确定鼠标在采样区间中的移动方向;每两个连续的采样点构成一个采样区间;
根据两个连续的采样点分别对应的鼠标位置以及采样时刻确定鼠标在每个采样区间中的移动速度;
获取鼠标在第一区间中的第一移动方向与鼠标在第二区间中的第二移动方向;第一区间为任一采样区间,第二区间为采样时刻在所述第一区间之后,且与所述第一区间相邻的采样区间;
若所述第一移动方向与所述第二移动方向之间的夹角大于预设的角度阈值,则检测到所述鼠标移动数据存在异常。
8.一种网络爬虫识别系统,其特征在于,包括:前端系统和后端系统;所述前端系统部署于客户端,所述后端系统部署于识别装置;
所述前端系统,用于获取鼠标移动数据;所述鼠标移动数据包括若干个采样点分别对应的鼠标采样信息;
所述后端系统,用于按照预设的异常检测规则对所述若干个采样点分别对应的鼠标采样信息进行异常检测;以及,在检测出所述鼠标移动数据异常时,将所述客户端识别为网络爬虫;以及,拦截被识别为网络爬虫的客户端发送的访问请求。
9.一种爬虫识别装置,其特征在于,包括存储器及处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现如权利要求1至7任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一所述的方法。
CN202010741262.9A 2020-07-28 2020-07-28 网络爬虫识别方法、系统、装置及计算机存储介质 Active CN114006711B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010741262.9A CN114006711B (zh) 2020-07-28 2020-07-28 网络爬虫识别方法、系统、装置及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010741262.9A CN114006711B (zh) 2020-07-28 2020-07-28 网络爬虫识别方法、系统、装置及计算机存储介质

Publications (2)

Publication Number Publication Date
CN114006711A true CN114006711A (zh) 2022-02-01
CN114006711B CN114006711B (zh) 2023-11-24

Family

ID=79920825

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010741262.9A Active CN114006711B (zh) 2020-07-28 2020-07-28 网络爬虫识别方法、系统、装置及计算机存储介质

Country Status (1)

Country Link
CN (1) CN114006711B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100070620A1 (en) * 2008-09-16 2010-03-18 Yahoo! Inc. System and method for detecting internet bots
CN109150928A (zh) * 2017-06-15 2019-01-04 北京京东尚科信息技术有限公司 用于处理请求的方法和装置
CN109189660A (zh) * 2018-09-30 2019-01-11 北京诸葛找房信息技术有限公司 一种基于用户鼠标交互行为的爬虫识别方法
CN111064745A (zh) * 2019-12-30 2020-04-24 厦门市美亚柏科信息股份有限公司 一种基于异常行为探测的自适应反爬方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100070620A1 (en) * 2008-09-16 2010-03-18 Yahoo! Inc. System and method for detecting internet bots
CN109150928A (zh) * 2017-06-15 2019-01-04 北京京东尚科信息技术有限公司 用于处理请求的方法和装置
CN109189660A (zh) * 2018-09-30 2019-01-11 北京诸葛找房信息技术有限公司 一种基于用户鼠标交互行为的爬虫识别方法
CN111064745A (zh) * 2019-12-30 2020-04-24 厦门市美亚柏科信息股份有限公司 一种基于异常行为探测的自适应反爬方法和系统

Also Published As

Publication number Publication date
CN114006711B (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
US10754935B2 (en) Intrusion detection on computing devices
CN107211016B (zh) 会话安全划分和应用程序剖析器
US8751628B2 (en) System and method for processing user interface events
JP6624771B2 (ja) クライアントベースローカルマルウェア検出方法
RU2463621C2 (ru) Способы и устройство для выбора цели из данных радиолокационного сопровождения
CN109660556B (zh) 基于信息安全的用户登陆方法、装置、设备和存储介质
US10630718B2 (en) Detection of remote fraudulent activity in a client-server-system
CN107147640B (zh) 识别网络爬虫的方法及系统
US20160255107A1 (en) Classification of Malware Generated Domain Names
CN108390864B (zh) 一种基于攻击链行为分析的木马检测方法及系统
CN107612926B (zh) 一种基于客户端识别的一句话WebShell拦截方法
EP3684025B1 (en) Web page request identification
CN112491803A (zh) 拟态waf中执行体的裁决方法
CN107426136B (zh) 一种网络攻击的识别方法和装置
CN113158182A (zh) 一种web攻击检测方法、装置及电子设备和存储介质
US11374945B1 (en) Content delivery network (CDN) edge server-based bot detection with session cookie support handling
US20130347067A1 (en) Dynamic human interactive proof
WO2020135755A1 (zh) 车辆攻击检测方法及装置
Hossen et al. An Object Detection based Solver for {Google’s} Image {reCAPTCHA} v2
WO2021022243A1 (en) Automated learning and detection of web bot transactions using deep learning
CN114006711A (zh) 网络爬虫识别方法、系统、装置及计算机存储介质
CN109413022B (zh) 一种基于用户行为检测http flood攻击的方法和装置
EP3580677B1 (en) Identifying human interaction with a computer
CN113923039B (zh) 攻击设备识别方法、装置、电子设备及可读存储介质
CN112532617B (zh) 一种针对HTTP Flood攻击的检测方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant