基于请求行为特征的用户识别方法、装置、设备及系统与流程

文档序号:12162023阅读:224来源:国知局
基于请求行为特征的用户识别方法、装置、设备及系统与流程

本申请涉及电子技术领域,具体的说是一种基于请求行为特征的用户识别方法、一种基于请求行为特征的用户识别装置、一种基于请求行为特征的用户识别终端设备及一种基于请求行为特征的用户识别系统。



背景技术:

随着互联网的普及,各种网络服务日益成为人们日常生活的一部分,如电子商务、免费的电子邮箱服务、免费的资源下载等等。然而,这些面向人类用户的服务时常被非法用户攻击和一些恶意计算机程序滥用(恶意计算机程序利用一机多账户,或一账户多机的方法)占用服务资源,产生大量的网络垃圾,影响合法用户的网络体验,对网络服务的安全性造成极大威胁。

现有的全自动开放式人机区分图灵测试技术(Completely Automated Public Turing test to tell computers and humans apart,CAPTCHA)是基于人工智能(artificial intelligence,AI)领域开放性问题而设计的网络安全技术,又称为人机交互验证(human interactive proof,HIP),即通常所说的“验证码”技术,利用问答式身份验证的安全措施来区分人和计算机。CAPTCHA的运行机制如下:一个专门的服务器负责产生和评估CAPTCHA测试,用户使用某个需验证的网络服务时,服务器提供给用户一个测试,理想情况下,这个测试能被几乎所有人类用户通过,而现有的计算机程序不能通过,用户做完后将测试结果提交给服务器,服务器根据结果进行评估,决定该用户能否通过测试。基于此技术,可以避免恶意计算机程序滥用网络服务。

目前,主流CAPTCHA技术主要使用文本CAPTCHA、图像CAPTCHA和声音CAPTCHA。

其中,文本CAPTCHA通过扭曲文字或字符来识别人和机器,在某种程度上防止了计算机程序的恶意注册或登录,但是随着字符分割和光学字符识别(Optical Character Recognition,OCR)技术的发展,大多数文本CAPTCHA已被成功破解,简单的字符识别问题已不能阻止计算机程序,况且扭曲的文字让人也难以识别,使得用户体验很不好。

图像CAPTCHA利用人和机器在图像分类、目标识别、常见理解等方面的 差异,通常独立于不同语言,无需用户文本输入、虽然比文本CAPTCHA难破解,但是这些图像CAPTCHA需要庞大的数据库支持,无法大规模产生,此外,易遭受机器学习算法的攻击,如:Golle设计了一个结合颜色和纹理特征的SVM分类器对猫狗图像进行分类,在单幅图像上获得82.7%的高正确率,对包含12幅图的Asirra破解成功率可达10.3%。

声音CAPTCHA利用人和机器在语音识别上的差异来区别人和机器,但是声音CAPTCHA同样容易受到机器学习算法的攻击。Tam等人用固定长度的窗口搜索音频,筛选出能量峰进行识别,在其上提取3种音频特征:梅尔倒谱系数、感知线性预测、相关频谱转换-感知线性预测,采用AdaBoost,SVM,k-NN 3种机器学习算法分别训练,对Google,Digg和ReCAPTCHA的破解成功率分别为67%,71%和45%。也有人采用相似的方法破解了eBay的声音CAPTCHA,破解率达75%。

基于上述CAPTCHA易被破解的缺陷,在现实生活中,仍存在较多黑客向企业发起的各种DDOS攻击,利用爬虫爬取企业中大量有价值的数据,因此,需要一种方法能识别出是人在请求还是恶意程序在请求的方法。



技术实现要素:

鉴于上述问题,本申请提供一种基于请求行为特征的用户识别方法、一种基于请求行为特征的用户识别装置、一种基于请求行为特征的用户识别终端设备及一种基于请求行为特征的用户识别系统。

本申请采用的技术方案是:

本申请提供一种基于请求行为特征的用户识别方法,包括:

接收用户端发送的请求信息;

解析所述请求信息,获得用户识别码;

根据所述用户识别码查询用户的历史请求记录;

根据所述历史请求记录计算所述用户的请求行为特征的特征值,所述请求行为特征包括请求频率特征,和/或,对应关系特征;

判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户。

可选的,所述请求行为特征包括请求频率特征;

所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤,包括:

根据所述历史请求记录计算所述用户的请求频率特征的特征值;

所述判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户的步骤,包括:

判断所述请求频率特征的特征值是否大于频率特征阈值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

可选的,所述用户识别码包括以下至少一项:用户IP地址,用户ID,会话ID,用户名,用户邮箱,用户手机号,用户身份证号,用户设备ID号。

可选的,所述用户识别码包括以下至少两项:用户IP地址,用户ID,会话ID,用户名,用户邮箱,用户手机号,用户身份证号,用户设备ID号;

所述请求行为特征包括对应关系特征,所述请求行为特征的特征值包括:单位时间内,同一用户识别码对应的另一项用户识别码的数量;

所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤,包括:

根据所述历史请求记录计算所述用户的对应关系特征的特征值;

所述判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户的步骤,包括:

判断所述对应关系特征的特征值是否大于对应关系特征阈值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

