一种操作行为识别方法及装置与流程

文档序号:32480084发布日期:2022-12-09 21:48阅读:36来源:国知局
一种操作行为识别方法及装置与流程

1.本技术涉及通信技术领域,尤其涉及一种操作行为识别方法及装置。


背景技术:

2.目前在进行人机交互时,为了保证设备的安全性,往往会对用户进行验证,比较常用的验证方式有验证码验证,例如,利用字符验证码或滑动行为验证码执行验证操作,广泛应用于恶意破解密码、刷票、论坛灌水等非法行为的拦截场景中,在一定程度上保证了设备所接入系统的安全性,但是该方法需要用户每次都需要输入验证码,影响用户的体验效果。
3.此外,当前还提供了其他的安全验证方法,例如,基于用户与设备的交互数据,通过阈值比较的方式来检测用户操作的安全性。但是该方法严重依赖于阈值设定的准确性,而且若对用户的行为数据捕捉的过于粗糙,会导致基于交互数据进行验证时验证结果准确度不高的问题,进而影响设备所接入系统的安全性。
4.因此,如何在用户进行系统操作时,准确地对用户的操作进行安全识别是值得考虑的技术问题之一。


技术实现要素:

5.有鉴于此,本技术提供一种操作行为识别方法及装置,用以在用户进行系统操作时,准确地对用户的操作进行安全识别。
6.具体地,本技术是通过如下技术方案实现的:
7.根据本技术的第一方面,提供一种操作行为识别方法,包括:
8.获取用户操作访问对象的操作数据;
9.从所述操作数据中提取出所述用户的操作行为特征;
10.根据所述操作行为特征,确定所述用户的行为特征向量;
11.利用聚类算法,对所述行为特征向量进行聚类识别处理,以识别出异常行为点;
12.若所述异常行为点用于表征所述用户的操作行为,则允许所述用户访问所述访问对象;
13.若所述异常行为点用于表征机器操作行为,则对所述用户进行验证,在验证通过后,允许所述用户访问所述访问对象。
14.根据本技术的第二方面,提供一种操作行为识别装置,包括:
15.获取模块,用于获取用户操作访问对象的操作数据;
16.提取模块,用于从所述操作数据中提取出所述用户的操作行为特征;
17.确定模块,用于根据所述操作行为特征,确定所述用户的行为特征向量;
18.识别模块,用于利用聚类算法,对所述行为特征向量进行聚类识别处理,以识别出异常行为点;
19.访问控制模块,用于若所述异常行为点用于表征所述用户的操作行为,则允许所述用户访问所述访问对象;若所述异常行为点用于表征机器操作行为,则对所述用户进行
验证,在验证通过后,允许所述用户访问所述访问对象。
20.根据本技术的第三方面,提供一种电子设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的计算机程序,处理器被计算机程序促使执行本技术实施例第一方面所提供的方法。
21.根据本技术的第四方面,提供一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本技术实施例第一方面所提供的方法。
22.本技术实施例的有益效果:
23.本技术实施例提供的操作行为识别方法及装置中,获取用户操作访问对象的操作数据;从所述操作数据中提取出所述用户的操作行为特征;根据所述操作行为特征,确定所述用户的行为特征向量;利用聚类算法,对所述行为特征向量进行聚类识别处理,以识别出异常行为点;若所述异常行为点用于表征所述用户的操作行为,则允许所述用户访问所述访问对象;若所述异常行为点用于表征机器操作行为,则对所述用户进行验证,在验证通过后,允许所述用户访问所述访问对象。通过实施上述方法,在用户操作访问对象时,能够有效的对用户的操作进行安全识别,即,识别出用户的操作行为还是机器操作行为,在识别出操作行为之后,执行对应的安全操作,从而提升了电子设备的安全性。
附图说明
24.图1是本技术实施例提供的一种操作行为识别方法的流程示意图;
25.图2是本技术实施例提供的操作行为识别装置的结构示意图;
26.图3是本技术实施例提供的一种实施操作行为识别方法的电子设备的硬件结构示意图。
具体实施方式
27.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如本技术的一些方面相一致的装置和方法的例子。
28.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
29.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
30.下面对本技术提供的操作行为识别方法进行详细地说明。
31.参见图1,图1是本技术提供的一种操作行为识别方法的流程图,该方法可以应用
于电子设备中,该电子设备可以但不限于为网络安全设备等等,该网络安全设备例如可以为防火墙设备等,该电子设备实施所述方法时,包括如下所示步骤:
32.s101、获取用户操作访问对象的操作数据。
33.本步骤中,用户会基于电子设备向其展示访问对象的页面键入,该用户操作访问对象的操作数据,由此,该电子设备就可以获取到该操作数据。
34.需要说明的是,上述页面可以但不限于为web页面等等。
35.可选地,当用户从进入访问对象的展示页面开始到离开页面期间,电子设备会记录用户在此页面操作的所有行为数据,包括但不限于为鼠标点击数据和键盘输入数据等等,在此基础上,电子设备可以记录如下格式的操作数据:
[0036][0037]
此外,对于用户多次访问这个页面不视为一个会话session,即,用户每次访问这个页面会记录一个sessionid,每个会话session对应用户此次在该页面进行的一些列的操作数据,汇总得到最终的操作数据。
[0038]
在此基础上,用户执行的操作可以但不限于包括鼠标点击操作,键盘输入字符操作。例如,在用户进行关键操作时,如提交表单且跳转到核心页面时,电子设备会对用户在此页面的操作数据进行归总,从而得到访问对象的操作数据。
[0039]
可选地,电子设备提取的操作数据可以为包括敏感操作的操作数据,具体来说,电子设备可以预先设定几个包括需要执行敏感操作的目标页面,和/或,针对每个页面,设置可能包括敏感操作所在的目标区域。在此基础上,当用户操作了目标页面,则获取基于该目标页面的操作数据;而当用户操作目标区域时,则获取包括该目标区域的操作数据。
[0040]
s102、从所述操作数据中提取出所述用户的操作行为特征。
[0041]
本步骤中,当电子设备获取到操作数据后,为了方便进行用户的操作行为的识别,电子设备会从操作数据中提取出用户的操作行为特征,该操作行为特征可以用行为特征值表示。
[0042]
可选地,上述操作行为特征可以但不限于包括:鼠标点击次数、鼠标点击频率、鼠标点击平均间隔时间、鼠标点击最短间隔时间、键盘键入次数、键盘键入频率、键盘键入平均间隔时间、键盘键入最短间隔时间、进入页面-敏感操作时间间隔等等。上述获取的操作行为特征能够反映用户操作访问对象进行的行为的特征。
[0043]
s103、根据所述操作行为特征,确定所述用户的行为特征向量。
[0044]
本步骤中,在获得操作行为特征后,就可以以向量的形式对该操作行为特征进行构建处理,得到用户的行为特征向量。该行为特征向量中每一元素对操作行为特征中的一个特征。
[0045]
s104、利用聚类算法,对所述行为特征向量进行聚类识别处理,以识别出异常行为点。
[0046]
本步骤中,本技术中的聚类算法可以设置多个聚类中心,然后基于上述获得的用户访问操作对象的每个操作行为的行为特征向量,可以基于行为特征向量偏离每个聚类中心的距离,来确定偏离聚类中心的异常行为点。
[0047]
s105、若所述异常行为点用于表征所述用户的操作行为,则允许所述用户访问所述访问对象。
[0048]
本步骤中,在步骤s104筛选出异常行为点后,该聚类算法也会识别出该异常行为点的聚类结果,根据该聚类结果可以确认该异常行为点用于表征的是用户的操作行为还是机器操作行为,当确认异常行为点为用户的操作行为引起的,则表明识别了当前访问对象的行为是真实用户的行为,则此时可以允许该用户访问该访问对象。
[0049]
s106、若所述异常行为点用于表征机器操作行为,则对所述用户进行验证,在验证通过后,允许所述用户访问所述访问对象。
[0050]
本步骤中,当确认异常行为点为机器操作行为时,则表明识别了当前访问对象的行为是机器登录触发的,则此时为了电子设备的安全性,本实施例提出会对用户进行验证,当验证通过时,则表明本次的机器操作行为属于正常的操作行为,则允许该用户访问该访问对象。
[0051]
通过实施本技术提供的操作行为识别方法,获取用户操作访问对象的操作数据;从所述操作数据中提取出所述用户的操作行为特征;根据所述操作行为特征,确定所述用户的行为特征向量;利用聚类算法,对所述行为特征向量进行聚类识别处理,以识别出异常行为点;若所述异常行为点用于表征所述用户的操作行为,则允许所述用户访问所述访问对象;若所述异常行为点用于表征机器操作行为,则对所述用户进行验证,在验证通过后,允许所述用户访问所述访问对象。通过实施上述方法,在用户操作访问对象时,能够有效的对用户的操作进行安全识别,即,识别出用户的操作行为还是机器操作行为,在识别出操作行为之后,执行对应的安全操作,从而提升了电子设备的安全性。
[0052]
可选地,基于上述实施例,本实施例中可以按照下述过程执行步骤s106中的对用户进行验证的步骤:展示验证码输入页面;若基于所述验证码输入页面键入的验证码与设定验证码一致,则对所述用户验证通过;若基于所述验证码输入页面键入的验证码与设定验证码不一致,或未接收到验证码,则对所述用户验证不通过,阻断所述用户访问所述访问对象的操作。
[0053]
具体地,当基于图1所示的流程确认异常行为点可能对应机器操作行为,为了提升访问对象的安全性且避免安全的操作行为的误丢弃,本实施例提出,在确认异常行为点对应机器操作行为时,则电子设备可以向用户展示验证码输入页面,提示用户键入验证码,若该机器操作行为为用户主动触发的,则用户会看到该验证码输入页面,这样用户就可以基于该验证码输入页面输入需要输入的验证码,这样,电子设备就可以接收到该验证码,若确认接收到的用户键入的验证码与设定的验证码一致,则确认对该用户验证通过,进而允许该用户访问该访问对象;若电子设备设定时间内为接收到键入的验证码,或者接收到的验证码与设定的验证码不一致,则对该用户验证不通过,则阻断该用户访问所期望访问对象的操作。
[0054]
可选地,基于上述任一实施例,本实施例中可以按照下述方法执行步骤s104:利用knn算法,对所述行为特征向量进行聚类识别,确定所述行为特征向量中与每个聚类中心之间的距离在设定距离范围内的初始异常行为点;确定每个初始异常行为点属于对应聚类中心所属的异常行为分类的置信度;根据确定出的各初始异常行为点在各个异常行为分类下的置信度,确定最终的异常行为点。
[0055]
具体地,本技术会先利用knn聚类算法对行为特征向量进行聚类识别处理,该knn聚类算法是通过测量不同行为特征向量中的特征值之间的距离进行分类。大致思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别,其中k通常是不大于20的整数。基于此,本实施例中,knn算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定用户操作访问对象的操作行为的行为特征向量所属的类别。
[0056]
为了更好地提升本技术中识别结果的准确性,本技术对knn算法进行改进,即,先knn算法对行为特征向量进行聚类识别处理,先初步筛选出初步异常行为点,然后再确定每个初始异常行为点在各异常行为分类下的置信度,进而将置信度高的初始行为异常点确定为最终的异常行为点,即步骤s104中要确定的异常行为点。
[0057]
进一步地,可以按照下述过程确定每个初始异常行为点属于对应聚类中心所属的异常行为分类的置信度:确定该初始异常行为点在对应的聚类中心下的若干个领域点;对每个领域点进行权重分配处理;将各个领域点的权重的和值,确定为该初始异常行为点属于对应聚类中心所属的异常行为分类的置信度。
[0058]
具体来说,可以先利用knn算法确定出每个初始异常行为点附近的若干个领域点,即,每个领域点为距离初始异常行为点比较接近的点,然后在为每个领域点分配权重,进而对分配的权重进行求和处理,从而得到的和值即为该初始异常行为点属于对应异常行为分类的置信度。这样,由于领域点是在初始异常行为点附近的点,由此一来,利用初始异常行为点的领域点的权重来计算置信度,得到的置信度更具有参考价值及代表性。
[0059]
需要说明的是,在分配权重时可以遵循如下原则:距离初始异常行为点越近的领域点,分配的权重越大;而距离初始异常行为点距离较远的领域点则可以赋予较小的权重。
[0060]
在此基础上,可以按照下述方法对每个领域点进行权重分配处理:确定各个领域点中与该初始异常行为点之间距离最远的目标领域点;确定所述目标领域点与该初始异常行为点之间的第一欧式距离;针对每个领域点,确定该领域点与该初始异常行为点之间的第二欧式距离;将所述第一欧式距离与所述第二欧式距离之间的差值,与所述第一欧式距离之间的比值,确定为该领域点的权重。
[0061]
具体来说,假设初始异常行为点p附近的m个领域点分别为:l1、l2、l3、l4
……
lm,则可以先计算这m个领域点中距离初始异常行为点p最远的目标领域点与该初始异常行为点p之间的欧式距离,即上述第一欧式距离,记为d
max
,然后按照下述公式计算每个领域点的权重:
[0062]di
=(d
max-d
i,q
)/d
max
[0063]
上述公式中,di为第i个领域点的权重,d
i,q
为第i个领域点与初始异常行为点p之间的欧式距离,即上述第二欧式距离。
[0064]
由此一来,每个初始异常行为点p的置信度p可以表示为:p=∑di,li=x。其中,x表示该初始异常行为点所属的异常行为类别。
[0065]
在此基础上,可以筛选出置信度最大的初始异常行为点,然后将筛选出的初始异常行为节点确定为最终的异常行为点,相应地,该筛选出的初始异常行为点对应的异常行为类别即为最终的异常行为点所属的异常行为分类。
[0066]
需要说明的是,上述knn算法为预先训练得到的,即基于历史采集的用户的操作数
据,通过规则和人工标注的方式,从这些操作数据中获得行为特征向量,其中获得行为特征向量的过程可以参考步骤s101~s103的描述过程。然后利用人工标注的方式获得分类,从而得到行为特征库。然后基于该行为特征库训练knn算法。
[0067]
基于同一发明构思,本技术还提供了与上述操作行为识别方法对应的操作行为识别装置。该操作行为识别装置的实施具体可以参考上述对操作行为识别方法的描述,此处不再一一论述。
[0068]
参见图2,图2是本技术一示例性实施例提供的一种操作行为识别装置,包括:
[0069]
获取模块201,用于获取用户操作访问对象的操作数据;
[0070]
提取模块202,用于从所述操作数据中提取出所述用户的操作行为特征;
[0071]
确定模块203,用于根据所述操作行为特征,确定所述用户的行为特征向量;
[0072]
识别模块204,用于利用聚类算法,对所述行为特征向量进行聚类识别处理,以识别出异常行为点;
[0073]
访问控制模块205,用于若所述异常行为点用于表征所述用户的操作行为,则允许所述用户访问所述访问对象;若所述异常行为点用于表征机器操作行为,则对所述用户进行验证,在验证通过后,允许所述用户访问所述访问对象。
[0074]
可选地,基于上述实施例,本实施例中,上述访问控制模块205,具体用于展示验证码输入页面;若基于所述验证码输入页面键入的验证码与设定验证码一致,则对所述用户验证通过;若基于所述验证码输入页面键入的验证码与设定验证码不一致,或未接收到验证码,则对所述用户验证不通过,阻断所述用户访问所述访问对象的操作。
[0075]
可选地,基于上述任一实施例,本实施例中,上述识别模块204,具体用于利用knn算法,对所述行为特征向量进行聚类识别,确定所述行为特征向量中与每个聚类中心之间的距离在设定距离范围内的初始异常行为点;确定每个初始异常行为点属于对应聚类中心所属的异常行为分类的置信度;根据确定出的各初始异常行为点在各个异常行为分类下的置信度,确定最终的异常行为点。
[0076]
在此基础之上,上述识别模块204,具体用于确定该初始异常行为点在对应的聚类中心下的若干个领域点;对每个领域点进行权重分配处理;将各个领域点的权重的和值,确定为该初始异常行为点属于对应聚类中心所属的异常行为分类的置信度。
[0077]
进一步地,上述识别模块204,具体用于确定各个领域点中与该初始异常行为点之间距离最远的目标领域点;确定所述目标领域点与该初始异常行为点之间的第一欧式距离;针对每个领域点,确定该领域点与该初始异常行为点之间的第二欧式距离;将所述第一欧式距离与所述第二欧式距离之间的差值,与所述第一欧式距离之间的比值,确定为该领域点的权重。
[0078]
由此一来,在用户操作访问对象时,能够有效的对用户的操作进行安全识别,即,识别出用户的操作行为还是机器操作行为,在识别出操作行为之后,执行对应的安全操作,从而提升了电子设备的安全性。
[0079]
基于同一发明构思,本技术实施例提供了一种电子设备,如图3所示,包括处理器301和机器可读存储介质302,机器可读存储介质302存储有能够被处理器301执行的计算机程序,处理器301被计算机程序促使执行本技术任一实施例所提供的操作行为识别方法。此外,该电子设备还包括通信接口303和通信总线304,其中,处理器301,通信接口303,机器可
读存储介质302通过通信总线304完成相互间的通信。
[0080]
上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0081]
通信接口用于上述电子设备与其他设备之间的通信。
[0082]
上述机器可读存储介质302可以为存储器,该存储器可以包括随机存取存储器(random access memory,ram)、ddr sram(double data rate synchronous dynamic random access memory,双倍速率同步动态随机存储器),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0083]
上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0084]
对于电子设备以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0085]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0086]
上述装置中各个单元/模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0087]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元/模块可以是或者也可以不是物理上分开的,作为单元/模块显示的部件可以是或者也可以不是物理单元/模块,即可以位于一个地方,或者也可以分布到多个网络单元/模块上。可以根据实际的需要选择其中的部分或者全部单元/模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0088]
以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1