首页> 中国专利> 一种基于用户行为分析的异常行为检测方法

一种基于用户行为分析的异常行为检测方法

摘要

一种基于用户的行为分析的检测异常行为的方法通过可反馈调节的滑动时间窗实时采集用户行为数据,并通过构建多角度行为库以及多角度行为分析模型对用户的行为数据进行分析,并将该分析结果数据组与所设定的可接受的置信值进行分析对比,且可根据分析对比结果来反馈调整数据采集的时间窗的参数以及更新行为库,从而得到了全方位的分析与准确的判断,能够在提高检测准确度的前提下,通过尽量小的计算复杂度获得用户行为的分析结果。

著录项

  • 公开/公告号CN107196953A

    专利类型发明专利

  • 公开/公告日2017-09-22

    原文格式PDF

  • 申请/专利权人 上海丁牛信息科技有限公司;

    申请/专利号CN201710448328.3

  • 发明设计人 施勇;傅烨文;刘宁;

    申请日2017-06-14

  • 分类号H04L29/06(20060101);

  • 代理机构44229 广州市深研专利事务所;

  • 代理人陈雅平

  • 地址 200030 上海市徐汇区虹桥路168弄2号楼203

  • 入库时间 2023-06-19 03:21:52

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-19

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20170614

    专利权人的姓名或者名称、地址的变更

  • 2020-05-08

    授权

    授权

  • 2018-07-13

    专利申请权的转移 IPC(主分类):H04L29/06 登记生效日:20180625 变更前: 变更后: 申请日:20170614

    专利申请权、专利权的转移

  • 2017-11-03

    专利申请权的转移 IPC(主分类):H04L29/06 登记生效日:20171013 变更前: 变更后: 申请日:20170614

    专利申请权、专利权的转移

  • 2017-10-24

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20170614

    实质审查的生效

  • 2017-09-22

    公开

    公开

查看全部

说明书

技术领域

本发明涉及信息技术领域,特别涉及一种基于用户的行为分析的检测异常行为的方法。

背景技术

随着互联网用户的数量增长和类型的多样性,对用户行为进行分析以追踪潜在的问题或检测出恶意用户、恶意行为等也逐渐变得越来越难,尤其是海量的用户数据对用户分析处理的效率提出了更高的要求,使得传统的用户数据存储和分析方法己经不能胜任了。随着大数据时代的来临,大数据分析也应运而生。大数据分析是指对规模巨大的数据进行分析。大数据分析基于数据可视化可以直观的展示数据,基于数据挖掘可让我们深入数据内部去挖掘价值。

用户恶意行为在不断的演化和变异,而且随着网络流量越来越大,隐藏在大量正常网络流量中的网络恶意行为越来越难以发现。机器学习技术被认为是海量恶意行为自动分析的重要方法,但是现有机器学习模型的退化问题比较严重。同时,随着数据量的增加,统计分析的计算复杂度越来越高,基于可信度的恶意行为检测方法的效率问题越来越突出。因此需要一种能够处理海量数据,实时吸收新发现的知识,根据检测分析模型实时高速分析和检测恶意行为的方法。

在实际场景中,用户希望系统能够在短时间内检测到用户在非法地使用他们的主机,并做出相应响应,例如激活摄像头将非法用户拍照留存,保护隐私文件等。同时,模型应有较高的准确率,过高的误警率会降低用户体验以及系统的可信度。

本发明目的是解决现有机器学习模型退化比较严重的问题和现有的检测方法的准确率较低的问题,提出一种设立可反馈调节的动态滑动窗口并实时统计分析用户的行为,动态跟踪用户的行为习惯,基于己知行为以及用户给定的可接受最大错误概率,通过分析模块多角度地检测恶意行为的方法。

发明内容

针对上述问题,本发明提出了一种基于用户行为分析的异常行为检测方法和装置。通过合适的时间滑动窗口实时地采集用户行为数据,将用户行为数据输入到数据分析模型中,经过模型的分析判断给出用户行为正常与否的结论,以供使用者做出后续的判断。