可选的,在所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤前,还包括:

若没有查询到所述用户的历史请求记录,则识别所述用户为正常用户,响应该请求。

可选的,在所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤前,还包括:

根据所述用户识别码查询所述用户是否在黑名单中;

若在黑名单中,则识别所述用户为非正常用户,拦截该请求。

可选的,在所述根据所述历史请求记录计算所述用户的请求行为特征的特 征值的步骤前,还包括:

根据所述用户识别码查询所述用户是否在黑名单中;

若在黑名单中,则对所述用户进行交互验证;

在用户通过所述交互验证时识别所述用户为正常用户,响应该请求;

在用户未通过所述交互验证时识别所述用户为非正常用户,拦截该请求。

可选的,所述对所述用户进行交互验证的步骤,包括:

查询所述用户端是否支持交互验证;

在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

在所述用户端支持交互验证时,对所述用户进行交互验证。

可选的,所述交互验证包括以下任一种:

图像交互验证,文本交互验证,声音交互验证。

可选的,所述根据所述用户识别码查询所述用户是否在黑名单中的步骤,包括:

查询所述用户识别码是否含有用户ID;

若含有用户ID,则根据所述用户ID查询所述用户是否在黑名单中。

可选的,所述判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户的步骤,包括:

判断所述请求行为特征的特征值是否大于特征阈值;

若不大于,则识别所述用户为正常用户,响应该请求。

可选的,所述基于请求行为特征的用户识别方法,还包括:

若大于,则对所述用户进行交互验证;

在用户通过所述交互验证时识别所述用户为正常用户,响应该请求;

在用户未通过所述交互验证时识别所述用户为非正常用户,拦截该请求。

可选的,所述对所述用户进行交互验证的步骤,包括:

查询所述用户端是否支持交互验证;

在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

在所述用户端支持交互验证时对所述用户进行交互验证。

可选的,所述交互验证包括以下任一种:

图像交互验证,文本交互验证,声音交互验证。

可选的,所述对所述用户进行交互验证的步骤,包括:

根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进行计分;

判断对所述用户识别码的计分是否超过计分阈值;

在所述对所述用户识别码的计分没有超过计分阈值时,识别所述用户为正常用户,响应该请求;

在所述对所述用户识别码的计分超过计分阈值时,对所述用户进行交互验证。

可选的,所述基于请求行为特征的用户识别方法,还包括:

根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进行计分;

判断对所述用户识别码的计分是否超过计分阈值;

在所述对所述用户识别码的计分没有超过计分阈值时,识别所述用户为正常用户,响应该请求;

在所述对所述用户识别码的计分超过计分阈值时,识别所述用户为非正常用户,拦截该请求。

可选的,所述特征阈值为按照预定的规则,根据用户识别码的内容,和/或对所述用户识别码的计分实时调整的动态特征阈值。

可选的,所述用户识别码包括主用户识别码和辅用户识别码,其中所述主用户识别码为标识用户的唯一性识别码,以用于区分不同的用户,所述辅用户识别码为所述请求信息中除所述主用户识别码以外的其他用户识别码,包含同一个主用户识别码的请求信息视为同一个用户的请求信息。

本申请还提供一种基于请求行为特征的用户识别装置,包括:

请求信息接收单元,用于接收用户端发送的请求信息;

请求信息解析单元,用于解析所述请求信息,获得用户识别码;

历史请求记录查询单元,用于根据所述用户识别码查询用户的历史请求记 录;

请求行为特征计算单元,用于根据所述历史请求记录计算所述用户的请求行为特征的特征值,所述请求行为特征包括请求频率特征,和/或,对应关系特征;

请求行为特征判断单元,用于判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户。

可选的,所述请求行为特征包括请求频率特征;

所述请求行为特征计算单元包括:

请求频率特征计算子单元,用于根据所述历史请求记录计算所述用户的请求频率特征的特征值;

所述请求行为特征判断单元包括:

请求频率特征判断子单元,用于判断所述请求频率特征的特征值是否大于频率特征阈值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

可选的,所述用户识别码包括以下至少一项:用户IP地址,用户ID,会话ID,用户名,用户邮箱,用户手机号,用户身份证号,用户设备ID号。

可选的,所述用户识别码包括以下至少两项:用户IP地址,用户ID,会话ID,用户名,用户邮箱,用户手机号,用户身份证号,用户设备ID号;

所述请求行为特征包括对应关系特征,所述请求行为特征的特征值包括:单位时间内,同一用户识别码对应的另一项用户识别码的数量;

所述请求行为特征计算单元包括:

对应关系特征计算子单元,用于根据所述历史请求记录计算所述用户的对应关系特征的特征值;

所述请求行为特征判断单元包括:

对应关系特征判断子单元,用于判断所述对应关系特征的特征值是否大于对应关系特征阈值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

可选的,所述基于请求行为特征的用户识别装置,还包括:

无历史请求记录识别单元,用于在所述历史请求记录查询单元没有查询到 所述用户的历史请求记录时,识别所述用户为正常用户,响应该请求。

可选的,所述基于请求行为特征的用户识别装置,还包括:

