CN111431909B - 用户实体行为分析中分组异常检测方法及装置、终端 - Google Patents

用户实体行为分析中分组异常检测方法及装置、终端 Download PDF

Info

Publication number
CN111431909B
CN111431909B CN202010231369.9A CN202010231369A CN111431909B CN 111431909 B CN111431909 B CN 111431909B CN 202010231369 A CN202010231369 A CN 202010231369A CN 111431909 B CN111431909 B CN 111431909B
Authority
CN
China
Prior art keywords
network segment
users
user
similarity
packet
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.)
Active
Application number
CN202010231369.9A
Other languages
English (en)
Other versions
CN111431909A (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.)
Nanjing Juming Network Technology Co ltd
Original Assignee
Nanjing Juming Network 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 Nanjing Juming Network Technology Co ltd filed Critical Nanjing Juming Network Technology Co ltd
Priority to CN202010231369.9A priority Critical patent/CN111431909B/zh
Publication of CN111431909A publication Critical patent/CN111431909A/zh
Application granted granted Critical
Publication of CN111431909B publication Critical patent/CN111431909B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Optimization (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开一种用户实体行为分析中分组异常检测方法及装置、终端,其中方法主要包括:采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。采用本发明,通过利用网段划分将用户访问记录进行分层处理,再利用Jaccard算法对相似性进行计算,在网段部分直接对验证数据进行筛选,可以极大地减少CPU计算量,提高相似性分析的速率,避免因环境数据量较大影响用户实体行为分析中分组异常检测的性能。

Description

用户实体行为分析中分组异常检测方法及装置、终端
技术领域
本发明涉及信息安全技术领域,尤其涉及一种用户实体行为分析中分组异常检测方法及装置、终端。
背景技术
在现代安全信息事件管理系统中,针对用户行行为异常的分析是最重要的方面,特别是用户实体行为异常的分析。用户实体行为分析(User Entity Behavior Analysis,UEBA)是现代安全信息事件管理系统(Security Information Event Management System,SIEMS)中对于安全事件进行二次分析的重要手段。分析的主要目标是检测主体(即用户或可与实际用户即进行关联的账号、主机等) 对客体(即实体)进行相关操作中是否存在异常,其中,实体可以是主机、服务/端口、文件夹/文件、系统定时任务、Windows主机的注册表等。一般而言,这种分析的方法包括特征匹配、流式计算以及基于机器学习的分析,其中基于机器学习的分析是用户实体行为分析中比较重要的手段,而且对于无法使用特征分析的未知威胁则可以利用机器学习的方法进行检测。
在实际应用中,分组异常或用户分组异常也是一种特别需要关注的未知威胁,而且是非常重要的一种威胁,其主要判断依据是根据历史数据(主要是用户对于系统的访问日志或者是主机之间的访问记录)对当前需要检测的数据进行判断;在实际分析中,系统将收集各类访问日志,根据主体之间访问的相似程度划分为若干组,当对相关数据进行验证时,计算其行为是否存在跨组访问。
由于在实际环境中,可以收集到的访问日志中最多的就是主机之间的连接信息,系统可以比较方便地从诸如网络流量探针或者如路由器、交换机等网络设备的Netflow/sFlow统计信息中较为容易地获得,故分组异常分析的焦点一般也集中于对于主机之间的访问关系,换言之可以对主机间访问进行画像,找出其中存在的异常行为。但由于一般在一个大型企业或学校网络中,存在超大量的IP地址(对于一些特殊的大型企业级用户而言,可能超过20万个),采用一般的聚类算法无法做到快速分析,导致检测的实时性较差,影响用户实体行为分析中分组异常检测的性能。
发明内容
本发明实施例提供一种用户实体行为分析中分组异常检测方法及装置、终端,通过改进的Jaccard算法对IP地址形成的数据向量进行相似性处理,可以提高分析的速率,避免因环境数据量较大影响用户实体行为分析中分组异常检测的性能。
本发明实施例第一方面提供了一种用户实体行为分析中分组异常检测方法,可包括:
采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。
进一步的,采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度,包括:
根据用户访问不同网段的历史数据形成网段访问关系矩阵A,其中, A=[a1,a2,…,an]T,ai∈{0,1}m,n为用户的个数,m为网段内的子网数,向量 {0,1}m表示用户对网段内子网的访问情况,访问过该子网标志值为1,否则为0;
基于任两个用户访问同一网段的交集和所有用户访问总体网段的并集,计算两个用户对于同一网段访问的相似度,其中,
Figure BDA0002429392440000021
S(ui,uj)代表两用户网段访问的相似度。
进一步的,根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合,包括:
根据用户对网段访问的相似度生成网段访问相似度矩阵,该矩阵为一个实对称矩阵,矩阵中的元素代表对用户的划分;
初始化用户分组集合G0
根据预设相似度阈值确定待分组用户向量所属的同组用户向量,并将待分组用户向量加入分组集合中同组用户向量对应的元素;
进一步的,方法还包括:
若未检测到待分组用户向量所属的同组用户向量,将待分组用户向量直接加入用户分组集合中的元素。
进一步的,最终形成的用户分组集合G0表示为:
{{u1,u2},{u1,u2,u3},…},
所有用户组成的全集U表示为:
Figure BDA0002429392440000031
且Ui,Uj∈G0
其中,Ui表示一个用户分组集合,即G0中划分的一个元素。
进一步的,方法还包括:
计算每个网段内m个子网的n个用户分组集类{Gi},i∈[1,m]。
进一步的,方法还包括:
Figure BDA0002429392440000034
Figure BDA0002429392440000033
时,确定待检测分组与用户分组集合存在不同元素,其中G’0为待检测数据的分组集合即待检测分组。
进一步的,方法还包括:
当待检测分组为异常分组时,计算任一用户在异常分组中的异常分组比例,计算公式为:
Figure BDA0002429392440000032
上式中,分子为一个指标函数的求和,求和内容为当前用户ui出现在分组异常的子网数量,分母表示历史分组集合和当前分组集合中规模较大的一方。
本发明实施例第二方面提供了一种用户实体行为分析中分组异常检测装置,可包括:
相似度学习模块,用于采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
分组聚类模块,用于根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
异常分组检测模块,用于当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。
进一步的,相似度学习模块包括:
历史数据学习单元,用于根据用户访问不同网段的历史数据形成网段访问关系矩阵A,其中,A=[a1,a2,…,an]T,ai∈{0,1}m,n为用户的个数,m为网段内的子网数,向量{0,1}m表示用户对网段内子网的访问情况,访问过该子网标志值为1,否则为0;
相似度计算单元,用于基于任两个用户访问同一网段的交集和所有用户访问总体网段的并集,计算两个用户对于同一网段访问的相似度,其中,
Figure BDA0002429392440000041
S(ui,uj)代表两用户网段访问的相似度。
进一步的,分组聚类模块包括:
相似度矩阵生成单元,用于根据用户对网段访问的相似度生成网段访问相似度矩阵,该矩阵为一个实对称矩阵,矩阵中的元素代表对用户的划分;
集合初始化单元,用于初始化用户分组集合G0
分组聚类单元,用于根据预设相似度阈值确定待分组用户向量所属的同组用户向量,并将待分组用户向量加入分组集合中同组用户向量对应的元素;
进一步的,分组聚类单元还用于若未检测到待分组用户向量所属的同组用户向量,将待分组用户向量直接加入用户分组集合中的元素。
进一步的,最终形成的用户分组集合G0表示为:
{{u1,u2},{u1,u2,u3},…},
所有用户组成的全集U表示为:
Figure BDA0002429392440000042
且Ui,Uj∈G0
其中,Ui表示一个用户分组集合,即G0中划分的一个元素。
进一步的,装置还包括:
分组集类计算模块,用于计算每个网段内m个子网的n个用户分组集类{Gi}, i∈[1,m]。
进一步的,异常分组检测模块,具体用于当
Figure BDA0002429392440000044
Figure BDA0002429392440000043
时,确定待检测分组与用户分组集合存在不同元素,其中G’0为待检测数据的分组集合即待检测分组。
进一步的,装置还包括:
异常比例计算模块,用于当待检测分组为异常分组时,计算任一用户在异常分组中的异常分组比例,计算公式为:
Figure BDA0002429392440000051
上式中,分子为一个指标函数的求和,求和内容为当前用户ui出现在分组异常的子网数量,分母表示历史分组集合和当前分组集合中规模较大的一方。
本发明实施例第三方面提供了一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行以下步骤:
采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。
本发明实施例第四方面提供了一种终端,可包括:处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行以下步骤:
采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。
本发明的有益效果:通过采用Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度,进而通过网段访问相似度矩阵聚类得到用户分组集合,再综合对比待检测的分组与聚类得到的用户分组集合中是否存在不同元素的基础上,确定异常分组。通过利用网段划分将用户访问记录进行分层处理,再利用Jaccard算法对相似性进行计算,在网段部分直接对验证数据进行筛选,极大地减少了CPU计算量,提高了相似性分析的速率,避免了因环境数据量较大影响用户实体行为分析中分组异常检测的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种用户实体行为分析中分组异常检测方法的流程示意图;
图2是本发明实施例提供的一种用户实体行为分析中分组异常检测装置的结构示意图;
图3是本发明实施例提供的相似度学习模块的结构示意图;
图4是本发明实施例提供的分组聚类模块的结构示意图;
图5是本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
此外,术语“安装”、“设置”、“设有”、“连接”、“相连”、“套接”应做广义理解。例如,可以是固定连接,可拆卸连接,或整体式构造;可以是机械连接,或电连接;可以是直接相连,或者是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
本发明实施例涉及的终端可以是大型计算机、PC机、平板电脑、掌上电脑以及移动互联网设备(MID)等其他具备数据处理能力的终端设备。
如图1所示,在本申请的第一个实施例中,用户实体行为分析中分组异常检测方法至少包括以下步骤:
S101,采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度。
需要说明的是,在对IP主机的访问关系进行分析前,可以对数据进行一些分层处理,并对分层的数据进行预处理。优选的,可以根据各主机访问目标机器的网段情况,使用{0,1}m向量来表示其访问的目标网段内子网的访问情况,其中,m为网段内的子网数,访问过该子网标志值为1,否则为0。例如,对于一个192.168子网网段,其包含了256子网,在实际实现时,使用32个字节的数组以表示,故可以覆盖这256个子网,如某用户(实际上是主机)对某个子网的数据进行访问则将其标志值1,否则为0,对于存在n个用户的系统而言,可以形式化地表示为如下方式:A=[a1,a2,…,an]T,ai∈{0,1}256。其中,矩阵A表示不同用户的网段访问关系矩阵,其中每个向量的维度均为256(即可以认为是32个字节)。
进一步的,可以基于任两个用户访问同一网段的交集和所有用户访问总体网段的并集,计算两个用户对于同一网段访问的相似度,其中,
Figure BDA0002429392440000071
S(ui,uj)代表两用户网段访问的相似度。需要说明的是,为了更加快速的进行计算,上式中的分母可以直接修改为网段内的子网数即256,从而加速整体计算,分子的交集计算部分可以采用二进制位与方式,做到最大程度优化。
另外,为了充分发挥CPU指令集的并发能力,可以采用x86平台的 AVX2/AVX512向量指令集并发地进行位与运算,如_mm256_and_pd或 _mm512_and_pd等,位与运算的结果中包含有多少个1即说明两个用户都访问的网段有多少个;为获取某个变量包含1的数量,可以采用查表法。
S102,根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合。
具体实现中,设备可以根据不同用户对网段访问的相似度计算形成网段访问相似度矩阵,该矩阵是一个实对称矩阵,矩阵中的元素代表对用户的划分,例如,u1~un,中的ui就代表一个用户,其行、列均为用户数量,其对角线均为 1,矩阵的值是介于0和1之间的浮点数。
进一步的,可以基于上述矩阵进行网段访问聚类得到用户分组集合,通过预先设定一个用户间的相似度阈值tu,判断上述矩阵的值与该阈值的大小,超过 tu则认为是同组用户,否则不是同组用户,因此最终的分组数量不定。
在一种具体的实现方式中,可以先初始化用户分组集合,该集合中的元素是对用户的划分,一个元素也是一个小的集合是划分为同一组的多个用户的集合。进一步的,可以将网段访问相似度矩阵中待分组的用户向量与相似度阈值进行比较,将大于等于相似度阈值的用户向量确定为同一组,并将上述待分组的向量加入用户分组集合中与之同组的元素中。可以理解的是,如果集合为空,即未检测到待分组用户向量所属的同组用户向量,则可以将该用户向量直接加入用户分组集合中的元素。每次分组后,可以检测是否还存在未分组的用户向量,如存在则按照上述聚类方法继续分类直至不存在未分组的用户向量。
进一步的,通过上述聚类分组方式,最终形成的用户分组集合G0可以表示为:
{{u1,u2},{u1,u2,u3},…}
所有用户或者源主机组成的全集U表示为:
Figure BDA0002429392440000081
且Ui,Uj∈G0
S103,当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。
具体实现中,与上述网段访问分析类似,具体到某个C类网段而言(如是 A类或者B类网段也可以最终分解到C类网段),需要计算的最多只是254个主机地址(去除子网地址和广播地址),可以采用改进的Jaccard相似性算法进行与上述计算方法一致的计算,但此时主要是针对不同的主机,即其向量中的每一维都是是否访问了某台主机,如访问则为1,否则为0。通过对于各个C类子网的访问记录计算,可以得到256个用户分组集类{Gi}(下标i的取值范围在1 到256之间),每个Gi都是在不同子网下对于同一个用户集合的划分,对于用户分组异常的判断也基于这个集类以及对于网段访问分组情况:
在综合判断用户是否存在分组异常时,遵循如下判断方式,如存在:
Figure BDA0002429392440000082
Figure BDA0002429392440000083
时,则认为有分组异常访问行为,上述公式的涵义为用户通过历史数据学习后,其网段用户分组集合为G0,对于需要检测的数据而言,其分组集合为G’0,只要其中存在分组不同的,即可认为存在分组异常,则算法可以停止,否则继续对各个网段的主机访问分组情况进行计算。
在一种优选的实现方式中,在确定网段主机访问分组异常的情况下,对于某个具体的用户而言,可以采用异常分组比例来判断:
Figure BDA0002429392440000091
上述中,对于某一网段而言,其分子部分是对一个指示函数的求和,其求和内容主要为当前用户ui出现在分组异常的子网数量,而分母部分的含义则表示取历史分组集合规模和当前分组集合规模的大者,可选的,分母也可以取别的形式,如仅历史分组或当前分组数量等。可以理解的是的,分组异常是一个介于0和1 之间的浮点数,在实际应用时,可以设定阈值ta来评判异常分组的程度,一般可以设置为0.5。
在本发明实施例中,通过采用Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度,进而通过网段访问相似度矩阵聚类得到用户分组集合,再综合对比待检测的分组与聚类得到的用户分组集合中是否存在不同元素的基础上,确定异常分组。通过利用网段划分将用户访问记录进行分层处理,再利用Jaccard算法对相似性进行计算,在网段部分直接对验证数据进行筛选,极大地减少了CPU计算量,提高了相似性分析的速率,避免了因环境数据量较大影响用户实体行为分析中分组异常检测的性能;通过使用基于二进制位与操作的并行处理方法和用固定数值替代集合并集运算,也在很大程度上对整体算法进行了加速,从而做到了对超大规模的数据处理;通过采用二进制位方法表示访问情况集合,在相关数据的存储上为节省了空间,在对威胁进行回溯时,方便了对获取的相关异常源的展示。
下面将结合附图2-附图4,对本发明实施例提供的用户实体行为分析中分组异常检测装置进行详细介绍。需要说明的是,附图2-附图4所示的分组异常检测装置,用于执行本发明图1所示实施例的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明图1所示的实施例。
请参见图2,为本发明实施例提供了一种用户实体行为分析中分组异常检测装置的结构示意图。如图2所示,本发明实施例的所述分组异常检测装置10可以包括:相似度学习模块101、分组聚类模块102、异常分组检测模块103、分组集类计算模块104和异常比例计算模块105。其中,相似度学习模块101如图 3所示,包括历史数据学习单元1011和相似度计算单元1012;分组聚类模块102 如图4所示,包括相似度矩阵生成单元1021、集合初始化单元1022和分组聚类单元1023。
相似度学习模块101,用于采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度。
在可选实施例中,相似度学习模块101可以包括以下单元:
历史数据学习单元1011,用于根据用户访问不同网段的历史数据形成网段访问关系矩阵A,其中,A=[a1,a2,…,an]T,ai∈{0,1}m,n为用户的个数,m为网段内的子网数,向量{0,1}m表示用户对网段内子网的访问情况,访问过该子网标志值为1,否则为0。
相似度计算单元1012,用于基于任两个用户访问同一网段的交集和所有用户访问总体网段的并集,计算两个用户对于同一网段访问的相似度,其中,
Figure BDA0002429392440000101
S(ui,uj)代表两用户网段访问的相似度。
分组聚类模块102,用于根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合。
在可选实施例中,分组聚类模块102可以包括以下单元:
相似度矩阵生成单元1021,用于根据用户对网段访问的相似度生成网段访问相似度矩阵,该矩阵为一个实对称矩阵,矩阵中的元素代表对用户的划分。
集合初始化单元1022,用于初始化用户分组集合G0
分组聚类单元1023,用于根据预设相似度阈值确定待分组用户向量所属的同组用户向量,并将待分组用户向量加入分组集合中同组用户向量对应的元素。
进一步的,分组聚类单元1023还用于若未检测到待分组用户向量所属的同组用户向量,将待分组用户向量直接加入用户分组集合中的元素。
需要说明的是,最终形成的用户分组集合G0表示为:
{{u1,u2},{u1,u2,u3},…},
所有用户组成的全集U表示为:
Figure BDA0002429392440000111
且Ui,Uj∈G0
其中,Ui表示一个用户分组集合,即G0中划分的一个元素。
异常分组检测模块103,用于当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。
在一种具体的实现方式中,异常分组检测模块103,具体用于当
Figure BDA0002429392440000115
Figure BDA0002429392440000114
Figure BDA0002429392440000113
时,确定待检测分组与用户分组集合存在不同元素,其中G’0为待检测数据的分组集合即待检测分组。
分组集类计算模块104,用于计算每个网段内m个子网的n个用户分组集类 {Gi},i∈[1,m]。
异常比例计算模块105,用于当待检测分组为异常分组时,计算任一用户在异常分组中的异常分组比例,计算公式为:
Figure BDA0002429392440000112
上式中,分子为一个指标函数的求和,求和内容为当前用户ui出现在分组异常的子网数量,分母表示历史分组集合和当前分组集合中规模较大的一方。
需要说明的是,上述系统中各模块、单元的详细执行过程可以参见上述方法实施例中的描述,处不再赘述。
在本发明实施例中,通过采用Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度,进而通过网段访问相似度矩阵聚类得到用户分组集合,再综合对比待检测的分组与聚类得到的用户分组集合中是否存在不同元素的基础上,确定异常分组。通过利用网段划分将用户访问记录进行分层处理,再利用Jaccard算法对相似性进行计算,在网段部分直接对验证数据进行筛选,极大地减少了CPU计算量,提高了相似性分析的速率,避免了因环境数据量较大影响用户实体行为分析中分组异常检测的性能。
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图1所示实施例的方法步骤,具体执行过程可以参见图1所示实施例的具体说明,在此不进行赘述。
请参见图5,为本发明实施例提供了一种终端的结构示意图。如图5所示,所述终端1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口 (如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图5所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及分组异常检测应用程序。
在图5所示的终端1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;网络接口1004用于与用户终端进行数据通信;而处理器1001可以用于调用存储器1005中存储的分组异常检测应用程序,并具体执行以下操作:
采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
当任一网段的待检测分组与用户分组集合存在不同元素时,确定待检测分组为异常分组。
在一些实施例中,处理器1001在执行采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度时,具体执行以下操作:
根据用户访问不同网段的历史数据形成网段访问关系矩阵A,其中, A=[a1,a2,…,an]T,ai∈{0,1}m,n为用户的个数,m为网段内的子网数,向量 {0,1}m表示用户对网段内子网的访问情况,访问过该子网标志值为1,否则为0;
基于任两个用户访问同一网段的交集和所有用户访问总体网段的并集,计算两个用户对于同一网段访问的相似度,其中,
Figure BDA0002429392440000121
S(ui,uj)代表两用户网段访问的相似度。
在一些实施例中,处理器1001在执行根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合时,具体执行以下操作:
根据用户对网段访问的相似度生成网段访问相似度矩阵,该矩阵为一个实对称矩阵,矩阵中的元素代表对用户的划分;
初始化用户分组集合G0
根据预设相似度阈值确定待分组用户向量所属的同组用户向量,并将待分组用户向量加入分组集合中同组用户向量对应的元素;
在一些实施例中,处理器1001还用于执行以下操作:
若未检测到待分组用户向量所属的同组用户向量,将待分组用户向量直接加入用户分组集合中的元素。
在一些实施例中,最终形成的用户分组集合G0表示为:
{{u1,u2},{u1,u2,u3},…},
所有用户组成的全集U表示为:
Figure BDA0002429392440000131
且Ui,Uj∈G0
其中,Ui表示一个用户分组集合,即G0中划分的一个元素。
在一些实施例中,处理器1001还用于执行以下操作:
计算每个网段内m个子网的n个用户分组集类{Gi},i∈[1,m]。
在一些实施例中,处理器1001还用于执行以下操作:
Figure BDA0002429392440000133
Figure BDA0002429392440000134
时,确定待检测分组与用户分组集合存在不同元素,其中G’0为待检测数据的分组集合即待检测分组。
在一些实施例中,处理器1001还用于执行以下操作:
当待检测分组为异常分组时,计算任一用户在异常分组中的异常分组比例,计算公式为:
Figure BDA0002429392440000132
上式中,分子为一个指标函数的求和,求和内容为当前用户ui出现在分组异常的子网数量,分母表示历史分组集合和当前分组集合中规模较大的一方。
在本发明实施例中,通过采用Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度,进而通过网段访问相似度矩阵聚类得到用户分组集合,再综合对比待检测的分组与聚类得到的用户分组集合中是否存在不同元素的基础上,确定异常分组。通过利用网段划分将用户访问记录进行分层处理,再利用Jaccard算法对相似性进行计算,在网段部分直接对验证数据进行筛选,极大地减少了CPU计算量,提高了相似性分析的速率,避免了因环境数据量较大影响用户实体行为分析中分组异常检测的性能。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种用户实体行为分析中分组异常检测方法,其特征在于,包括:
采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
当任一网段的待检测分组与所述用户分组集合存在不同元素时,确定所述待检测分组为异常分组;
所述采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度包括:对主机的访问关系进行分析前,需要根据主机访问目标机器的网段情况对数据进行分层处理;
所述根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合包括:预先设定一个用户间的相似度阈值tu,判断所述矩阵的值与所述相似度阈值tu的大小,超过tu则认为是同组用户,否则不是同组用户。
2.根据权利要求1所述的检测方法,其特征在于,所述采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度,包括:
根据用户访问不同网段的历史数据形成网段访问关系矩阵A,其中,A=[a1,a2,...,an]T,ai∈{0,1}m,n为用户的个数,m为网段内的子网数,向量{0,1}m表示用户对网段内子网的访问情况,访问过该子网标志值为1,否则为0;
基于任两个用户访问同一网段的交集和所有用户访问总体网段的并集,计算两个用户对于同一网段访问的相似度,其中,
Figure FDA0002876036830000011
S(ui,uj)代表两用户网段访问的相似度。
3.根据权利要求2所述的检测方法,其特征在于,所述根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合,包括:
根据用户对网段访问的相似度生成网段访问相似度矩阵,该矩阵为一个实对称矩阵,矩阵中的元素代表对用户的划分;
初始化用户分组集合G0
根据预设相似度阈值确定待分组用户向量所属的同组用户向量,并将所述待分组用户向量加入分组集合中所述同组用户向量对应的元素。
4.根据权利要求3所述的检测方法,其特征在于,所述方法还包括:
若未检测到所述待分组用户向量所属的同组用户向量,将所述待分组用户向量直接加入所述用户分组集合中的元素。
5.根据权利要求4所述的检测方法,其特征在于,
最终形成的用户分组集合G0表示为:
{(u1,u2},{u1,u2,u3},...},
所有用户组成的全集U表示为:
Figure FDA0002876036830000021
且Ui,Uj∈G0
其中,Ui表示一个用户分组集合,即G0中划分的一个元素。
6.根据权利要求5所述的检测方法,其特征在于,所述方法还包括:
计算每个网段内m个子网的n个用户分组集类{Gi},i∈[1,m]。
7.根据权利要求6所述的检测方法,其特征在于,所述方法还包括:
Figure FDA0002876036830000022
Figure FDA0002876036830000023
时,确定待检测分组与所述用户分组集合存在不同元素,其中G’0为待检测数据的分组集合即待检测分组。
8.根据权利要求7所述的检测方法,其特征在于,所述方法还包括:
当所述待检测分组为异常分组时,计算任一用户在所述异常分组中的异常分组比例,计算公式为:
Figure FDA0002876036830000024
上式中,分子为一个指标函数的求和,求和内容为当前用户ui出现在分组异常的子网数量,分母表示历史分组集合和当前分组集合中规模较大的一方。
9.一种用户实体行为分析中分组异常检测装置,其特征在于,包括:
相似度学习模块,用于采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
分组聚类模块,用于根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
异常分组检测模块,用于当任一网段的待检测分组与所述用户分组集合存在不同元素时,确定所述待检测分组为异常分组;
所述采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度包括:对主机的访问关系进行分析前,需要根据主机访问目标机器的网段情况对数据进行分层处理。
所述根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合包括:预先设定一个用户间的相似度阈值tu,判断所述矩阵的值与所述相似度阈值tu的大小,超过tu则认为是同组用户,否则不是同组用户。
10.一种终端,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行以下步骤:
采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度;
根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合;
当任一网段的待检测分组与所述用户分组集合存在不同元素时,确定所述待检测分组为异常分组;
所述采用改进的Jaccard算法学习用户访问不同网段的历史数据,确定不同用户对于网段访问的相似度包括:对主机的访问关系进行分析前,需要根据主机访问目标机器的网段情况对数据进行分层处理。
所述根据用户对网段访问的相似度形成的网段访问相似度矩阵聚类得到用户分组集合包括:预先设定一个用户间的相似度阈值tu,判断所述矩阵的值与所述相似度阈值tu的大小,超过tu则认为是同组用户,否则不是同组用户。
CN202010231369.9A 2020-03-27 2020-03-27 用户实体行为分析中分组异常检测方法及装置、终端 Active CN111431909B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010231369.9A CN111431909B (zh) 2020-03-27 2020-03-27 用户实体行为分析中分组异常检测方法及装置、终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010231369.9A CN111431909B (zh) 2020-03-27 2020-03-27 用户实体行为分析中分组异常检测方法及装置、终端

Publications (2)

Publication Number Publication Date
CN111431909A CN111431909A (zh) 2020-07-17
CN111431909B true CN111431909B (zh) 2021-03-02

Family

ID=71555491

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010231369.9A Active CN111431909B (zh) 2020-03-27 2020-03-27 用户实体行为分析中分组异常检测方法及装置、终端

Country Status (1)

Country Link
CN (1) CN111431909B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112488175B (zh) * 2020-11-26 2023-06-23 中孚安全技术有限公司 一种基于行为聚合特征的异常用户检测方法、终端及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103838803A (zh) * 2013-04-28 2014-06-04 电子科技大学 一种基于节点Jaccard相似度的社交网络社团发现方法
WO2016156115A1 (en) * 2015-03-27 2016-10-06 British Telecommunications Public Limited Company Anomaly detection by multi-level tolerance relations
CN108596738A (zh) * 2018-05-08 2018-09-28 新华三信息安全技术有限公司 一种用户行为检测方法及装置
CN108924100A (zh) * 2018-06-20 2018-11-30 广东电网有限责任公司 一种异常用户识别方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103838803A (zh) * 2013-04-28 2014-06-04 电子科技大学 一种基于节点Jaccard相似度的社交网络社团发现方法
WO2016156115A1 (en) * 2015-03-27 2016-10-06 British Telecommunications Public Limited Company Anomaly detection by multi-level tolerance relations
CN108596738A (zh) * 2018-05-08 2018-09-28 新华三信息安全技术有限公司 一种用户行为检测方法及装置
CN108924100A (zh) * 2018-06-20 2018-11-30 广东电网有限责任公司 一种异常用户识别方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种基于改进相似度计算的文本聚类方法;李征等;《河南大学学报(自然科学版)》;20180716;第48卷(第04期);全文 *
基于大数据和人工智能的企业内网安全检测方法分析;王月领;《信息技术与信息化》;20180825(第08期);全文 *

Also Published As

Publication number Publication date
CN111431909A (zh) 2020-07-17

Similar Documents

Publication Publication Date Title
CN111614690B (zh) 一种异常行为检测方法及装置
CN107169768B (zh) 异常交易数据的获取方法和装置
CN111355697B (zh) 僵尸网络域名家族的检测方法、装置、设备及存储介质
US11244043B2 (en) Aggregating anomaly scores from anomaly detectors
KR102120214B1 (ko) 앙상블 기계학습 기법을 이용한 사이버 표적공격 탐지 시스템 및 그 탐지 방법
CN113328985B (zh) 一种被动物联网设备识别方法、系统、介质及设备
US11997122B2 (en) Systems and methods for analyzing cybersecurity events
US20130326056A1 (en) Network flow abnormality detection system and a method of the same
CN113378899A (zh) 非正常账号识别方法、装置、设备和存储介质
CN111431909B (zh) 用户实体行为分析中分组异常检测方法及装置、终端
CN117061254B (zh) 异常流量检测方法、装置和计算机设备
CN114584377A (zh) 流量异常检测方法、模型的训练方法、装置、设备及介质
Mughaid et al. Utilizing machine learning algorithms for effectively detection iot ddos attacks
CN111431884B (zh) 一种基于dns分析的主机失陷检测方法及装置
CN116707859A (zh) 特征规则提取方法和装置、网络入侵检测方法和装置
CN112491820B (zh) 异常检测方法、装置及设备
CN112333155B (zh) 一种异常流量的检测方法、系统、电子设备及存储介质
Leevy et al. Feature evaluation for IoT botnet traffic classification
CN114172707A (zh) Fast-Flux僵尸网络检测方法、装置、设备及存储介质
CN110689074A (zh) 一种基于模糊集特征熵值计算的特征选择方法
CN116886448B (zh) 一种基于半监督学习的DDoS攻击告警研判方法以及装置
CN117675387B (zh) 基于用户行为分析的网络安全风险预测方法及系统
CN115098602B (zh) 基于大数据平台的数据处理方法、装置、设备及存储介质
CN117574135B (zh) 一种电网攻击事件检测方法、装置、设备及存储介质
CN114679327B (zh) 网络攻击等级确定方法、装置、计算机设备和存储介质

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