更具体而言,本发明提出了一种基于用户行为分析的异常行为检测方法。其中,该方法包括如下步骤;

首先,设定初始的用于用户行为数据采集的时间滑动窗口参数,并基于该设定的时间滑动窗口参数对用户行为数据进行实时采集,通过多维数组来表示该用户行为数据;

第二步,构建标准用户行为样本库,包括标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库;其中标准恶意用户行为样本库中保存有多条且标准的用于表征用户行为属于恶意行为的用户行为数据,标准正常用户行为样本库保存有多条且标准的用于表征用户行为属于正常行为的用户行为数据,可疑用户行为样本库保存有多条用于表征用户行为属于可疑行为的用户行为数据;

第三步,以标准用户行为样本库构建多角度行为分析模型;

第四步,将所采集的用户行为数据输入到所构建的多角度行为分析模型中,得出分析结论值数组;

第五步,基于分析结论值数组计算得到分析可信度值,将分析可信度值与使用者预先设定的可接受置信度值进行比较,并根据该比较结果来选择执行反馈调整以及重测的步骤,包括反馈调整时间滑动窗口参数以重新采集用户行为数据,再次执行步骤一至步骤四,或根据该比较结果给出当前实时采集的用户行为数据的分析结果。

较佳地,所述的时间滑动窗口参数包括时间滑动窗口的长度以及数据采集基本时间元的间隔,且对时间滑动窗口参数进行反馈调整时可以调整该时间滑动窗口长度及数据采集基本时间元间隔二者中至少之一;

较佳地,所述分析结论值数组包括有异常概率值、正常概率值以及可疑概率值,其中的异常概率值表征当前实时采集的用户行为数据与标准恶意用户行为样本库中的样本间的相似程度,正常概率值表征当前实时采集的用户行为数据与标准正常用户行为样本库中的样本间的相似程度,可疑概率值表征当前实时采集的用户行为数据与可疑用户行为样本库中的样本间的相似程度;

较佳地,多角度行为分析模型包括基于马氏距离的多角度行为分析模型以及基于孤立森林的多角度行为分析模型。

较佳地,在所述基于马氏距离的多角度行为分析模型中通过分别计算当前实时采集的用户行为数据与标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库中的样本之间的马氏距离,来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组;

较佳地,在所述基于马氏距离的多角度行为分析模型中选取异常概率值、正常概率值以及可疑概率值中的最小者,分别计算该最小者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均小于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。

较佳地,在所述基于孤立森林的多角度行为分析模型中通过标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库分别构建出恶意行为森林、正常行为森林以及可疑行为森林,并分别计算当前实时采集的用户行为数据在恶意行为森林、正常行为森林以及可疑行为森林中的从根节点到该用户行为数据所处在的叶节点的平均路径距离,基于该平均路径距离来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组。

较佳地,在所述基于孤立森林的多角度行为分析模型中选取异常概率值、正常概率值以及可疑概率值中的最大者,分别计算该最大者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均大于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。

此外,本发明还提出一种基于用户行为分析的异常行为检测装置,其中,该装置包括:

参数设置模块,用于设定初始的用于用户行为数据采集的时间滑动窗口参数;

数据采集模块,用于基于参数设置模块所设定的时间滑动窗口参数对用户行为数据进行实时采集,通过多维数组来表示该用户行为数据;

行为样本库构建模块,用于构建标准用户行为样本库,包括标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库;其中标准恶意用户行为样本库中保存有多条且标准的用于表征用户行为属于恶意行为的用户行为数据,标准正常用户行为样本库保存有多条且标准的用于表征用户行为属于正常行为的用户行为数据,可疑用户行为样本库保存有多条用于表征用户行为属于可疑行为的用户行为数据;

模型构建模块,用于以标准用户行为样本库构建多角度行为分析模型;

分析模块,用于将所采集的用户行为数据输入到所构建的多角度行为分析模型中,得出分析结论值数组;