第一黑名单查询单元,用于根据所述用户识别码查询所述用户是否在黑名单中;

黑名单用户识别单元,用于在所述第一黑名单查询单元查询到所述用户在黑名单中时,识别所述用户为非正常用户,拦截该请求。

可选的,所述基于请求行为特征的用户识别装置,还包括:

第二黑名单查询单元,用于根据所述用户识别码查询所述用户是否在黑名单中;

第一交互验证单元,用于在所述第二黑名单查询单元查询到所述用户在黑名单中时,则对所述用户进行交互验证;

第一交互验证识别单元,用于在所述第一交互验证单元的验证结果为用户通过所述交互验证时,识别所述用户为正常用户,响应该请求;

第二交互验证识别单元,用于在所述第一交互验证单元的验证结果为用户未通过所述交互验证时,识别所述用户为非正常用户,拦截该请求。

可选的,所述第一交互验证单元包括:

第一交互验证支持子单元,用于查询所述用户端是否支持交互验证;

第一交互验证支持识别子单元,用于在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

第一交互验证子单元,用于在所述用户端支持交互验证时,对所述用户进行交互验证。

可选的,所述第一交互验证单元包括以下任一种:

图像交互验证子单元;文本交互验证子单元;声音交互验证子单元。

可选的,所述第二黑名单查询单元,包括:

用户ID查询子单元,用于查询所述用户识别码是否含有用户ID;

用户ID黑名单查询子单元,用于在所述用户ID查询子单元的查询结果为所述用户识别码含有用户ID时,根据所述用户ID查询所述用户是否在黑名单中。

可选的,所述请求行为特征判断单元,包括:

特征阈值判断子单元,用于判断所述请求行为特征的特征值是否大于特征阈值;

第一特征阈值识别子单元,用于在所述特征阈值判断子单元判断所述请求行为特征的特征值不大于特征阈值时,识别所述用户为正常用户,响应该请求。

可选的,所述请求行为特征判断单元,还包括:

第二交互验证子单元,用于在所述特征阈值判断子单元判断所述请求行为特征的特征值大于特征阈值时,对所述用户进行交互验证;

第三交互验证识别子单元,用于在所述第二交互验证子单元的验证结果为用户通过所述交互验证时,在用户通过所述交互验证时识别所述用户为正常用户,响应该请求;

第四交互验证识别子单元,用于在所述第二交互验证子单元的验证结果为用户未通过所述交互验证时,识别所述用户为非正常用户,拦截该请求。

可选的,所述第二交互验证子单元包括:

第二交互验证支持子单元,用于查询所述用户端是否支持交互验证;

第二交互验证支持识别子单元,用于在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

第三交互验证子单元,用于在所述用户端支持交互验证时对所述用户进行交互验证。

可选的,所述第二交互验证子单元包括以下任一种:

图像交互验证子单元;文本交互验证子单元;声音交互验证子单元。

可选的,所述第二交互验证子单元包括:

第一计分子单元,用于根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进行计分;

第一计分判断子单元,用于判断对所述用户识别码的计分是否超过计分阈值;

第一计分识别子单元,用于在所述对所述用户识别码的计分没有超过计分阈值时,识别所述用户为正常用户,响应该请求;

第四交互验证子单元,用于在所述对所述用户识别码的计分超过计分阈值时,对所述用户进行交互验证。

可选的,所述请求行为特征判断单元,还包括:

第二计分子单元,用于根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进行计分;

第二计分判断子单元,用于判断对所述用户识别码的计分是否超过计分阈值;

第二计分识别子单元,用于在所述对所述用户识别码的计分没有超过计分阈值时,识别所述用户为正常用户,响应该请求;

第三计分识别子单元,用于在所述对所述用户识别码的计分超过计分阈值时,识别所述用户为非正常用户,拦截该请求。

可选的,所述基于请求行为特征的用户识别装置,还包括:动态特征阈值设定单元,用于按照预定的规则,根据用户识别码的内容,和/或对所述用户识别码的计分实时调整所述特征阈值。

可选的,所述用户识别码包括主用户识别码和辅用户识别码,其中所述主用户识别码为标识用户的唯一性识别码,以用于区分不同的用户,所述辅用户识别码为所述请求信息中除所述主用户识别码以外的其他用户识别码,包含同一个主用户识别码的请求信息视为同一个用户的请求信息。

本申请还提供一种基于请求行为特征的用户识别终端设备,包括:

中央处理器;

输入输出单元;

存储器;

所述存储器中存储有本申请提供的基于请求行为特征的用户识别方法;并在启动后能够根据上述方法运行。

本申请还提供一种基于请求行为特征的用户识别系统,包括用户端和服务端,所述服务端配置有本申请提供的基于请求行为特征的用户识别装置,所述用户端接收用户的输入生成请求信息,并向所述服务端发送所述请求信息,所述服务端接收所述请求信息后,识别所述用户为正常用户或非正常用户。

与现有技术相比,本申请具有以下优点:

