CN113051552A - 一种异常行为检测方法和装置 - Google Patents
一种异常行为检测方法和装置 Download PDFInfo
- Publication number
- CN113051552A CN113051552A CN201911373150.6A CN201911373150A CN113051552A CN 113051552 A CN113051552 A CN 113051552A CN 201911373150 A CN201911373150 A CN 201911373150A CN 113051552 A CN113051552 A CN 113051552A
- Authority
- CN
- China
- Prior art keywords
- data
- model
- abnormal
- abnormal behavior
- detection
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 137
- 206010000117 Abnormal behaviour Diseases 0.000 title claims abstract description 110
- 238000000034 method Methods 0.000 claims abstract description 45
- 230000002159 abnormal effect Effects 0.000 claims abstract description 24
- 238000010801 machine learning Methods 0.000 claims abstract description 9
- 238000012360 testing method Methods 0.000 claims description 37
- 238000012549 training Methods 0.000 claims description 34
- 230000002776 aggregation Effects 0.000 claims description 24
- 238000004220 aggregation Methods 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 13
- 238000002790 cross-validation Methods 0.000 claims description 12
- 238000011156 evaluation Methods 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 5
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 238000007405 data analysis Methods 0.000 abstract description 8
- 230000006399 behavior Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000011217 control strategy Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例提供了一种异常行为检测方法和装置,涉及网络安全技术领域,用于解决现有技术中数据分析的效率较低,无法从海量数据中分析出异常行为的问题。该方法包括:获取待检测数据;通过数据检测模型对所述待检测数据进行检测确定异常行为,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型历史数据包括所述异常行为对应的异常数据;对所述异常行为进行事件上报。本发明实施例用于异常行为检测。
Description
技术领域
本发明涉及网络安全技术领域,尤其涉及一种异常行为检测方法和装置。
背景技术
随着网路技术的飞速发展,敏感信息和个人隐私信息无处不在,而保障敏感信息和个人隐私信息的安全是网络安全的重要任务之一。
传统网络安全技术中普遍通过制定针对性的访问控制策略来保障敏感信息和个人隐私信息的安全,然而快速增长的海量数据使得大数据平台中的敏感信息和个人隐私信息无处不在,准确发现和定位敏感信息并制定针对性的访问控制策略变得越来越困难,因此仅仅依靠访问控制策略已无法完全避免敏感信息和个人隐私信息被违规使用。为了能够发现敏感信息和个人隐私信息被违规使用,现有技术中进一步提出基于用户数据对大数据平台的每一个用户的行为进行分析,进而发现用户的异常行为,并警告恶意事件。然而,随着Hadoop、Hive、Spark等技术的发展,用户的数据量呈指数级增长,而现有技术中普遍基于人工进行数据分析的,数据分析的效率较低,因此了解每个用户的数据活动变得非常困难,更不用说在每天千万亿字节(Petabyte,PB)级的数据流中分析并警告异单个恶意事件。因此如何分析大数据平台每个用户的数据,发现并警告敏感数据违规被使用行为,降低数据泄露风险,进而保护大数据平台的数据安全是一个亟待解决的问题。
发明内容
有鉴于此,本发明实施例提供了一种异常行为检测方法和装置,用于解决现有技术中数据分析的效率较低,无法从海量数据中分析出异常行为的问题。
为了实现上述目的,本发明实施例提供技术方案如下:
第一方面,本发明的实施例提供一种异常行为检测方法,包括:
获取待检测数据;
通过数据检测模型对所述待检测数据进行检测确定异常行为,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据;
对所述异常行为进行事件上报。
作为本发明实施例一种可选的实施方式,在通过数据检测模型对所述待检测数据进行检测确定异常行为之前,所述方法还包括:
述待检测数据进行检测确定异常行为之前,所述方法还包括:
获取所述历史数据;
根据算法模型和/或检测目标标签选取数据特征,所述检测目标标签为用于进行异常行为检测的数据特征的标签;
将所述历史数据分为训练数据集和测试数据集;
利用所述训练数据集、所述数据特征以及孤立森林算法构建所述数据检测模型;
通过所述数据检测模型对所述测试数据集进行检测,获取所述数据检测模型的性能的评估结果;
根据所述评估结果和所述测试数据集中的真实异常数据的情况,调整所述数据检测模型的模型参数,以对所述数据检测模型进行修正。
作为本发明实施例一种可选的实施方式,在将所述历史数据分为训练数据集和测试数据集之前,所述方法还包括:
根据聚合规则对所述历史数据进行聚合处理,以将一次用户操作产生的数据聚合为一条操作事件对应的数据;
其中,所述聚合规则由检测大数据平台各类组件的操作特征确定。
作为本发明实施例一种可选的实施方式,在对所述历史数据进行聚合处理之前,所述方法还包括:
从日志数据中提取目标属性与所述目标属性的值作为所述历史数据;
过滤所述历史数据中的重复数据、错误数据以及不完整数据。
作为本发明实施例一种可选的实施方式,所述将所述历史数据分为训练数据集和测试数据集,包括:
基于K交叉验证法把所述历史数据为训练数据集和测试数据集。
作为本发明实施例一种可选的实施方式,在根据算法模型和/或检测目标标签选取数据特征之前,所述方法还包括:
对所述历史数据进行缺失值处理和/或归一化处理。
作为本发明实施例一种可选的实施方式,所述数据特征包括以下维度中的至少一种:
数据目录、访问网络协议地址IP以及访问频次。
作为本发明实施例一种可选的实施方式,所述数据检测模型的模型参数包括以下参数中的至少一项:
采样大小、孤立树的数量、孤立树高度。
第二方面,本发明实施例提供一种异常行为检测装置,包括:
获取单元,用于获取待检测数据;
检测单元,用于通过数据检测模型对所述待检测数据进行检测确定异常行为,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据;
输出单元,用于对所述异常行为进行事件上报。
作为本发明实施例一种可选的实施方式,所述异常行为检测装置还包括:
模型构建单元,用于获取用户的历史数据,根据算法模型和/或检测目标标签选取数据特征,将所述历史数据分为训练数据集和测试数据集,利用所述训练数据集、所述数据特征以及孤立森林算法构建所述数据检测模型,通过所述数据检测模型对所述测试数据集进行检测,获取所述数据检测模型的性能的评估结果,根据所述评估结果和所述测试数据集中的真实异常数据的情况,调整所述数据检测模型的模型参数,以对所述数据检测模型进行修正,
所述检测目标标签为用于进行异常行为检测的数据特征的标签。
作为本发明实施例一种可选的实施方式,所述模型构建单元,还用于在将所述历史数据分为训练数据集和测试数据集之前,根据聚合规则对所述历史数据进行聚合处理,以将一次用户操作产生的数据聚合为一条操作事件对应的数据;
其中,所述聚合规则由检测大数据平台各类组件的操作特征确定。
作为本发明实施例一种可选的实施方式,所述模型构建单元,还用于在对所述历史数据进行聚合处理之前,从日志数据中提取目标属性与所述目标属性的值作为所述历史数据,以及过滤所述历史数据中的重复数据、错误数据以及不完整数据。
作为本发明实施例一种可选的实施方式,所述模型构建单元,具体用于基于K交叉验证法把所述历史数据为训练数据集和测试数据集。
作为本发明实施例一种可选的实施方式,所述模型构建单元,还用于在根据算法模型和/或检测目标标签选取数据特征之前,对所述历史数据进行缺失值处理和/或归一化处理。
作为本发明实施例一种可选的实施方式,所述数据特征包括以下维度中的至少一种:
数据目录、访问网络协议地址IP以及访问频次。
作为本发明实施例一种可选的实施方式,所述数据检测模型的模型参数包括以下参数中的至少一项:
采样大小、孤立树的数量、孤立树高度。
第三方面,本发明实施例提供一种异常行为检测装置,包括:存储器和处理器,存储器用于存储计算机程序;处理器用于在调用计算机程序时执行上述第一方面或第一方面的任一实施方式所述的异常行为检测方法。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面或第一方面的任一实施方式所述的异常行为检测方法。
本发明实施例提供的异常行为检测方法在获取待检测数据后,通过数据检测模型对所述待检测数据进行检测确定异常行为,并检测出的对所述异常行为进行事件上报;其中,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据;由于本发明实施例提供的异常行为检测方法可以通过数据检测模型对待检测数据进行检测确定异常行为,相比于现有技术中基于人工进行数据分析,本发明实施例可以提高数据分析的效率,因此本发明实施例可以分析大数据平台每个用户的数据,发现并警告敏感数据违规被使用行为,降低数据泄露风险,进而保护大数据平台的数据安全。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。
图1为本发明实施例提供的异常行为检测方法的步骤流程图之一;
图2为本发明实施例提供的异常行为检测方法的步骤流程图之二;
图3为本发明实施例提供的异常行为检测装置的示意性结构图之一;
图4为本发明实施例提供的异常行为检测装置的示意性结构图之二;
图5为本发明实施例提供的异常行为检测装置的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本发明的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一设备和第二设备等是用于区别不同的设备,而不是用于描述设备的特定顺序。
在本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。此外,在本发明实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
本发明实施例提供的异常行为检测方法的执行主体可以为异常行为检测装置,该异常行为检测装置可以为移动终端,也可以为非移动终端。移动终端可以为手机、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、电子相框、个人数字助理(personal digital assistant,PDA)、智能手表、智能手环等,非移动终端可以为电视机、个人计算机(personal computer,PC)智能音箱、智能电视机等,或者该异常行为检测装置还可以为其他类型的终端设备,本发明实施例不作限定。
本发明实施例提供了一种异常行为检测方法,具体的,参照图1所示,本发明实施例提供的异常行为检测方法包括如下步骤S11-S13:
S11、获取待检测数据。
具体的,本发明实施例中的待检测数据可以为大数据平台上用户实时产生的数据,也可以为大数据平台上用户在某一时间段内产生的历史数据。待检测数据可以包括:用户的访问记录、用户在大数据平台的日志记录、用户在大数据平台的组件日志、用户的应用日志等,本发明实施例中对待检测数据的类型不做限定。
S12、通过数据检测模型对所述待检测数据进行检测确定异常行为。
其中,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法(Isolation Forest,i Forest)为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据。
本发明实施例中的用户的历史数据可以包括用户的访问记录、用户在大数据平台的日志记录、用户在大数据平台的组件日志、用户的应用日志中的一种或多种。示例性的,可以通过filebeats进行数据采集,从而获取用户的历史数据。
具体的,孤立森林算法是一种适用于连续数据的无监督异常检测算法,利用数据检测模型对待检测数据进行检测的过程包括:将每个样本点带入数据检测模型中的每棵孤立树计算平均高度,再根据平均高度计算每个样本点的异常值分数,最后根据样本点的异常值分数确定样本数据是否异常。即,对于待检测数据中的每一个数据点,令其遍历数据检测模型中的每一颗孤立树,计算数据点数据检测模型中的孤立树中的平均高度。
在本发明实施例中,若确定某一行为是异常行为,则确定该异常行为所依据的历史数据即为该异常行为对应的异常数据。例如:由历史数据中的A、B、C确定了行为D是异常行为,则异常行为D对应的异常数据为A、B、C。所述历史数据中的异常行为以及异常行为对应的异常数据可以由人工标注。
S13、对所述异常行为进行事件上报。
对所述异常行为进行事件上报具体可以为,通过显示屏显示所述异常行为、将所述异常行为发送至指定邮箱、语音播报所述异常行为等中的至少一种。
作为本发明实施例一种可选的实施例方式,本发明实施提供的异常行为检测方法还包括:
对异常行为进行存储。
作为本发明实施例一种可选的实施例方式,本发明实施提供的异常行为检测方法,还包括:
接收用户对上报事件的标注。
即,用户对上报事件进行人工审核后输入的标注信息。
本发明实施例提供的异常行为检测方法在获取待检测数据后,通过数据检测模型对所述待检测数据进行检测确定异常行为,并检测出的对所述异常行为进行事件上报;其中,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据;由于本发明实施例提供的异常行为检测方法可以通过数据检测模型对待检测数据进行检测确定异常行为,相比于现有技术中基于人工进行数据分析,本发明实施例可以提高数据分析的效率,因此本发明实施例可以分析大数据平台每个用户的数据,发现并警告敏感数据违规被使用行为,降低数据泄露风险,进而保护大数据平台的数据安全。
由于在本发明实施例提供的异常行为检测方法中需使用到数据检测模型(S12、通过数据检测模型对所述待检测数据进行检测确定异常行为),因此在用数据检测模型对所述待检测数据进行检测之前,需要先构建数据检测模型。参照图2所示,作为本发明实施例一种可选的实施方式,构建数据检测模型的过程可以包括如下步骤:
S21、获取所述历史数据。
如上,所述用户的历史数据可以包括用户的访问记录、用户在大数据平台的日志记录、用户在大数据平台的组件日志、用户的应用日志中的一种或多种。
S22、根据算法模型和/或检测目标标签选取数据特征。
其中,所述检测目标标签为用于进行异常行为检测的数据特征的标签。
示例性的,若预设定通过访问频次进行异常行为检测,则所述检测目标标签为访问频次的标签;若预设定通过访问IP地址进行异常行为检测,则所述检测目标标签为访问IP地址的标签。
作为本发明实施例一种可选的实施方式,所述数据特征包括以下维度中的至少一种:
数据目录、访问网络协议地址(Internet Protocol,IP)以及访问频次。
S23、将所述历史数据分为训练数据集和测试数据集。
作为本发明实施例一种可选的实施方式,上述步骤S23中将将所述历史数据分为训练数据集和测试数据集包括:
基于K交叉验证法(KFold Cross Validation)把所述历史数据为训练数据集和测试数据集。
训练数据集和测试数据集的划分方法很大程度上影响最终的模型性能。理论上尽量使用更多的数据参与到模型的训练中,可以提高模型的性能,因此普通交叉验证法(Leave-one-out cross-validation,LOOCV)每次只用1个数据做测试,用其他n-1个数据作训练,这样虽然可以使最多的数据参与到模型的训练中,但耗费的时间过长,效率低下。K交叉验证法将原始数据集分为K份,每一重复的取其中一份做测试数据集,其它K-1份做训练数据集训练模型,最后平均K次测试的均方误差(Mean Squared Error,MSE)作为最终的MSE。相比于普通交叉验证法,本发明实施例基于K交叉验证法(KFold Cross Validation)将所述历史数据为训练数据集和测试数据集,因此可以平衡模型性能与模型训练效率之间的矛盾。
S24、利用所述训练数据集、所述数据特征以及孤立森林算法构建所述数据检测模型。
具体的,利用所述训练数据集、所述数据特征以及孤立森林算法构建所述数据检测模型的过程可以包括:
步骤1、从训练数据集中随机抽取n个样本点构成待检测数据的子集放入根节点。
步骤2、从数据特征的维度中指定一个维度,在训练数据集中产生一个切割点。
步骤3、通过切割点生成的超平面将当前数据空间划分为两个子空间,指定维度小于切割点的样本点放入一侧子节点,大于或等于切割点的放入另一侧子节点。
步骤4、递归步骤2和步骤3,直至所有的叶子节点都只有一个样本点或者孤立树已经达到预定义的高度;
步骤5、循环步骤1至步骤4,直至生成预定义数量的孤立树,并将生成的孤立树组成孤立森林。
示例性的,预定义数量可以为100。
S25、通过所述数据检测模型对所述测试数据集进行检测,获取所述数据检测模型的性能的评估结果。
即,通过训练获取的孤立森林检测测试数据集,获取异常数据样本。
S26、根据所述评估结果和所述测试数据集中的真实异常数据的情况,调整所述数据检测模型的模型参数,以对所述数据检测模型进行修正。
作为本发明实施例一种可选的实施例方式,所述测试数据集中的真实异常数据的情况可以由人工对测试数据集进行检测获取。当然,所述测试数据集中的真实异常数据的情况也可以由其他方式获取,本发明实施例对此不作限定。
作为本发明实施例一种可选的实施例方式,所述数据检测模型的模型参数包括以下参数中的至少一项:
采样大小、孤立树的数量、孤立树高度。
作为本发明实施例一种可选的实施例方式,在上述步骤23(将所述历史数据分为训练数据集和测试数据集)之前,本发明实施例提供的异常行为检测方法还包括:
根据聚合规则对所述历史数据进行聚合处理,以将一次用户操作产生的数据聚合为一条操作事件对应的数据;
其中,所述聚合规则由检测大数据平台各类组件的操作特征确定。
具体的,本发明实施例中进行数据聚合的目的是保证用户的一次操作只产生一条事件,而不是以来原始日志简单的把用户一次操作误认为是多个事件。
在大数据平台中用户进行一次操作,往往会产生多条记录,例如:用户在分布式文件系统(Hadoop Distributed File System,HDFS)中进行了复制一个目录的操作,在HDFS的日志中不但会记录复制该目录的操作记录,而且还会记录读取该目录下的所有文件的操作记录,即该目录下有多少文件就会至少产生多少条日志记录,此类用户操作不能根据日志记录的条数简单的判断用户进行了多少次操作,否则大量的增加用户操作事件上报的数据量,降低异常行为检测的效率与准确率。本发明实施例中对此类操作的操作特征进行总结,从而确定出历史数据的聚合规则,并根据聚合规则将一次用户操作产生的数据聚合为一条操作事件对应的数据。例如:总结用户在HDFS中进行一个目录的复制时的操作特征可以确定,复制目录时产生的日志记录会包括:复制目录的操作日志和读取目录下每一个文件的日志记录,进而可以确定聚合规则:当数据中包括一个复制目录的操作日志和一个或多个读取该目录下的文件的操作日志时,将复制目录的操作日志和一个或多个读取该目录下的文件的操作日志聚合为复制该目录的操作事件对应的数据。
由于本发明实施例可以分析大数据平台各类组件的操作特征制定聚合规则,并根据聚合规则将一次用户操作产生的日志记录聚合为一条事件,因此本发明实施例可以大量的减少用户操作事件上报的数据量,提高异常行为检测的效率与准确率。
作为本发明实施例一种可选的实施方式,在所述历史数据进行聚合处理之前,所述方法还包括执行以下步骤a和步骤b中的至少一项:
步骤a、从日志数据中提取目标属性与所述目标属性的值作为所述历史数据。
日志数据通常包括客户端地址、客户端用户名、服务器时间、服务器IP地址、请求内容、访问方式、请求大小、返回大小等众多属性以及属性对应的值,然而在实际进行异常进行检测时并仅仅会根据其中的一部分属性及属性对应的值确定是否存在异常行为,因此本发明实施例中需要先从日志数据中进行异常行为检测的属性机器对应的值作为所述历史数据。
例如:当前检测仅仅是通过检测用户访问的服务器的IP地址来确定是否存在异常行为,则仅需知道哪些用户访问了哪些服务器IP地址就可以检测出异常行为,而无需其他属性及属性值,此时可以从日志数据中提取下表1所示属性及属性对应的值作为历史数据:
表1
即,在上述实施例中目标属性为“客户端用户名”和“服务器IP地址”,提取客户端用户名、服务器IP地址以及对应的属性值作为历史数据。
步骤b、过滤所述历史数据中的重复数据、错误数据以及不完整数据。
具体的,可以构建抽取、转换、加载(Extract-Transform-Load,ETL)系统,通过kafka streaming对历史数据进行抽取与转换(从日志数据中提取目标属性与所述目标属性的值作为所述历史数据)、过滤(过滤所述历史数据中的重复数据、错误数据以及不完整数据)以及将抽取与转换、过滤后的历史数据加载到HDFS等存储系统中等操作。
需要说明的是,上述实施例中根据聚合规则对所述历史数据进行聚合处理的过程也可以在ETL系统中进行。
作为本发明实施例一种可选的实施方式,上述步骤S22(在根据算法模型和/或检测目标标签选取数据特征)之前,本发明实施例提供的异常行为检测方法还包括执行以下步骤c和步骤d中的至少一项:
步骤c、对所述历史数据进行缺失值处理。
步骤d、对所述历史数据进行归一化处理。
具体的,对数据进行缺失值处理为通过均值插补或同类均值插补或建模预测的方补入数据中缺失的值,对数据进行归一化处理为将转换为0值1之间的小数,以方便后续的数据处理。
需要说明的是,上述实施例中的步骤b和步骤c可以均执行,即过滤掉一部分不完整数据,并另一部分不完整数据进行缺失值处理。也可以仅执行步骤b或步骤c,即过滤掉所有不完整数据,并不再进行缺失值处理,或者不过滤任何不完整数据,对所有不完整数据进行缺失值处理。
基于同一发明构思,作为对上述方法的实现,本发明实施例还提供了一种异常行为检测装置,该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。
图3为本发明实施例提供的异常行为检测装置的结构示意图,如图3所示,本实施例提供的异常行为检测装置300,包括:
获取单元31,用于获取待检测数据;
检测单元32,用于通过数据检测模型对所述待检测数据进行检测确定异常行为,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据;
输出单元33,用于对所述异常行为进行事件上报。
参照图4所示,作为本发明实施例一种可选的实施方式,所述异常行为检测装置还包括:
模型构建单元34,用于获取用户的历史数据,根据算法模型和/或检测目标标签选取数据特征,将所述历史数据分为训练数据集和测试数据集,利用所述训练数据集、所述数据特征以及孤立森林算法构建所述数据检测模型,通过所述数据检测模型对所述测试数据集进行检测,获取所述数据检测模型的性能的评估结果,根据所述评估结果和所述测试数据集中的真实异常数据的情况,调整所述数据检测模型的模型参数,以对所述数据检测模型进行修正,
其中,所述检测目标标签为用于进行异常行为检测的数据特征的标签。
作为本发明实施例一种可选的实施方式,所述模型构建单元34,还用于在将所述历史数据分为训练数据集和测试数据集之前,根据聚合规则对所述历史数据进行聚合处理,以将一次用户操作产生的数据聚合为一条操作事件对应的数据;
其中,所述聚合规则由检测大数据平台各类组件的操作特征确定。
作为本发明实施例一种可选的实施方式,所述模型构建单元34,还用于在对所述历史数据进行聚合处理之前,从日志数据中提取目标属性与所述目标属性的值作为所述历史数据,以及过滤所述历史数据中的重复数据、错误数据以及不完整数据。
作为本发明实施例一种可选的实施方式,所述模型构建单元34,具体用于基于K交叉验证法把所述历史数据为训练数据集和测试数据集。
作为本发明实施例一种可选的实施方式,所述模型构建单元34,还用于在根据算法模型和/或检测目标标签选取数据特征之前,对所述历史数据进行缺失值处理和/或归一化处理。
作为本发明实施例一种可选的实施方式,所述数据特征包括以下维度中的至少一种:
数据目录、访问网络协议地址IP以及访问频次。
作为本发明实施例一种可选的实施方式,所述数据检测模型的模型参数包括以下参数中的至少一项:
采样大小、孤立树的数量、孤立树高度。
本实施例提供的异常行为检测装置可以执行上述方法实施例提供的异常行为检测方法,其实现原理与技术效果类似,此处不再赘述。
基于同一发明构思,本发明实施例还提供了一种异常行为检测装置。图5为本发明实施例提供的异常行为检测装置的硬件结构图,如图5所示,本实施例提供的异常行为检测装置包括:存储器51和处理器52,存储器51用于存储计算机程序;处理器52用于在调用计算机程序时执行上述方法实施例所述的异常行为检测方法中的各步骤。
本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所述的异常行为检测方法。
本领域技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
处理器可以是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质可以由任何方法或技术来实现信息存储,信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。根据本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种异常行为检测方法,其特征在于,包括:
获取待检测数据;
通过数据检测模型对所述待检测数据进行检测确定异常行为,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据;
对所述异常行为进行事件上报。
2.根据权利要求1所述的方法,其特征在于,在通过数据检测模型对所述待检测数据进行检测确定异常行为之前,所述方法还包括:
获取所述历史数据;
根据算法模型和/或检测目标标签选取数据特征,所述检测目标标签为用于进行异常行为检测的数据特征的标签;
将所述历史数据分为训练数据集和测试数据集;
利用所述训练数据集、所述数据特征以及孤立森林算法构建所述数据检测模型;
通过所述数据检测模型对所述测试数据集进行检测,获取所述数据检测模型的性能的评估结果;
根据所述评估结果和所述测试数据集中的真实异常数据的情况,调整所述数据检测模型的模型参数,以对所述数据检测模型进行修正。
3.根据权利要求2所述的方法,其特征在于,在将所述历史数据分为训练数据集和测试数据集之前,所述方法还包括:
根据聚合规则对所述历史数据进行聚合处理,以将一次用户操作产生的数据聚合为一条操作事件对应的数据;
其中,所述聚合规则由检测大数据平台各类组件的操作特征确定。
4.根据权利要求3所述的方法,其特征在于,在对所述历史数据进行聚合处理之前,所述方法还包括执行以下步骤中的至少一项:
从日志数据中提取目标属性与所述目标属性的值作为所述历史数据;
过滤所述历史数据中的重复数据、错误数据以及不完整数据;
对所述历史数据进行缺失值处理;
对所述历史数据进行归一化处理。
5.根据权利要求2所述的方法,其特征在于,所述将所述历史数据分为训练数据集和测试数据集,包括:
基于K交叉验证法把所述历史数据分为训练数据集和测试数据集。
6.根据权利要求2-5任一项所述的方法,其特征在于,
所述数据特征包括以下维度中的至少一种:
数据目录、访问网络协议地址IP以及访问频次。
7.根据权利要求2-5任一项所述的方法,其特征在于,
所述数据检测模型的模型参数包括以下参数中的至少一项:
采样大小、孤立树的数量、孤立树高度。
8.一种异常行为检测装置,其特征在于,包括:
获取单元,用于获取待检测数据;
检测单元,用于通过数据检测模型对所述待检测数据进行检测确定异常行为,所述数据检测模型为以用户的历史数据为样本数据、孤立森林算法为模型算法构建的机器学习模型,所述历史数据包括所述异常行为对应的异常数据;
输出单元,用于对所述异常行为进行事件上报。
9.一种异常行为检测装置,其特征在于,包括存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于在调用所述计算机程序时执行如权利要求1-7任一项所述的异常行为检测方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的异常行为检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911373150.6A CN113051552A (zh) | 2019-12-27 | 2019-12-27 | 一种异常行为检测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911373150.6A CN113051552A (zh) | 2019-12-27 | 2019-12-27 | 一种异常行为检测方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113051552A true CN113051552A (zh) | 2021-06-29 |
Family
ID=76506087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911373150.6A Pending CN113051552A (zh) | 2019-12-27 | 2019-12-27 | 一种异常行为检测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113051552A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338195A (zh) * | 2021-12-30 | 2022-04-12 | 中国电信股份有限公司 | 基于改进孤立森林算法的web流量异常检测方法及装置 |
CN115051880A (zh) * | 2022-08-17 | 2022-09-13 | 华泰人寿保险股份有限公司 | 对流量或日志数据进行分类的方法、系统、装置及介质 |
CN117370898A (zh) * | 2023-12-08 | 2024-01-09 | 钛合联(深圳)科技有限公司 | 一种电子数据安全管控系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104598916A (zh) * | 2014-09-11 | 2015-05-06 | 单勇 | 一种火车识别系统的构建方法和火车识别的方法 |
CN109145595A (zh) * | 2018-07-31 | 2019-01-04 | 顺丰科技有限公司 | 一种用户异常行为检测系统、方法、设备及存储介质 |
CN109948669A (zh) * | 2019-03-04 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 一种异常数据检测方法及装置 |
CN110135162A (zh) * | 2019-05-27 | 2019-08-16 | 深信服科技股份有限公司 | Webshell后门识别方法、装置、设备及存储介质 |
CN110399935A (zh) * | 2019-08-02 | 2019-11-01 | 哈工大机器人(合肥)国际创新研究院 | 基于孤立森林机器学习的机器人实时异常监测方法及系统 |
JP2019207660A (ja) * | 2018-05-30 | 2019-12-05 | 横河電機株式会社 | 異常検出装置、異常検出方法、異常検出プログラム及び記録媒体 |
-
2019
- 2019-12-27 CN CN201911373150.6A patent/CN113051552A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104598916A (zh) * | 2014-09-11 | 2015-05-06 | 单勇 | 一种火车识别系统的构建方法和火车识别的方法 |
JP2019207660A (ja) * | 2018-05-30 | 2019-12-05 | 横河電機株式会社 | 異常検出装置、異常検出方法、異常検出プログラム及び記録媒体 |
CN109145595A (zh) * | 2018-07-31 | 2019-01-04 | 顺丰科技有限公司 | 一种用户异常行为检测系统、方法、设备及存储介质 |
CN109948669A (zh) * | 2019-03-04 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 一种异常数据检测方法及装置 |
CN110135162A (zh) * | 2019-05-27 | 2019-08-16 | 深信服科技股份有限公司 | Webshell后门识别方法、装置、设备及存储介质 |
CN110399935A (zh) * | 2019-08-02 | 2019-11-01 | 哈工大机器人(合肥)国际创新研究院 | 基于孤立森林机器学习的机器人实时异常监测方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338195A (zh) * | 2021-12-30 | 2022-04-12 | 中国电信股份有限公司 | 基于改进孤立森林算法的web流量异常检测方法及装置 |
CN115051880A (zh) * | 2022-08-17 | 2022-09-13 | 华泰人寿保险股份有限公司 | 对流量或日志数据进行分类的方法、系统、装置及介质 |
CN117370898A (zh) * | 2023-12-08 | 2024-01-09 | 钛合联(深圳)科技有限公司 | 一种电子数据安全管控系统 |
CN117370898B (zh) * | 2023-12-08 | 2024-03-12 | 钛合联(深圳)科技有限公司 | 一种电子数据安全管控系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107302547B (zh) | 一种web业务异常检测方法及装置 | |
CN107888571B (zh) | 一种基于HTTP日志的多维度webshell入侵检测方法及检测系统 | |
US9639844B2 (en) | Method and apparatus of identifying a website user | |
US20200013065A1 (en) | Method and Apparatus of Identifying a Transaction Risk | |
CN113051552A (zh) | 一种异常行为检测方法和装置 | |
CN110958220A (zh) | 一种基于异构图嵌入的网络空间安全威胁检测方法及系统 | |
US20190065738A1 (en) | Detecting anomalous entities | |
CN109587125B (zh) | 一种网络安全大数据分析方法、系统及相关装置 | |
US20210263979A1 (en) | Method, system and device for identifying crawler data | |
US11244043B2 (en) | Aggregating anomaly scores from anomaly detectors | |
US11716337B2 (en) | Systems and methods of malware detection | |
CN112929216A (zh) | 一种资产管理方法、装置、设备及可读存储介质 | |
CN113965389B (zh) | 一种基于防火墙日志的网络安全管理方法、设备及介质 | |
WO2021169239A1 (zh) | 一种爬虫数据的识别方法、系统及设备 | |
CN112131075A (zh) | 一种用于存储监控数据异常检测的方法及设备 | |
US10637878B2 (en) | Multi-dimensional data samples representing anomalous entities | |
CN112383828A (zh) | 一种具有类脑特性的体验质量预测方法、设备及系统 | |
US20210011793A1 (en) | Determining root-cause of failures based on machine-generated textual data | |
CN111092873B (zh) | 非对称卷积网络的流量检测模型的训练方法及检测方法 | |
CN112671724A (zh) | 一种终端安全检测分析方法、装置、设备及可读存储介质 | |
Pangsuban et al. | A real-time risk assessment for information system with cicids2017 dataset using machine learning | |
US20230315884A1 (en) | Event data processing | |
CN115600195A (zh) | 一种web攻击检测方法、装置、设备及可读存储介质 | |
CN111639365A (zh) | 一种数据泄漏告警方法及相关装置 | |
CN114826726B (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 |