结果反馈模块,用于基于分析结论值数组计算得到分析可信度值,将分析可信度值与使用者预先设定的可接受置信度值进行比较,并根据该比较结果来选择执行反馈调整以及重测的步骤,包括反馈调整时间滑动窗口参数以重新采集用户行为数据,通过参数设置模块、数据采集模块、行为样本库构建模块、模型构建模块、分析模块执行重新采集数据并分析,或根据该比较结果给出当前实时采集的用户行为数据的分析结果。

较佳地,所述的参数设置模块所设定的时间滑动窗口参数包括时间滑动窗口的长度以及数据采集基本时间元的间隔,且对时间滑动窗口参数进行反馈调整时可以调整该时间滑动窗口长度及数据采集基本时间元间隔二者中至少之一;

较佳地,所述分析模块通过分析得到的分析结论值数组包括有异常概率值、正常概率值以及可疑概率值,其中的异常概率值表征当前实时采集的用户行为数据与标准恶意用户行为样本库中的样本间的相似程度,正常概率值表征当前实时采集的用户行为数据与标准正常用户行为样本库中的样本间的相似程度,可疑概率值表征当前实时采集的用户行为数据与可疑用户行为样本库中的样本间的相似程度;

较佳地,所述模型构建模块所构建的多角度行为分析模型包括基于马氏距离的多角度行为分析模型以及基于孤立森林的多角度行为分析模块。

较佳地,在所述基于马氏距离的多角度行为分析模型中通过分别计算当前实时采集的用户行为数据与标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库中的样本之间的马氏距离,来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组。

较佳地,在所述基于马氏距离的多角度行为分析模型中选取异常概率值、正常概率值以及可疑概率值中的最小者,分别计算该最小者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均小于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。

较佳地,在所述基于孤立森林的多角度行为分析模型中通过标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库分别构建出恶意行为森林、正常行为森林以及可疑行为森林,并分别计算当前实时采集的用户行为数据在恶意行为森林、正常行为森林以及可疑行为森林中的从根节点到该用户行为数据所处在的叶节点的平均路径距离,基于该平均路径距离来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组;

较佳地,在所述基于孤立森林的多角度行为分析模型中选取异常概率值、正常概率值以及可疑概率值中的最大者,分别计算该最大者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均大于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。

本发明通过可反馈调节的滑动时间窗实时采集用户行为数据,并通过构建多角度行为库以及多角度行为分析模型对用户的行为数据从多个角度进行刻画与反映,并将该分析结果数据组与使用者所设定的可接受的置信值进行分析对比,且可根据分析对比结构来反馈调整数据采集的时间窗的参数以及更新行为库,从而得到了全方位的分析与准确的判断,能够在提高检测准确度的前提下,通过尽量小的计算复杂度获得分析结果。

附图说明

图1是本发明实施例中用户行为分析方法的工作流程示意图;

图2是本发明实施例中时间滑动窗口的示意图;

图3是本发明实施例中用户行为分析装置的体系架构图。

具体实施例

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

本发明的实施例提供一种基于用户行为分析的异常行为检测方法,参见图1,包括如下步骤:

步骤101,设定初始的用于用户行为数据采集的时间滑动窗口参数,并基于该设定的时间滑动窗口参数对用户行为数据进行实时采集,通过多维数组来表示该用户行为数据;

较佳地,在该步骤101中,所述的时间滑动窗口参数包括时间滑动窗口的长度以及数据采集基本时间元的间隔;

在用户行为模型的检测上,特征选择是一个重要的“数据预处理”过程。也就是选取哪些用户行为数据来对用户进行识别,这是十分重要的。在现实任务中,属性过多会造成维数灾难,并且去除不相关的特征往往会降低学习任务的难度。“不好”的特征选取则会导致运算时间过长,甚至无法正确区分正常用户与异常用户。本实施例中,可以根据分析结果反馈调整时间滑动窗口的参数,也即,可以反馈调整所采集的时间序列的长度,即属性的数量,