本申请提供的一种基于请求行为特征的用户识别方法,首先,接收用户端发送的请求信息;然后解析所述请求信息,获得用户识别码;再根据所述用户 识别码查询用户的历史请求记录;接下来,根据所述历史请求记录计算所述用户的请求行为特征的特征值,所述请求行为特征包括请求频率特征,和/或,对应关系特征;最后判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户。与现有在用户前端利用CAPTCHA技术相比,本申请提供的方法应用于服务器后端,从恶意程序滥用网络服务攻击特征(通过批量操作获取更多的服务资源,即要么是单账户对多机发起操作,要么伪造多账户在单机上发起操作)着手,基于对用户请求频率特征,和/或,对应关系特征的统计分析,通过判断用户的请求行为特征的特征值是否超过特征阈值,来识别出非法用户和恶意计算机程序,对于没有大量用户请求数据源的黑客很难被破解,具有识别成功率高、不易破解的特点,同时因为不用用户参与交互,可以改善用户体验。

附图说明

图1是本申请提供的一种基于请求行为特征的用户识别方法实施例的流程图;

图2是本申请提供的一种基于请求行为特征的用户识别装置实施例的示意图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。

本申请提供了一种基于请求行为特征的用户识别方法、一种基于请求行为特征的用户识别装置、一种基于请求行为特征的用户识别终端设备及一种基于请求行为特征的用户识别系统,下面依次结合附图对本申请的实施例进行详细说明。

请参考图1,其为本申请提供的一种基于请求行为特征的用户识别方法实施例的流程图,所述方法包括如下步骤:

步骤S101:接收用户端发送的请求信息。

本步骤,首先接收用户端发送的请求信息,所述请求信息包括访问请求信息、交易请求信息、查询请求信息、登录请求信息、读取请求信息等,用户通过用户端向服务端发送所述请求信息,由服务端接收所述用户端发送的请求信 息。

步骤S102:解析所述请求信息,获得用户识别码。

通过步骤S101,已接收用户端发送的请求信息,接下来,需要解析所述请求信息,获得用户识别码。因为请求信息一般是用于服务端对用户进行认证的,因此,所述请求信息中通常会包含用户识别码等认证信息,所述用户识别码是用于标识用户身份特征的识别码,例如:用户名、用户ID、用户IP地址、用户邮箱、用户手机号、用户身份证号,用户设备ID号、当前会话的会话ID等,需要说明的是,以上仅举例对所述用户识别码进行了说明,并不限制本申请的保护范围,任何可用于识别用户的识别码都可用于本申请提供的所述基于请求行为特征的用户识别方法,其均在本申请的保护范围之内。

在本申请提供的一个实施例中,所述用户识别码包括多个维度的多项用户识别码,可分为主用户识别码和辅用户识别码,其中所述主用户识别码为标识用户的唯一性识别码,以用于区分不同的用户,所述辅用户识别码为所述请求信息中除所述主用户识别码以外的其他用户识别码,包含同一个主用户识别码的请求信息视为同一个用户的请求信息。

例如:对于已注册用户,其主用户识别码为用户ID,则含有同一个用户ID的所有请求信息都被视为同一个用户的请求信息,所述请求信息中的辅用户识别码如会话ID、用户IP地址、用户手机号等仅用来辅助判断所述用户的请求行为是否正常;又如,对于非注册用户,没有用户ID用户识别码,其主用户识别码可以选用用户IP地址和会话ID两项,则包含同一个用户IP地址、同一个会话ID的所有请求信息都被视为同一个用户的请求信息,辅用户识别码如用户设备ID号等仅用来辅助判断所述用户的请求行为是否正常。

需要说明的是,上述实施例中仅举例对所述主用户识别码和所述辅用户识别码进行了说明,实际应用中,可根据需要灵活选用任一项或多项用户识别码作为主用户识别码,以用于区分不同用户的请求信息。

在本申请提供的一个实施例中,为了保证信息传输安全,所述请求信息是按照预定的编码或格式生成的、或是通过预定的密钥加密生成的,因此,当服务端接收到所述请求信息后,需要按照预定的编码或格式进行反编译,或是利用预定的密钥进行解密,通过上述解析方式获得用户识别码信息。

步骤S103:根据所述用户识别码查询用户的历史请求记录。

通过步骤S102,已解析所述请求信息,获得了用户识别码,接下来,需要根据所述用户识别码查询用户的历史请求记录。

在本申请提供的一个实施例中,所述服务端有记录用户请求记录的数据库,所述请求记录记录有用户的请求日志,或者用户的各个用户识别码之间的对应关系,或者同时记录有用户的请求日志和用户的各个用户识别码之间的对应关系。因此,可以从所述记录用户请求记录的数据库中根据所述用户识别码查询用户的历史请求记录。例如:某一用户ID的历史访问记录,某一用户ID的历史登陆IP地址,某一IP地址的历史访问记录,在同一IP地址上有哪些用户ID进行过访问,在同一IP地址上有多少个会话ID在同时访问,同一个用户邮箱注册了多少个用户ID、同一个邮箱注册的不同用户ID的历史访问记录等等。

在本申请提供的一个实施例中,包含同一个主用户识别码的请求信息视为同一个用户的请求信息,即同一个主用户识别码代表同一个用户,因此,所述根据所述用户识别码查询用户的历史请求记录的步骤,包括:根据所述用户识别码中的主用户识别码查询用户的历史请求记录。

