1.本发明属于数据安全技术领域,尤其涉及一种用户异常行为识别方法、系统、电子设备及存储介质。
背景技术:
2.随着个人便携式智能移动设备和无线网络的普及,中国网络及其各种应用呈现出井喷式的发展状态。信息化、数字化、大数据时代成为现代社会的大势所趋,如果网络出现异常,可能会对个人、组织和国家的经济、安全、隐私等方面的利益会造成严重的损失。目前,许多网络攻击者想方设法的绕开网络安全监控系统的侦查,获取机要信息或者妨碍网络的正常运行,以获取非法收入,得到非法受益。
3.现有技术包括基于端口的识别方法,计算机网络中的端口包含两种概念:(1)物理意义上的端口,应用在设备与设备之间的连接接口上;(2)逻辑意义上的端口,指的是tcp/ip协议中使用的端口号。现有逻辑意义上的端口总共可以分配65536个端口号,包括公认端口、注册端口和动态端口。其中公认端口范围为0至1023,注册端口范围为1024至49151,动态端口为1024至65535。在互联网的发展初期,应用程序较少时,使用公认端口可以标识用户行为的类型,而且攻击者常常利用某些端口号对网络进行发起攻击,也可以通过端口号识别出发生异常的行为。基于端口的识别方法虽然可以通过分析用户流量中端口号的关联性,可以达到识别用户异常行为的目的,但是它的缺点是无法准确标识出部分用户行为。
技术实现要素:
4.本技术实施例提供了一种用户异常行为识别方法、系统、电子设备及存储介质,以至少解决现有用户异常行为识别方法无法准确标识出部分用户行为的问题。
5.第一方面,本技术实施例提供了一种用户异常行为识别方法,包括:流量异常检测步骤,通过一时间点上信息熵的变化是否超过一预设阈值判断该所述时间点是否存在异常流量;用户行为识别步骤,若存在异常流量,则根据所述异常流量中用户的用户相似度,识别出所述用户中的异常用户;异常行为分类步骤,识别所述异常用户的异常行为类型,并输出所述异常行为类型。
6.优选的,所述用户行为识别步骤进一步包括:对所述异常流量中所述用户的用户行为数据之间的相似度进行计算,根据一预设相似度标准,判定不符合所述预设相似度标准的所述用户为所述异常用户。
7.优选的,所述异常行为分类步骤进一步包括:使用k
‑
means算法进行所述异常行为类型分簇。
8.优选的,所述流量异常检测步骤进一步包括:在所述流量异常检测步骤的执行过程中,根据所述异常流量检测的灵敏度对所述预设阈值进行调整,若未检测到所述异常流量,则对下一所述时间点执行所述流量异常检测步骤。
9.第二方面,本技术实施例提供了一种用户异常行为识别系统,适用于上述一种用
户异常行为识别方法,包括:流量异常检测模块,通过一时间点上信息熵的变化是否超过一预设阈值判断该所述时间点是否存在异常流量;用户行为识别模块,若存在异常流量,则根据所述异常流量中用户的用户相似度,识别出所述用户中的异常用户;异常行为分类模块,识别所述异常用户的异常行为类型,并输出所述异常行为类型。
10.在其中一些实施例中,所述用户行为识别模块进一步包括:对所述异常流量中所述用户的用户行为数据之间的相似度进行计算,根据一预设相似度标准,判定不符合所述预设相似度标准的所述用户为所述异常用户。
11.在其中一些实施例中,所述异常行为分类模块进一步包括:使用k
‑
means算法进行所述异常行为类型分簇。
12.在其中一些实施例中,所述流量异常检测模块进一步包括:在所述流量异常检测模块的执行过程中,根据所述异常流量检测的灵敏度对所述预设阈值进行调整,若未检测到所述异常流量,则对下一所述时间点执行所述流量异常检测模块。
13.第三方面,本技术实施例提供了一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的一种用户异常行为识别方法。
14.第四方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的一种用户异常行为识别方法。
15.本技术可应用于营销智能技术领域。相比于相关技术,本技术实施例提供的一种用户异常行为识别方法,使用机器学习算法进行用户异常行为识别的方法,包括流量异常检测功能和用户异常行为识别功能,可以基于某个时间点的流量进行流量异常检测,并基于检测的异常流量识别用户异常行为,可以准确准确标识出部分用户行为。
附图说明
16.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
17.图1为本发明的用户异常行为识别方法流程图;
18.图2为本发明的用户异常行为识别系统的框架图;
19.图3为本发明的电子设备的框架图;
20.以上图中:
21.1、流量异常检测模块;2、用户行为识别模块;3、异常行为分类模块;60、总线;61、处理器;62、存储器;63、通信接口。
具体实施方式
22.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
23.显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用
于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
24.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
25.除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
26.k
‑
means算法是一种迭代求解的聚类分析算法,其步骤是,预将数据分为k组,则随机选取k个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。
27.信息熵意为描述信源的不确定度。一个事件或一个系统,准确的说是一个随机变量,它有着一定的不确定性。如某个随机变量的不确定性很高,要消除这个不确定性,就需要引入很多的信息,这些很多信息的度量就用“信息熵”表达。需要引入消除不确定性的信息量越多,则信息熵越高,反之则越低。例如某个信息确定性很高,几乎不需要引入信息,因此信息熵很低。
28.以下,结合附图详细介绍本发明的实施例:
29.图1为本发明的用户异常行为识别方法流程图,请参见图1,本发明用户异常行为识别方法包括如下步骤:
30.s1:通过一时间点上信息熵的变化是否超过一预设阈值判断该所述时间点是否存在异常流量。
31.可选的,在所述流量异常检测步骤的执行过程中,根据所述异常流量检测的灵敏度对所述预设阈值进行调整,若未检测到所述异常流量,则对下一所述时间点执行所述流量异常检测步骤。
32.在具体实施中,基于某个时间点的流量经过流量异常检测部分进行流量异常检测,通过判断某个时间点t上的信息熵值变化是否超过预先设定的阈值来确定时间点t是否发生了异常;在此部分,通过固定流量数据的窗口,比如1小时、1天、7天,将这个时间段内的数据进行熵值计算,因为熵是判断数据的混乱程度,数值越大代表数据越混乱,可选的,可
预先设置为10,之后根据报警的灵敏度进行调整。
33.在具体实施中,若未检测到异常流量,则重复执行步骤s1进行下一时间点的检测。
34.s2:若存在异常流量,则根据所述异常流量中用户的用户相似度,识别出所述用户中的异常用户。
35.可选的,对所述异常流量中所述用户的用户行为数据之间的相似度进行计算,根据一预设相似度标准,判定不符合所述预设相似度标准的所述用户为所述异常用户。
36.在具体实施中,若检测到了异常流量,根据用户行为数据进行相似度计算,基于用户行为数据进行相似度计算,因为不同用户间存在关联的行为,那么他们具有一定的行为相似性。若检测到异常流量中所有用户的行为具有关联性,则判断此并非异常,若检测到有一用户的行为与其他用户不同,则认为该用户为异常用户。
37.s3:识别所述异常用户的异常行为类型,并输出所述异常行为类型。
38.可选的,使用k
‑
means算法进行所述异常行为类型分簇。
39.在具体实施中,基于之前识别的异常行为用户,并使用k
‑
means算法进行异常行为类别分簇;使用k
‑
means算法,数据被分成k组,k可以预先设置为5,通过把它们分配到最近的聚类中心。然后,能够计算每个对象到聚类中心的距离(或相似性),并且选择最大的距离作为异常值。
40.在具体实施中,反馈网络管理员或相关用户对应的异常行为用户和对应异常类型。
41.需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
42.本技术实施例提供了一种用户异常行为识别系统,适用于上述的一种用户异常行为识别方法。如以下所使用的,术语“单元”、“模块”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件、或者软件和硬件的组合的实现也是可能并被构想的。
43.图2为根据本发明的用户异常行为识别系统的框架图,请参见图2,包括:
44.流量异常检测模块1:通过一时间点上信息熵的变化是否超过一预设阈值判断该所述时间点是否存在异常流量。
45.可选的,在所述流量异常检测步骤的执行过程中,根据所述异常流量检测的灵敏度对所述预设阈值进行调整,若未检测到所述异常流量,则对下一所述时间点执行所述流量异常检测步骤。
46.在具体实施中,基于某个时间点的流量经过流量异常检测部分进行流量异常检测,通过判断某个时间点t上的信息熵值变化是否超过预先设定的阈值来确定时间点t是否发生了异常;在此部分,通过固定流量数据的窗口,比如1小时、1天、7天,将这个时间段内的数据进行熵值计算,因为熵是判断数据的混乱程度,数值越大代表数据越混乱,可选的,可预先设置为10,之后根据报警的灵敏度进行调整。
47.在具体实施中,若未检测到异常流量,则重复执行流量异常检测模块进行下一时间点的检测。
48.用户行为识别模块2:若存在异常流量,则根据所述异常流量中用户的用户相似
度,识别出所述用户中的异常用户。
49.可选的,对所述异常流量中所述用户的用户行为数据之间的相似度进行计算,根据一预设相似度标准,判定不符合所述预设相似度标准的所述用户为所述异常用户。
50.在具体实施中,若检测到了异常流量,根据用户行为数据进行相似度计算,基于用户行为数据进行相似度计算,因为不同用户间存在关联的行为,那么他们具有一定的行为相似性。若检测到异常流量中所有用户的行为具有关联性,则判断此并非异常,若检测到有一用户的行为与其他用户不同,则认为该用户为异常用户。
51.异常行为分类模块3:识别所述异常用户的异常行为类型,并输出所述异常行为类型。
52.可选的,使用k
‑
means算法进行所述异常行为类型分簇。
53.在具体实施中,基于之前识别的异常行为用户,并使用k
‑
means算法进行异常行为类别分簇;使用k
‑
means算法,数据被分成k组,k可以预先设置为5,通过把它们分配到最近的聚类中心。然后,能够计算每个对象到聚类中心的距离(或相似性),并且选择最大的距离作为异常值。
54.在具体实施中,反馈网络管理员或相关用户对应的异常行为用户和对应异常类型。
55.另外,结合图1描述的一种用户异常行为识别方法可以由电子设备来实现。图3为本发明的电子设备的框架图。
56.电子设备可以包括处理器61以及存储有计算机程序指令的存储器62。
57.具体地,上述处理器61可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,简称为asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
58.其中,存储器62可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器62可包括硬盘驱动器(hard disk drive,简称为hdd)、软盘驱动器、固态驱动器(solid state drive,简称为ssd)、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,简称为usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器62可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器62可在数据处理装置的内部或外部。在特定实施例中,存储器62是非易失性(non
‑
volatile)存储器。在特定实施例中,存储器62包括只读存储器(read
‑
only memory,简称为rom)和随机存取存储器(random access memory,简称为ram)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmable read
‑
only memory,简称为prom)、可擦除prom(erasable programmable read
‑
only memory,简称为eprom)、电可擦除prom(electrically erasable programmable read
‑
only memory,简称为eeprom)、电可改写rom(electrically alterable read
‑
only memory,简称为earom)或闪存(flash)或者两个或更多个以上这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(static random
‑
access memory,简称为sram)或动态随机存取存储器(dynamic random access memory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器(fast page mode dynamic random access memory,简称为fpmdram)、扩展数据输出动态随机存取存储器(extended date out dynamic random access memory,简称为edodram)、同步动态随机存取内存(synchronous dynamic random
‑
access memory,简称sdram)等。
59.存储器62可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器61所执行的可能的计算机程序指令。
60.处理器61通过读取并执行存储器62中存储的计算机程序指令,以实现上述实施例中的任意一种用户异常行为识别方法。
61.在其中一些实施例中,电子设备还可包括通信接口63和总线60。其中,如图3所示,处理器61、存储器62、通信接口63通过总线60连接并完成相互间的通信。
62.通信端口63可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
63.总线60包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。总线60包括但不限于以下至少之一:数据总线(data bus)、地址总线(address bus)、控制总线(control bus)、扩展总线(expansion bus)、局部总线(local bus)。举例来说而非限制,总线60可包括图形加速接口(accelerated graphics port,简称为agp)或其他图形总线、增强工业标准架构(extended industry standard architecture,简称为eisa)总线、前端总线(front side bus,简称为fsb)、超传输(hyper transport,简称为ht)互连、工业标准架构(industry standard architecture,简称为isa)总线、无线带宽(infiniband)互连、低引脚数(low pin count,简称为lpc)总线、存储器总线、微信道架构(micro channel architecture,简称为mca)总线、外围组件互连(peripheral component interconnect,简称为pci)总线、pci
‑
express(pci
‑
x)总线、串行高级技术附件(serial advanced technology attachment,简称为sata)总线、视频电子标准协会局部(video electronics standards association local bus,简称为vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线60可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
64.该电子设备可以执行本技术实施例中的一种用户异常行为识别方法。
65.另外,结合上述实施例中的一种用户异常行为识别方法,本技术实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种用户异常行为识别方法。
66.而前述的存储介质包括:u盘、移动硬盘、只读存储器(readonly memory,简称为rom)、随机存取存储器(random access memory,简称为ram)、磁碟或者光盘等各种可以存储程序代码的介质。
67.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
68.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些
本文用于企业家、创业者技术爱好者查询,结果仅供参考。