本实施例中利用不同用户在使用主机时自然产生的使用习惯来进行用户行为的建模。通过用户的输入习惯,包括鼠标点击频率、鼠标运行轨迹、鼠标滚轮频率、键盘敲击频率、键盘特殊符号使用频率等信息,对用户行为进行刻画。考虑到即使同一个用户在不同场景下的固有习惯也会有一定改变,例如在进行文档工作时键盘的敲击频率可能会提高。这就需要通过检测应用程序的使用来对场景进行区分。

用户的操作行为从时间上看是孤立的,在t1时刻点击了鼠标,在t2时刻敲击了键盘,而要描述用户的行为习惯需要一个连续的刻画,将各动作之间的关联性挖掘出来。本实施例中采用了滑动窗口对于行为序列进行一定的组合。序列宽度是基于时间间隔进行选择的,每隔一段时间,统计最近一段时间的操作行为,达到统计时间时触发整个序列的移动事件,每次移动将第一个时间段的行为记录移出队列,在序列末尾加入新的行为记录,时间宽度记为W,也即时间滑动窗口的长度,间隔采样的时间长度也即数据采集基本时间元的间隔。例如选取时间宽度W=10s,每隔1秒进行一次统计,这样在实现上就可以使用一个在时间这一维度上长为10的多维数组来进行行为序列的实现,并且每隔1秒会触发整个序列向后移动1位。利用这样的设计能有效挖掘出行为序列中的关联信息,具体示意可以如图2所示。

步骤102,构建标准用户行为样本库,包括标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库;其中标准恶意用户行为样本库中保存有多条且标准的用于表征用户行为属于恶意行为的用户行为数据,标准正常用户行为样本库保存有多条且标准的用于表征用户行为属于正常行为的用户行为数据,可疑用户行为样本库保存有多条用于表征用户行为属于可疑行为的用户行为数据;

部分主机以及服务器的日常用户可能会有多个,互相之间的行为习惯会有不同,但是他们都是合法的用户。或者类似的场景,同一个合法用户,他在不同时间情况下可能使用习惯也会有所不同,例如正在接听电话,与人交谈等。为了解决这样的问题,在学习过程中需要构成一个正常的用户行为习惯集合,将正常用户包含在集合中,在检测时将新的用户行为习惯与正常用户行为集合进行比较,发现异常时进行应急响应。

更进一步地,恶意用户行为以及可疑的、也即无法确定该行为是否恶意而需要进一步判断的用户行为,也均有其自身的行为特性,例如,窃取用户资料的用户行为或可能在点击鼠标的频率上、或在鼠标滑动的轨迹以及所点击的文件夹、顺次点击的位置等等具有不同于正常操作的表现数值,将这些典型的恶意的以及可疑的用户行为也分别归类为行为库,通过将用户行为数据与这些不同的行为库间的相似程度来准确判断行为正常与否。

更进一步地,本实施例中该步骤中所构建的标准用户行为样本库中的样本应当与所实时采集的用户行为数据具有相同的维度,也即,用户行为数据如果是具有十个维度,例如通过滑动时间窗采集后表示为1*10的向量数组,则对应地该样本库中的样本也应当具有对应的维度数目,以可以进行后续的分析与判断。

步骤103,以标准用户行为样本库构建多角度行为分析模型;

构建了多角度的也即正常的、异常的以及可疑的行为库之后,可以对应地建立多角度行为分析模型,相比于现有技术中的单角度分析方法,本实施例的多角度行为分析模块并非从单一的角度判断用户行为是否正常、是否异常等,而是将用户行为数据与标准的正常行为数据、标准的异常行为数据以及可疑行为数据逐一进行分析对比,从多个方面多个角度对用户行为数据的归类进行了判断,例如,若当前的用户行为数据是正常的用户行为数据,则该行为数据与标准正常用户行为样本库中的样本具有较大的相似程度,并且该行为数据与标准恶意用户行为样本库以及可疑用户行为样本库具有较低的相似程度,这样能够从三个方面判断该用户行为数据的归类。

较佳地,该步骤103中,多角度行为分析模型包括基于马氏距离的多角度行为分析模型以及基于孤立森林的多角度行为分析模块。