步骤S104:根据所述历史请求记录计算所述用户的请求行为特征的特征值,所述请求行为特征包括请求频率特征,和/或,对应关系特征。

通过步骤S103,已根据所述用户识别码查询用户的历史请求记录,接下来,可以根据所述用户的历史请求记录,统计、计算所述用户的请求行为特征的特征值,所述请求行为特征包括请求频率特征,和/或,对应关系特征。

所述请求频率特征是指在单位时间内,同一用户发起的请求次数,例如在过去的一小时内,某一用户ID的访问请求次数,或在过去的一小时内,同一用户IP地址发起的请求次数;所述对应关系特征,是指单位时间内,同一用户识别码对应的另一项用户识别码的数量,例如,在过去的一天内,在同一用户IP地址上发起请求的用户ID的数量,或在过去的一天内,同一用户手机号在多少个IP地址上发起过请求。容易理解的是,只有在所述用户识别码至少有两项时,所述请求行为特征才可能包括对应关系特征,例如所述请求信息中包含用户ID和用户IP地址两项用户识别码,就能够计算所述用户ID和所述用户IP地址之间的对应关系特征的特征值。

在本申请提供的一个实施例中,所述请求行为特征包括请求频率特征,所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤,包括:

根据所述历史请求记录计算所述用户的请求频率特征的特征值。

在本申请提供的另一个实施例中,所述请求行为特征包括对应关系特征,所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤,包括:

根据所述历史请求记录计算所述用户的对应关系特征的特征值。

需要说明的是,对于同一个用户有多项用户识别码的情形,可以根据预先设定的优先级计算优先级较高的一项或多项用户识别码对应的请求行为特征的特征值,也可以对每项用户识别码都分别计算其对应的请求行为特征的特征值。

步骤S105:判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户。

通过步骤S104,已根据所述历史请求记录计算获得所述用户的请求行为特征的特征值,接下来,判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户。

所述特征阈值是针对所述请求行为特征的特征值设定的,例如针对请求频率特征的特征值设定的频率特征阈值,以及针对对应关系特征的特征值设定的对应关系特征阈值,若所述请求行为特征的特征值大于所述特征阈值,则认为所述用户的请求异常,识别所述用户为非正常用户,拦截该请求;若所述请求行为特征的特征值不大于所述特征阈值,则识别所述用户为正常用户,响应该请求。

在本申请提供的一个实施例中,所述请求行为特征包括请求频率特征,所述判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户的步骤,包括:

判断所述请求频率特征的特征值是否大于频率特征阈值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

在本申请提供的另一个实施例中,所述请求行为特征包括对应关系特征,所述判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户的步骤,包括:

判断所述对应关系特征的特征值是否大于对应关系特征阈值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

需要说明的是,对于同一个用户有多项用户识别码的情形,可以判断其中 的主用户识别码对应的请求行为特征的特征值是否大于特征阈值,从而识别所述用户是否为正常用户;也可以根据预先设定的优先级判断优先级较高的一项或多项用户识别码对应的请求行为特征的特征值是否大于特征阈值,从而识别所述用户是否为正常用户;还可以对每项用户识别码都分别判断其对应的请求行为特征的特征值是否大于特征阈值,若其中有任一项用户识别码对应的请求行为特征的特征值大于特征阈值,则识别所述用户为非正常用户,若每一项用户识别码对应的请求行为特征的特征值都不大于特征阈值,则识别所述用户为正常用户。

至此,通过步骤S101至步骤S105完成了本申请提供的基于请求行为特征的用户识别方法实施例的流程。

考虑到本申请提供的所述基于请求行为特征的用户识别方法的目的在于根据用户的请求行为特征判断用户是否为正常用户,因此,若通过步骤S103没有查询到所述用户的历史请求记录,则说明所述用户为新用户,不存在非法请求行为,进而识别所述用户为正常用户,响应该请求。

考虑到在有黑名单机制的服务器上,对黑名单上的用户不需要进行请求行为特征分析,因此,在本申请提供的一个实施例中,在所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤前,还包括:

根据所述用户识别码查询所述用户是否在黑名单中;

若在黑名单中,则识别所述用户为非正常用户,拦截该请求。

需要说明的是,以上步骤既可以在步骤S103前执行,也可以在步骤S103之后、步骤S104之前执行,其并不影响本申请的发明本质,均在本申请的保护范围之内。

在本申请提供的一个实施例中,对于同一个用户有多项用户识别码的情形,只要任一项用户识别码在黑名单中,即可认为所述用户为非正常用户,例如:某一用户IP地址被拉入黑名单,那么通过此IP地址发起请求的所有用户ID都视为非正常用户。

考虑到用户可能受到恶意程序的劫持导致其用户识别码被拉入黑名单,为避免所述用户在人为正常登录时也被视为非正常用户而被拦截,因此,在本申请提供的一个实施例中,在所述根据所述历史请求记录计算所述用户的请求行为特征的特征值的步骤前,还包括:

根据所述用户识别码查询所述用户是否在黑名单中;

若在黑名单中,则对所述用户进行交互验证;

在用户通过所述交互验证时识别所述用户为正常用户,响应该请求;

在用户未通过所述交互验证时识别所述用户为非正常用户,拦截该请求。

需要说明的是,以上步骤既可以在步骤S103前执行,也可以在步骤S103之后、步骤S104之前执行,其并不影响本申请的发明本质,均在本申请的保护范围之内。

所述交互验证包括以下任一种:图像交互验证,文本交互验证,声音交互验证。

所述图像交互验证是通过用户识别图像判断用户是否为正常用户的验证方法,例如:服务端向用户端发送若干张含有不同内容的图片,要求用户选择出含有某一内容的图片,若用户选择正确,则验证通过,若用户选择不正确,则验证不通过。

所述文本交互验证是通过用户识别文本判断用户是否为正常用户的验证方法,即常见的验证码验证,例如:服务端将一串随机产生的数字或符号,生成一幅扭曲字符串的图片,图片里加上一些干扰像素(防止OCR),由用户肉眼识别其中的验证码信息,输入表单提交验证,若用户输入正确,则验证通过,若用户输入不正确,则验证不通过。

所述声音交互验证是通过用户识别声音判断用户是否为正常用户的验证方法,例如:服务端以随机间隔播放随机选择的一个或多个人播报的数字、字母或单词,并添加背景噪声以抵抗ASR的攻击,由用户识别所述播报的数字、字母或单词,输入表单提交验证,若用户输入正确,则验证通过,若用户输入不正确,则验证不通过。

以上均为现有技术中的成熟交互验证方法,此处不再赘述,其均在本申请的保护范围之内。

考虑到用户端可能由于硬件问题或软件问题未必支持上述交互验证,因此,在本申请提供的一个实施例中,所述对所述用户进行交互验证的步骤,包括:

查询所述用户端是否支持交互验证;

在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

在所述用户端支持交互验证时,对所述用户进行交互验证。

由于大多数情况下,在含有多个用户识别码的时候,将用户ID作为识别用户的主要识别码,因此,在本申请提供的一个实施例中,所述根据所述用户识别码查询所述用户是否在黑名单中的步骤,包括:

查询所述用户识别码是否含有用户ID;

若含有用户ID,则根据所述用户ID查询所述用户是否在黑名单中;

若不含有用户ID,则不需要查询所述用户是否在黑名单中。

考虑到用户可能受到恶意程序的劫持导致其用户识别码对应的请求行为特征的特征值大于特征阈值,进而导致用户在正常情况下也无法发出请求信息的情形,在本申请提供的一个实施例中,所述判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户的步骤,包括:

判断所述请求行为特征的特征值是否大于特征阈值;

若不大于,则识别所述用户为正常用户,响应该请求;

若大于,则对所述用户进行交互验证;

在用户通过所述交互验证时识别所述用户为正常用户,响应该请求;

在用户未通过所述交互验证时识别所述用户为非正常用户,拦截该请求。

所述交互验证包括以下任一种:图像交互验证,文本交互验证,声音交互验证。请参考上文所述,此处不再赘述,其均在本申请的保护范围之内。

考虑到用户端可能由于硬件问题或软件问题未必支持上述交互验证,因此,在本申请提供的一个实施例中,所述对所述用户进行交互验证的步骤,包括:

查询所述用户端是否支持交互验证;

在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

在所述用户端支持交互验证时对所述用户进行交互验证。

为了进一步提高识别所述用户是否为正常用户的准确性,避免本申请提供的所述基于请求行为特征的用户识别方法造成误判,提高本方法的包容性,在本申请提供的一个实施例中,所述对所述用户进行交互验证的步骤,包括:

根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进 行计分;

判断对所述用户识别码的计分是否超过计分阈值;

在所述对所述用户识别码的计分没有超过计分阈值时,识别所述用户为正常用户,响应该请求;

在所述对所述用户识别码的计分超过计分阈值时,对所述用户进行交互验证。

所述计分是通过统计用户的不良请求行为次数,根据用户的不良请求行为次数的多少对用户进行惩罚的一种机制,可以是积分,也可以是罚分。例如,当所述积分采用罚分的方式时,用户每发出一次不良请求行为,则对其罚分一次,在罚分低于罚分阈值时对用户给予宽容,响应其请求,在罚分超过罚分阈值时,则认为用户为非正常用户,可能是恶意异常程序如爬虫等,拦截其请求。所述积分与罚分的原理类似,以上计分机制均是现有技术中的常用技术,此处不再赘述,其均在本申请的保护范围之内。

为了避免本申请提供的所述基于请求行为特征的用户识别方法造成误判,提高本方法的包容性,在本申请提供的另一个实施例中,所述判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户的步骤,包括:

判断所述请求行为特征的特征值是否大于特征阈值;

若不大于,则识别所述用户为正常用户,响应该请求;

根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进行计分;

判断对所述用户识别码的计分是否超过计分阈值;

在所述对所述用户识别码的计分没有超过计分阈值时,识别所述用户为正常用户,响应该请求;

在所述对所述用户识别码的计分超过计分阈值时,识别所述用户为非正常用户,拦截该请求。