较佳地,在所述基于马氏距离的多角度行为分析模型中通过分别计算当前实时采集的用户行为数据与标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库中的样本之间的马氏距离,来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组。

马氏距离(Mahalanobis distance)表示数据的协方差距离。它是一种有效的计算两个未知样本集之间相似度的方法。其实质是利用Cholesky变换来处理不同维度之间的相关性以及其度量尺度不同的问题。

假设训练集合为矩阵T,也即标准的样本库中的多个样本组成一个矩阵T,其行向量表示记录,列向量表示属性。协方差矩阵记为:,利用Cholesky分解,可以将其转化为下三角矩阵和上三角矩阵的乘积:

通过对用户行为数据的实时数据x进行如下处理,可以消除不同维度之间的相关性和度量尺度的不同:

其中是训练集合T的均值。

对于待分析的实时的用户行为数据x有其欧式距离为,则对应的经过处理后的马氏距离M就可表示为:

通过计算当前的用户行为数据与已有的样本库集合的马氏距离,可以考察不同测试集合所得到的马氏距离的统计特征,从而完成异常的检测。也即,分别计算当前实时采集的用户行为数据与标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库中的样本之间的马氏距离,来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组。

较佳地,在所述基于孤立森林(isolation Forest,iForest)的多角度行为分析模型中通过标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库分别构建出恶意行为森林、正常行为森林以及可疑行为森林,并分别计算当前实时采集的用户行为数据在恶意行为森林、正常行为森林以及可疑行为森林中的从根节点到该用户行为数据所处在的叶节点的平均路径距离,基于该平均路径距离来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组。

关于孤立森林算法,通常来说,异常用户的行为是稀少的,大部分的行为应是正常用户的操作,并且异常行为模式应该和正常行为模式有显著的区别,也即,在多个样本点所构成的超维空间中,正常数据点应该能够显著地在位置关系上区分于异常数据点,例如全部的正常数据点聚集在一起,而异常的数据点则散落于正常数据点的周围。孤立森林算法正是利用这两个特性,其核心构思以通俗语言可以描述为:通过构建多个超维平面切割多个样本点所处在的超维空间,使得所有的样本点都被超维平面分隔开,也即没有任何两个样本点处在相同的空间内,对于那些异常样本点,由于其散落于正常样本点的周围、且和正常样本点具有位置关系上的显著不同,则能够较容易的、迅速地被超维平面所分隔开,而那些聚集在一起的正常样本点则需要多次、多个超维平面才能够将它们逐个地间隔开。

在具体的算法操作上,借助于二叉树,孤立森林算法中对样本集中的多个样本在各个维度的数据上构建一系列的随机二叉树,这些随机二叉树每个节点要么有两个孩子,要么就是叶子节点,一个孩子都没有。通过在取值范围内随机取值将该范围内的数据划分成两个分支,然后在两个分支中继续随机取值进行划分,这样不断重复下去直到不可分割或者树的高度达到了限制。由于异常点是稀少的,在随机树中会很快被划分到叶子节点中,故而通过计算叶子节点到根节点之间的路径长度就可以快速地判断一条记录是否为异常行为。为了减轻计算量,可以计算出随机树的限制高度,对于超过平均路径长度的节点通常就认为是没有异常的。

对n个样本的数据,其路径长度记为h(n),其平均路径的长度c(n)为:

c(n) = 2H(n − 1) − (2(n − 1)/n)

其中H(i)是谐波数,等于ln(i)+欧拉常数。

为了对路径的长度进行归一化的处理,记s(x, n)为异常指数:

公式中的E(h(x))是对某一个给定值的路径长度的期望,可以看出s(x, n)是对该值所对应的路径的归一化。当s(x, n)趋近1时,说明这点是异常的,当s(x, n)远小于0.5时则说明这点是正常的,而当所有点都在0.5附近时则表示全体点没有明显的异常。

本实施例中,通过针对三类样本库,也即标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库分别构建出恶意行为森林、正常行为森林以及可疑行为森林,随后,分别计算当前实时采集的用户行为数据在恶意行为森林、正常行为森林以及可疑行为森林中的从根节点到该用户行为数据所处在的叶节点的平均路径距离,基于该平均路径距离来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组。