为了能够准确拦截非正常用户的非法请求,同时避免误伤正常用户的正常请求,在本申请提供的一个实施例中,所述特征阈值为按照预定的规则,根据用户识别码的内容,和/或对所述用户识别码的计分实时调整的动态特征阈值。

在一个具体的实施例中,动态特征阈值的设定案例如下:

Userid为用户ID,用户识别码中含有Userid时用户为注册用户,不含Userid时用户为匿名用户;Sessionid为会话ID,SessionidT为Sessionid阈值,是指某个IP允许赋予的不同sessionid的个数;ReqT为访问次数阈值,是指某个IP允许请求的次数。

设定如下:

a)有userid,sessionidT阈值为T1,访问次数阈值ReqT为T2;

b)无userid,sessionidT阈值为T3,访问次数阈值ReqT为T4;

c)SessionidT<=T1为1;SessionidT>T1为0;

d)SessionidT<=T3为1;SessionidT>T3为0;

e)ReqT<=T2为1;ReqT>T2为0;

f)ReqT<=T4为1;ReqT>T4为0;

g)大于sessionidT阈值或大于访问次数阈值ReqT均会被拦截;

h)虽然有userid,但只要被拦截了,就对其罚分,罚到某个阈值,就将其sessionid阈值由T1改为T3,ReqT阈值由T2改为T4;

运行过程如下:

a)有userid,SessionidT<=T1,ReqT<=T2===》1&1=1;不拦截;

b)有userid,SessionidT<=T1,ReqT>T2===》1&0=0;拦截;

c)有userid,SessionidT>T1,ReqT<=T2===》0&1=0;拦截;

d)有userid,SessionidT>T1,ReqT>T2===》0&0=0;拦截;

e)无userid,SessionidT<=T3,ReqT<=T4===》1&1=1;不拦截;

f)无userid,&SessionidT<=T3,ReqT>T4===》1&0=0;拦截;

g)无userid,SessionidT>T3,ReqT<=T4===》0&1=0;拦截;

h)无userid,SessionidT>T3,ReqT>T4===》0&0=0;拦截;

其中,所述T1、T2、T3、T4均为正整数。

需要说明的是,以上仅举例对所述动态特征阈值的设定进行了说明,并不限制本申请的保护范围,实际应用中,所述用户识别码的项数、变更前的特征阈值和变更后的特征阈值都可以根据实际需求灵活设置,此处不再赘述,其均 在本申请的保护范围之内。

在上述的实施例中,提供了一种基于请求行为特征的用户识别方法,与之相对应的,本申请还提供一种基于请求行为特征的用户识别装置。请参看图2,其为本申请提供的一种基于请求行为特征的用户识别装置实施例的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。

本实施例的一种基于请求行为特征的用户识别装置,包括:请求信息接收单元101,用于接收用户端发送的请求信息;请求信息解析单元102,用于解析所述请求信息,获得用户识别码;历史请求记录查询单元103,用于根据所述用户识别码查询用户的历史请求记录;请求行为特征计算单元104,用于根据所述历史请求记录计算所述用户的请求行为特征的特征值,所述请求行为特征包括请求频率特征,和/或,对应关系特征;请求行为特征判断单元105,用于判断所述请求行为特征的特征值是否大于特征阈值,并根据判断结果识别所述用户为正常用户或非正常用户。

可选的,所述请求行为特征包括请求频率特征,所述请求行为特征计算单元104包括:请求频率特征计算子单元,用于根据所述历史请求记录计算所述用户的请求频率特征的特征值;所述请求行为特征判断单元105包括:请求频率特征判断子单元,用于判断所述请求频率特征的特征值是否大于频率特征阈值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

可选的,所述用户识别码包括以下至少一项:用户IP地址,用户ID,会话ID,用户名,用户邮箱,用户手机号,用户身份证号,用户设备ID号。

可选的,所述用户识别码包括以下至少两项:用户IP地址,用户ID,会话ID,用户名,用户邮箱,用户手机号,用户身份证号,用户设备ID号;所述请求行为特征包括对应关系特征,所述请求行为特征的特征值包括:单位时间内,同一用户识别码对应的另一项用户识别码的数量;所述请求行为特征计算单元104包括:对应关系特征计算子单元,用于根据所述历史请求记录计算所述用户的对应关系特征的特征值;所述请求行为特征判断单元105包括:对应关系特征判断子单元,用于判断所述对应关系特征的特征值是否大于对应关系特征阈 值,若判断结果为不大于,则识别所述用户为正常用户,否则,识别所述用户为非正常用户。

可选的,所述基于请求行为特征的用户识别装置,还包括:

无历史请求记录识别单元,用于在所述历史请求记录查询单元没有查询到所述用户的历史请求记录时,识别所述用户为正常用户,响应该请求。

可选的,所述基于请求行为特征的用户识别装置,还包括:

第一黑名单查询单元,用于根据所述用户识别码查询所述用户是否在黑名单中;

黑名单用户识别单元,用于在所述第一黑名单查询单元查询到所述用户在黑名单中时,识别所述用户为非正常用户,拦截该请求。

可选的,所述基于请求行为特征的用户识别装置,还包括:

第二黑名单查询单元,用于根据所述用户识别码查询所述用户是否在黑名单中;

第一交互验证单元,用于在所述第二黑名单查询单元查询到所述用户在黑名单中时,则对所述用户进行交互验证;

第一交互验证识别单元,用于在所述第一交互验证单元的验证结果为用户通过所述交互验证时,识别所述用户为正常用户,响应该请求;

第二交互验证识别单元,用于在所述第一交互验证单元的验证结果为用户未通过所述交互验证时,识别所述用户为非正常用户,拦截该请求。

可选的,所述第一交互验证单元包括:

第一交互验证支持子单元,用于查询所述用户端是否支持交互验证;

第一交互验证支持识别子单元,用于在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

第一交互验证子单元,用于在所述用户端支持交互验证时,对所述用户进行交互验证。

可选的,所述第一交互验证单元包括以下任一种:

图像交互验证子单元;文本交互验证子单元;声音交互验证子单元。

可选的,所述第二黑名单查询单元,包括:

用户ID查询子单元,用于查询所述用户识别码是否含有用户ID;

用户ID黑名单查询子单元,用于在所述用户ID查询子单元的查询结果为所述用户识别码含有用户ID时,根据所述用户ID查询所述用户是否在黑名单中。

可选的,所述请求行为特征判断单元105,包括:

特征阈值判断子单元,用于判断所述请求行为特征的特征值是否大于特征阈值;

第一特征阈值识别子单元,用于在所述特征阈值判断子单元判断所述请求行为特征的特征值不大于特征阈值时,识别所述用户为正常用户,响应该请求。

可选的,所述请求行为特征判断单元105,还包括:

第二交互验证子单元,用于在所述特征阈值判断子单元判断所述请求行为特征的特征值大于特征阈值时,对所述用户进行交互验证;

第三交互验证识别子单元,用于在所述第二交互验证子单元的验证结果为用户通过所述交互验证时,在用户通过所述交互验证时识别所述用户为正常用户,响应该请求;

第四交互验证识别子单元,用于在所述第二交互验证子单元的验证结果为用户未通过所述交互验证时,识别所述用户为非正常用户,拦截该请求。

可选的,所述第二交互验证子单元包括:

第二交互验证支持子单元,用于查询所述用户端是否支持交互验证;

第二交互验证支持识别子单元,用于在所述用户端不支持交互验证时,识别所述用户为非正常用户,拦截该请求;

第三交互验证子单元,用于在所述用户端支持交互验证时对所述用户进行交互验证。

可选的,所述第二交互验证子单元包括以下任一种:

图像交互验证子单元;文本交互验证子单元;声音交互验证子单元。

可选的,所述第二交互验证子单元包括:

第一计分子单元,用于根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进行计分;第一计分判断子单元,用于判断对所述用户识别码的计分是否超过计分阈值;

第一计分识别子单元,用于在所述对所述用户识别码的计分没有超过计分 阈值时,识别所述用户为正常用户,响应该请求;

第四交互验证子单元,用于在所述对所述用户识别码的计分超过计分阈值时,对所述用户进行交互验证。

可选的,所述请求行为特征判断单元105,还包括:

第二计分子单元,用于根据所述请求行为特征的特征值大于特征阈值的次数对所述用户识别码进行计分;第二计分判断子单元,用于判断对所述用户识别码的计分是否超过计分阈值;

第二计分识别子单元,用于在所述对所述用户识别码的计分没有超过计分阈值时,识别所述用户为正常用户,响应该请求;

第三计分识别子单元,用于在所述对所述用户识别码的计分超过计分阈值时,识别所述用户为非正常用户,拦截该请求。

可选的,所述基于请求行为特征的用户识别装置还包括:动态特征阈值设定单元,用于按照预定的规则,根据用户识别码的内容,和/或对所述用户识别码的计分实时调整所述特征阈值。

可选的,所述用户识别码包括主用户识别码和辅用户识别码,其中所述主用户识别码为标识用户的唯一性识别码,以用于区分不同的用户,所述辅用户识别码为所述请求信息中除所述主用户识别码以外的其他用户识别码,包含同一个主用户识别码的请求信息视为同一个用户的请求信息。

以上,为本申请提供的一种基于请求行为特征的用户识别装置的实施例。

本申请还提供一种基于请求行为特征的用户识别终端设备,包括:

中央处理器;

输入输出单元;

存储器;

所述存储器中存储有本申请提供的基于请求行为特征的用户识别方法;并在启动后能够根据上述方法运行。

由于本基于请求行为特征的用户识别终端设备使用上述基于请求行为特征的用户识别方法,相关之处请参见上述基于请求行为特征的用户识别方法实施例说明,此处不再赘述。

本申请还提供一种基于请求行为特征的用户识别系统,包括用户端和服务端,其特征在于,所述服务端配置有本申请提供的基于请求行为特征的用户识别装置,所述用户端接收用户的输入生成请求信息,并向所述服务端发送所述请求信息,所述服务端接收所述请求信息后,识别所述用户为正常用户或非正常用户。

由于本基于请求行为特征的用户识别系统配置有上述基于请求行为特征的用户识别装置,相关之处请参见上述基于请求行为特征的用户识别装置实施例说明,此处不再赘述。

本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件 和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1