对于本实施例的这种多角度分析方法,其能够针对一条待检测数据,分别计算其与标准的正常行为、标准的异常行为以及标准可疑行为分别计算相似程度,这与现有技术中仅仅通过单一角度的判断具有更高的准确度,例如,若用户行为数据为正常的行为数据,则其应该具有与标准正常用户行为样本库中的样本具有相似的表现特征,而具有与标准恶意用户行为样本库中的样本具有相反的表现特征,也即,其在正常行为森林是一个正常的数据,且较难被区分开,更进一步而言,具有较长的路径距离;而其在恶意行为森林中是一个异常的数据,较容易被区分开,更进一步而言,具有较短的路径距离。对于其他性质的用户行为数据也具有类似的特性。

孤立森林的检测方法适用于队列长度较大的情况,误警率很低,对于整个集合的检测结果也是可信的。该算法能够以较低存储开销做到线性的时间复杂度,算法能够处理高维数据和海量数据,并且在没有异常的场景下也能表现不错。

步骤104,将所采集的用户行为数据输入到所构建的多角度行为分析模型中,得出分析结论值数组;

较佳地,该步骤104中,所述分析结论值数组包括有异常概率值、正常概率值以及可疑概率值,其中的异常概率值表征当前实时采集的用户行为数据与标准恶意用户行为样本库中的样本间的相似程度,正常概率值表征当前实时采集的用户行为数据与标准正常用户行为样本库中的样本间的相似程度,可疑概率值表征当前实时采集的用户行为数据与可疑用户行为样本库中的样本间的相似程度;

本步骤中,将用户行为数据输入到多角度行为分析模型中,例如如上所提及的两种分析模型中,可以获取数组形式的分析结果,该数组中包括了三个元素,这三个元素的数值分别表明了该行为数据与标准恶意用户行为、标准正常用户行为以及可疑用户行为的相似程度,例如,若该用户行为数据是一条正常的用户行为数据,则其应当表现出与标准正常用户行为更为相似的数值,例如在0~1的区间中,表现为0.75以上的数值,而与标准恶意用户行为及可疑用户行为具有不相似的数值,例如表现为0.25以下的数值。

步骤105,基于分析结论值数组计算得到分析可信度值,将分析可信度值与使用者预先设定的可接受置信度值进行比较,并根据该比较结果来选择执行反馈调整以及重测的步骤,包括反馈调整时间滑动窗口参数以重新采集用户行为数据,再次执行步骤101至步骤104,或根据该比较结果给出当前实时采集的用户行为数据的分析结果。

本步骤中,可由使用者预先设定可接受置信度值,该数值实质上为使用者对本次检测结果是否可信的一个设定阈值,当基于分析结论值数组计算得到分析可信度值大于或小于该可接受置信度值时,可以认为本次检索结果可信或者不可信,进而做出重测或者直接输出结果的决定。

本步骤中,若采用了基于马氏距离的多角度行为分析模型,则选取所计算得出的异常概率值、正常概率值以及可疑概率值中的最小者,分别计算该最小者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均小于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。例如,通过计算得出的分析结论值数组为[0.20 0.850.90],则选取三者中的最小者0.2,计算0.2/0.85以及0.2/0.9,得到分析可信度值,将这两个数值与使用者预先设定的可接受置信度值例如0.25进行比较,若均小于该可接受置信度值,则认为本次检测结果可信,并输出分析结果;否则,执行反馈调整及重测的步骤。

本步骤中,若采用了基于孤立森林的多角度行为分析模型,则选取所计算得出的异常概率值、正常概率值以及可疑概率值中的最大者,分别计算该最大者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均大于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。

较佳地,在反馈调整及重测的步骤中,对时间滑动窗口参数进行反馈调整时可以调整该时间滑动窗口长度及数据采集基本时间元间隔二者中至少之一。

另一方面,对应于如上所述的实施例所提出的方法,参见图3,本实施例还提出一种基于用户行为分析的异常行为检测装置300,其中,该装置300包括:

参数设置模块301,用于设定初始的用于用户行为数据采集的时间滑动窗口参数;

数据采集模块302,用于基于参数设置模块所设定的时间滑动窗口参数对用户行为数据进行实时采集,通过多维数组来表示该用户行为数据;

行为样本库构建模块303,用于构建标准用户行为样本库,包括标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库;其中标准恶意用户行为样本库中保存有多条且标准的用于表征用户行为属于恶意行为的用户行为数据,标准正常用户行为样本库保存有多条且标准的用于表征用户行为属于正常行为的用户行为数据,可疑用户行为样本库保存有多条用于表征用户行为属于可疑行为的用户行为数据;

模型构建模块304,用于以标准用户行为样本库构建多角度行为分析模型;

分析模块305,用于将所采集的用户行为数据输入到所构建的多角度行为分析模型中,得出分析结论值数组;

结果反馈模块306,用于基于分析结论值数组计算得到分析可信度值,将分析可信度值与使用者预先设定的可接受置信度值进行比较,并根据该比较结果来选择执行反馈调整以及重测的步骤,包括反馈调整时间滑动窗口参数以重新采集用户行为数据,通过参数设置模块、数据采集模块、行为样本库构建模块、模型构建模块、分析模块执行重新采集数据并分析,或根据该比较结果给出当前实时采集的用户行为数据的分析结果。

较佳地,所述的参数设置模块301所设定的时间滑动窗口参数包括时间滑动窗口的长度以及数据采集基本时间元的间隔,且对时间滑动窗口参数进行反馈调整时可以调整该时间滑动窗口长度及数据采集基本时间元间隔二者中至少之一;

较佳地,所述分析模块305通过分析得到的分析结论值数组包括有异常概率值、正常概率值以及可疑概率值,其中的异常概率值表征当前实时采集的用户行为数据与标准恶意用户行为样本库中的样本间的相似程度,正常概率值表征当前实时采集的用户行为数据与标准正常用户行为样本库中的样本间的相似程度,可疑概率值表征当前实时采集的用户行为数据与可疑用户行为样本库中的样本间的相似程度;

较佳地,所述模型构建模块304所构建的多角度行为分析模型包括基于马氏距离的多角度行为分析模型以及基于孤立森林的多角度行为分析模块。

较佳地,在所述基于马氏距离的多角度行为分析模型中通过分别计算当前实时采集的用户行为数据与标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库中的样本之间的马氏距离,来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组。

较佳地,在所述基于马氏距离的多角度行为分析模型中选取异常概率值、正常概率值以及可疑概率值中的最小者,分别计算该最小者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均小于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。

较佳地,在所述基于孤立森林的多角度行为分析模型中通过标准恶意用户行为样本库、标准正常用户行为样本库以及可疑用户行为样本库分别构建出恶意行为森林、正常行为森林以及可疑行为森林,并分别计算当前实时采集的用户行为数据在恶意行为森林、正常行为森林以及可疑行为森林中的从根节点到该用户行为数据所处在的叶节点的平均路径距离,基于该平均路径距离来获得该包括了异常概率值、正常概率值以及可疑概率值的分析结论值数组;

较佳地,在所述基于孤立森林的多角度行为分析模型中选取异常概率值、正常概率值以及可疑概率值中的最大者,分别计算该最大者与其他两个数值的比值,并将这两个比值作为分析可信度值,仅当这两个比值均大于使用者预先设定的可接受置信度值时,认定本分析结果可信,并输出该分析结果,否则,认定本分析结果不可信,执行反馈调整以及重测的步骤。

本发明采用可反馈调节的滑动时间窗实时采集用户行为数据,构建多角度行为库以及多角度行为分析模型,对用户的行为数据从多个角度进行分析,从而得到了全方位的分析与准确的判断,能够在提高检测准确度的前提下,通过尽量小的计算复杂度获得分析结果。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是符合与本文所公开的原理和新颖特点相一致的最宽的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号