行为异常检测方法和装置与流程

文档序号:22234357发布日期:2020-09-15 19:40阅读:224来源:国知局
行为异常检测方法和装置与流程

本发明涉及网络安全技术领域,尤其涉及一种行为异常检测方法和装置。



背景技术:

网络安全隐患(如数据泄密、网络攻击等)一般可由网络中的用户行为或实体行为异常引起及体现出来,其中,实体设备例如为个人计算机、手机、平板、服务器、虚拟机等。因此,检测行为(用户行为和/或实体行为)是否异常,是保证网络安全的重要前提。

目前,检测行为异常的方式主要通过规则匹配完成,即为异常配置对应的规则,当检测到的一具体行为(用户行为和/或实体行为)满足该规则时,则确定该行为异常。

在实现本发明过程中,发明人发现现有技术中至少存在如下问题:

现有的这种行为异常检测方式,由于参考标准比较单一,会导致误报或虚报。



技术实现要素:

有鉴于此,本发明实施例提供一种行为异常检测方法和装置,能够有效地降低行为异常的误报率或虚报率。

为实现上述目的,根据本发明实施例的一个方面,提供了一种行为异常检测方法,包括:

根据预设的异常因子检测方式,检测设定范围内的行为数据;

当检测的结果指示所述行为数据包括至少一种异常因子时,计算每一种所述异常因子在所述设定范围内的发生率;

根据每一种所述异常因子、每一种所述异常因子对应的发生率、存储的行为异常网络模型所包括的多个异常因子之间的关联关系及所述关联关系对应的条件概率,计算所述行为数据对应的异常分数,其中,所述行为异常网络模型与一行为异常相关,所述关联关系包括至少一个作为父节点的异常因子和一个作为子节点的组合因子或所述行为异常;

当所述异常分数不小于预设的异常阈值时,所述行为数据指示了发生所述行为异常。

优选地,上述行为异常检测方法,进一步包括:

构建所述行为异常网络模型,其中,所述行为异常网络模型包括多个异常因子以及所述多个异常因子之间的至少一段关联关系;

为每一段所述关联关系配置多个条件概率,所述条件概率表示了对应于父节点的发生情况组合子节点的发生概率;

存储所述行为异常网络模型和每一段所述关联关系对应配置的多个条件概率。

优选地,每一段所述关联关系包括下列中的一种情况:

所述子节点对应于至少两个父节点、所述子节点是另一段关联关系的父节点。

优选地,为每一段所述关联关系配置多个条件概率的步骤,包括:

针对每一段所述关联关系,执行:

针对所述至少一个父节点的每一种状态值的组合,配置所述子节点发生的条件概率和所述子节点未发生的条件概率,其中,所述状态值指示所述父节点发生或未发生。

优选地,

在计算所述行为数据对应的异常分数之前,进一步包括:根据所述行为数据包括的异常因子,从至少两个所述行为异常网络模型中,确定待使用的所述异常网络模型。

优选地,计算所述行为数据对应的异常分数的步骤,包括:

针对每一段所述关联关系,执行:

利用每一个所述父节点对应的发生率,计算所述父节点的每一种状态值的组合对应的组合概率;

根据所述组合概率和所述关联关系的条件概率,计算所述关联关系的组合因子或行为异常的异常分数。

优选地,根据所述组合概率和所述关联关系的条件概率,计算所述关联关系的组合因子或行为异常的异常分数的步骤,包括:根据所计算的组合概率的最大值在关联关系中对应配置的条件概率,计算关联关系的组合因子或行为异常的异常分数。

优选地,根据所述组合概率和所述关联关系的条件概率,计算所述关联关系的组合因子或行为异常的异常分数的步骤,包括:如果所述行为数据指示了预定义的异常因子发生,则根据所述预定义的异常因子在所述关联关系中对应配置的条件概率,计算所述关联关系的组合因子或行为异常的异常分数。

优选地,根据所述组合概率和所述关联关系的条件概率,计算所述关联关系的组合因子或行为异常的异常分数的步骤,包括:

根据所计算的组合概率和所述组合概率在所述关联关系中对应配置的条件概率的乘积之和,计算所述关联关系的组合因子或行为异常的异常分数。

优选地,所述异常因子检测方式,包括:

基于规则的异常因子检测方式、基于行为基线的异常因子检测方式以及基于机器学习的异常因子检测方式中的任意一种或多种。

优选地,

所述行为数据来源于网络连接日志,终端日志、安全事件日志中的任意一种或多种。

优选地,在检测设定范围内的行为数据的步骤之后,进一步包括:

获取所述行为数据包括的多个特征信息;

对每一种所述特征信息进行数值化处理,以获得所述行为数据包括的至少一种异常因子。

第二方面,本发明实施例提供一种行为异常检测装置,包括:检测单元、发生率计算单元以及异常识别单元,其中,

所述检测单元,用于根据预设的异常因子检测方式,检测设定范围内的行为数据;

所述发生率计算单元,用于当所述检测单元检测的结果指示所述行为数据包括至少一种异常因子时,计算每一种所述异常因子在所述设定范围内的发生率;

所述异常识别单元,用于根据每一种所述异常因子、每一种所述异常因子对应的发生率、存储的行为异常网络模型所包括的多个异常因子之间的关联关系及所述关联关系对应的条件概率,计算所述行为数据对应的异常分数,其中,所述行为异常网络模型与一行为异常相关,所述关联关系包括至少一个作为父节点的异常因子和一个作为子节点的组合因子或所述行为异常;当所述异常分数不小于预设的异常阈值时,所述行为数据指示了发生所述行为异常。

优选地,行为异常检测装置,进一步包括:模型构建单元和存储单元,其中,

所述模型构建单元,用于构建所述行为异常网络模型,其中,所述行为异常网络模型包括多个异常因子以及所述多个异常因子之间的至少一段关联关系;为每一段所述关联关系配置多个条件概率,所述条件概率表示了对应于父节点的发生情况组合子节点的发生概率;

所述存储单元,用于存储所述模型构建单元构建出的所述行为异常网络模型以及配置的每一段所述关联关系对应配置的多个条件概率。

上述发明中的一个实施例具有如下优点或有益效果:一般来说,结合多种异常因子可比较准确的评估行为数据是否存在行为异常。在本发明实施例的方案中,因为存储的行为异常网络模型包括多个异常因子以及多个异常因子之间的关联关系,即该行为异常网络模型综合了多个异常因子和多个异常因子之间的关联关系。那么,基于行为异常网络模型包括的多个异常因子之间的关联关系及关联关系对应的条件概率、检测出的行为数据包括的每一种异常因子以及行为数据包括的每一种异常因子对应的发生率,计算出的行为数据对应的异常分数,能够比较全面和真实的反映行为数据,因此,利用异常分数的大小,判断行为数据是否指示了发生行为异常(即当异常分数不小于预设的异常阈值时,行为数据指示了发生行为异常),能够有效地降低行为异常的误报率或虚报率。

上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施例的行为异常检测方法的主要流程的示意图;

图2是根据本发明实施例的一种行为异常网络模型的示意图;

图3是根据本发明实施例的另一种行为异常网络模型的示意图;

图4是根据本发明实施例的又一种行为异常网络模型的示意图;

图5是根据本发明实施例的计算行为数据对应的异常分数的主要流程的示意图;

图6是根据本发明实施例的行为异常检测装置的主要单元的示意图;

图7是本发明实施例可以应用于其中的示例性系统架构图;

图8是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。

具体实施方式

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

行为异常一般是指用户或实体行为异常,其中,用户行为异常是指,用户通过用户特征标识登录实体设备后,用户进行了正常或日常操作之外的、并在实体设备上记录下来的其他操作。实体行为异常是指,实体设备(如个人计算机、手机、平板、服务器、虚拟机等)所执行的、正常或日常操作之外的、并在实体设备上记录下来的其他操作。该正常或日常操作之外的其他操作,比如访问存在风险的网站、日均发送文件的大小超过正常或日常传输文件的大小、发送单个文件的大小超过正常或日常传输单个文件的大小、下载文件的大小超过正常或日常传输单个文件的大小、发起正常或日常之外的网络连接、查询dns等。

图1是根据本发明实施例的一种行为异常检测方法,如图1所示,该行为异常检测方法可包括如下步骤:

s101:根据预设的异常因子检测方式,检测设定范围内的行为数据;

s102:当检测的结果指示行为数据包括至少一种异常因子时,计算行为数据包括的每一种异常因子在设定范围内的发生率;

s103:根据行为数据包括的每一种异常因子、每一种异常因子对应的发生率、存储的行为异常网络模型所包括的多个异常因子之间的关联关系及关联关系对应的条件概率,计算行为数据对应的异常分数,其中,行为异常网络模型与一行为异常相关,关联关系包括至少一个作为父节点的异常因子和一个作为子节点的组合因子或行为异常;

s104:当异常分数不小于预设的异常阈值时,行为数据指示了发生行为异常。

其中,设定范围内的行为数据可以为一个时间段范围内的行为数据;也可以为未被检测过的行为数据的数据量达到数据量阈值(例如,以bytes为单位)的情况下的行为数据;还可以为未被检测过的行为数据所涉及的记录条数达到条数阈值的情况下的行为数据。即:通过上述步骤s101可对用户或实体每一次操作产生的行为数据(如日志中的行为数据、网关中的行为数据等)进行检测;还可对用户或实体在一段时间内产生的行为数据(如日志中的行为数据、网关中的行为数据等)进行检测等。

值得说明的是,上述步骤s101可同时对多个用户和/或实体进行检测,而步骤s102至步骤s104则是针对步骤s101检测的每一个用户或者实体进行的相关操作。

另外,步骤s101提及的行为数据可以是指,用户操作实体设备或者实体设备执行任务或者执行操作过程,所产生的与用户相关的各类日志、报警信息等,这些行为数据可通过各类网关设备、安全防护设备和电脑设备记录并获得。

异常因子指的是,由预设的异常因子检测方式从行为数据中获取或解析出的、预先设置的、可能与异常相关的因子。这些因子可根据预设的异常因子检测方式的调整而进行相应地调整,即这些因子是动态可调整的。

在本发明一个实施例中,步骤s101中的异常因子检测方式可包括:基于规则的异常因子检测方式、基于行为基线的异常因子检测方式以及基于机器学习的异常因子检测方式中的任意一种或多种。

其中,

基于规则的异常因子检测方式,即为各种异常因子配置对应的特征,比如,行为特征1、行为特征2以及行为特征3对应异常因子1,行为特征4对应异常因子2。那么,通过检测行为数据中存在的行为特征,即可确定该行为数据对应的异常因子。

基于行为基线的异常因子检测方式是指,为一段时间用户或实体的每一种行为建议对应的行为基线,并为每一种行为基线分配对应的异常因子,当某一用户或实体的行为数据中的行为特征超出该行为数据对应的行为基线,则确定该行为基线对应的异常因子为该行为数据的异常因子。该行为基线可包括自身的行为基线和群体的行为基线,行为基线可用均值、方差、标准差、分位数等指标表征。比如,异常因子为发送数据异常,其对应的行为基线为日均传输文件大小,该日均传输文件大小可为一个用户或一个部门在当前时间之前一段时间(如当前时间之前的7天、14天或1个月)中,发送数据的大小平均值(如1兆),而当前时间发送数据的大小达到100兆,则确定该当前时间的发送数据的行为数据对应名称为发送数据异常的异常因子。

基于机器学习的异常因子检测方式是指,基于样本行为数据中的样本行为特征训练数据模型,得到对应的异常因子模型,然后利用该异常因子模型为异常数据中的行为特征确定出对应的异常因子。每一种异常因子对应的异常因子模型可以采用一种数据模型训练得到,而不同的异常因子对应的异常因子模型所对应的数据模型可以不同。比如,异常因子8对应的异常因子模型采用随机深林算法得到、异常因子9对应的异常因子模型采用svm算法等。

其中,行为数据中的行为特征可以从实体设备产生的日志中截取得到。用户的行为特征是指标识有用户特征标识的日志所包括的行为特征;实体设备的行为特征是指标识有实体设备特征标识的日志所包括的行为特征。用户的行为特征和实体设备的行为特征可存在部分或全部重合,基于用户的行为特征可得出行为异常对应的用户,基于实体设备的行为特征可得出行为异常对应的实体设备,从而方便对异常用户或异常设备进行定位。行为数据可来源于网络连接日志,终端日志、安全事件日志中的任意一种或多种。这些日志数据能体现用户或实体访问网站、发送数据、下载文件、发起网络连接、查询dns、泄漏敏感数据等一种或多种行为。

其中,计算行为数据包括的每一种异常因子在设定范围内的发生率可以有两种具体实施方式。

计算发生率的实施方式一:

计算行为数据包括的每一种异常因子在设定范围内的发生率的具体实施方式:可通过下述公式(1),计算行为数据包括的每一种异常因子在设定范围内的发生率;

其中,kij表征用户j或实体j对应的异常因子i在设定范围内的发生率;nij表征在设定范围内的行为数据包括用户j或实体j对应的异常因子i的数据记录条数;nj表征在设定范围内的行为数据包括用户j或实体j对应的数据记录总条数;例如,行为数据记录有满足记录要求(比如,该满足记录要求可为属于某一种操作的数据)的用户或实体的操作数据记录,相应地,数据记录总条数是指,在设定范围内的行为数据包括的、由于用户j或实体j操作产生的数据记录的总条数;包括用户j或实体j对应的异常因子i数据记录条数是指,在设定范围内的行为数据包括的、由于用户j或实体j操作产生的具有异常因子i数据记录的总条数。

比如,当设定范围为1条操作数据时,行为数据包括的每一个异常因子的发生率均为1;又比如,行为数据包括有用户s的数据记录总条数为10条(即用户s对实体进行了10次操作),其中,有5条数据记录中检测出的行为特征对应了异常因子1,则对于用户s来说,该异常因子1对应的发生率为0.5。

值得说明的是,基于上述公式(1)的任意一种变形公式也可达到计算行为数据包括的每一种异常因子在设定范围内的发生率的目的,也均在本发明保护范围内。

另外,值得说明的是,行为异常网络模型包括的多个异常因子以及至少一种异常因子为与行为异常相关、且相互条件独立的异常因子。

计算发生率的实施方式二:为设定范围内的行为数据包括的异常因子分配对应的发生率为1,为设定范围内的行为数据不包括的异常因子分配对应的发生率为0。比如,设定范围内的行为数据包括图2示出的异常因子1,但不包括异常因子2和异常因子3,则该异常因子1的发生率为1,异常因子2和异常因子3的发生率均为0。

其中,行为异常网络模型包括多个异常因子以及多个异常因子之间的至少一段关联关系,即行为异常网络模型建立起了多个异常因子之间的关联,那么,在后续基于该行为异常网络模型包括的多个异常因子以及多个异常因子之间的多段关联关系,进行行为异常检测时,可以综合考虑多个异常因子,以更真实地反映检测的结果。其中,行为异常网络模型可如图2至图4所示。而行为异常网络模型包括的每一段关联关系可采用图的形式表示(如图2至图4示出的关联关系),也可采用表格的形式表示(如下表1和表2),每一个表格表示一段关联关系,还可采用图与表搭配的形式表示,即从图中确定关联关系,查找该关联关系对应的表格,以从表格中确定出条件概率。

如图2所示,一个行为异常网络模型包括:异常因子1、异常因子2以及异常因子3,其中,异常因子1、异常因子2和异常因子3通过有向线段指向行为异常a。其中,将异常因子1、异常因子2、异常因子3以及特征异常a抽象为行为异常网络模型中的各个节点,并定义一条有向线段起始位置对应的节点为父节点,相对应地,该有向线段终止位置对应的节点或有向线段指向的节点为子节点。该有向线段指示因果关系,即子节点受父节点影响。

基于此,本发明实施例中提及的一段关联关系是由一个子节点以及该子节点所对应的所有父节点所组成。在图2中给出的一段关联关系:异常因子1、异常因子2和异常因子3通过有向线段指向行为异常a构成一段关联关系。图3给出了三段关联关系:异常因子3和异常因子4通过有向线段指向组合因子a构成一段关联关系、组合因子a和异常因子5通过有向线段指向行为异常b构成另一段关联关系、行为异常b通过有向线段分别指向异常因子11和异常因子12。图4给出了三段关联关系,在此不再赘述。值得说明的是,本发明实施例定义的父节点和子节点为相对的,一段关联关系中的子节点可能为其他关联关系中的父节点,一段关联关系中的父节点可能为其他关联关系中的子节点。

值得说明的是,行为异常网络模型中各个节点的形状可以任意设定,比如,图2至图4示出的代表行为异常的节点为棱形,除代表行为异常的节点之外的其他节点为椭圆形。

其中,为每一段关联关系配置多个条件概率,条件概率表示了对应于父节点的发生情况组合子节点的发生概率。其中,一段关联关系中的每一个父节点可有至少两种状态值(该至少两种状态值可为发生、未发生;或者该至少两种状态值可为无异常、异常、非常异常等),则一段关联关系对应的一个条件概率是指,该关联关系中所有父节点的状态值构成一个条件组合,该条件组合所对应的子节点发生的概率或者该条件组合所对应的子节点未发生的概率,该条件概率可如下表1和表2所示。另外,除了可采用图2至图4示出的异常网络模型表示出关联关系,还可以用表1和表2给出的表结构表示出关联关系。

值得说明的是,该行为异常网络模型可为如图2、图3以及图4示出的有向无环的网络模型。值得说明的是,图2至图4只是示例性地给出了行为异常网络模型部分结构,基于异常因子构建的其他有向无环的网络模型均在本申请保护范围内。也就是说,行为异常网络模型构成可能会很复杂,只要满足有向无环的要求即可。

另外,该行为异常网络模型可基于贝叶斯信念网络模型构建出。

一般来说,结合多种异常因子可比较准确的评估行为数据是否存在行为异常。在本发明实施例的方案中,因为存储的行为异常网络模型包括多个异常因子以及多个异常因子之间的关联关系,即该行为异常网络模型综合了多个异常因子和多个异常因子之间的关联关系。那么,基于行为异常网络模型包括的多个异常因子之间的关联关系及关联关系对应的条件概率、检测出的行为数据包括的每一种异常因子以及行为数据包括的每一种异常因子对应的发生率,计算出的行为数据对应的异常分数,能够比较全面和真实的反映行为数据,因此,利用异常分数的大小,判断行为数据是否指示了发生行为异常(即当异常分数不小于预设的异常阈值时,行为数据指示了发生行为异常),能够有效地降低行为异常的误报率或虚报率。

在本发明实施例中,上述行为异常检测方法可进一步包括:构建行为异常网络模型,其中,行为异常网络模型包括多个异常因子以及多个异常因子之间的至少一段关联关系;为每一段关联关系配置多个条件概率,条件概率表示了对应于父节点的发生情况组合子节点的发生概率;存储行为异常网络模型和每一段关联关系对应的多个条件概率。

值得说明的是,为每一段关联关系配置对应的多个条件概率的步骤中,配置的条件概率,可以结合领域知识得出,比如,由具有安全领域知识的安全专家给出。以比较准确的体现出不同异常因子对行为异常的影响大小,使基于行为异常网络模型指示的多个异常因子以及关联关系对应的多个条件概率,更准确的对检测的结果进行评估。

另外,值得说明的是,上述构建行为异常网络模型的步骤和配置多个条件概率的步骤并不需要每一次行为异常检测过程中都执行,即上述构建行为异常网络模型的步骤和为每一段所述关联关系配置对应的多个条件概率的步骤只需要在在首次进行行为异常检测时或者在首次进行行为异常检测之前,预先执行即可。在后续行为异常检测过程中,可采用存储的行为异常网络模型和配置的条件概率。

在本发明一个实施例中,每一段关联关系包括下列中的一种情况:

子节点对应于至少两个父节点、子节点是另一段关联关系的父节点。

即:每一段关联关系可包括:至少一个父节点以及至少一个父节点指向的子节点,其中,当父节点个数为一个时,父节点代表第一异常因子,子节点代表第二异常因子,且子节点为下一段关联关系的父节点;当父节点个数为至少两个时,每一个父节点代表第三异常因子或来源于上一段关联关系的子节点,子节点代表组合因子或行为异常,其中,当子节点代表组合因子时,子节点为下一段关联关系的父节点。比如,图2示出的关联关系1中,父节点个数为3个,即父节点代表异常因子1、异常因子2和异常因子3,子节点代表行为异常a。又比如,图3示出的关联关系2和关联关系3以及图4示出的关联关系4中,父节点个数为至少两个,其中,图3示出的关联关系3中,两个父节点分别代表组合因子a和异常因子5,其中,组合因子a是来源于关联关系2中的子节点;图4示出的关联关系5中,三个父节点分别代表组合因子b、异常因子8以及异常因子9,其中,组合因子b为该关联关系5对应的上一关联关系(关联关系4)的子节点;

值得说明的是,上述上一段关联关系和下一段关联关系是相对概念,比如,当前关联关系中的一个父节点是另一段关联关系的子节点,则该另一段关联关系即为当前关联关系的上一段关联关系,当前关联关系即为另一段关联关系的下一段关联关系。如图3示出的关联关系2和关联关系3,关联关系2的子节点代表的组合因子a是关联关系3的父节点,则关联关系2为关联关系3的上一段关联关系,关联关系3为关联关系2的下一段关联关系。

在本发明一个实施例中,为每一段关联关系配置对应的多个条件概率的步骤可包括:针对每一段关联关系,执行:针对至少一个父节点的每一种状态值的组合,配置子节点发生的条件概率和子节点未发生的条件概率,其中,状态值指示父节点发生或未发生。

值得说明的是,在前述实施例中已经提及一段关联关系中的每一个父节点可有两种状态值(该两种状态值:发生、未发生),则状态值组合是指一段关联关系中所有父节点的状态值构成的一个组合,该条件组合所对应的子节点发生的概率或者该组合所对应的子节点未发生的概率。

如图3示出的关联关系2,其对应的多个条件概率如下表1所示。

表1

如图3示出的关联关系3,其对应的多个条件概率如下表2所示。

其中,表1和表2中的状态值0指示未发生,状态值1指示发生,组合因子a=0代表组合因子a未发生的条件概率,组合因子a=1代表组合因子a发生的条件概率,行为异常b=0代表行为异常b未发生的条件概率,行为异常b=1代表行为异常b发生的条件概率。

即表1中给出了关联关系2对应的多个条件概率,分别为:异常因子1未发生以及异常因子2未发生时,组合因子a未发生的条件概率为0.8;异常因子1未发生以及异常因子2未发生时,组合因子a发生的条件概率为0.2;异常因子1未发生以及异常因子2发生时,组合因子a未发生的条件概率为0.4;异常因子1未发生以及异常因子2发生时,组合因子a发生的条件概率为0.6;异常因子1发生以及异常因子2未发生时,组合因子a未发生的条件概率为0.5;异常因子1发生以及异常因子2未发生时,组合因子a发生的条件概率为0.5;异常因子1发生以及异常因子2发生时,组合因子a未发生的条件概率为0.15;异常因子1发生以及异常因子1发生时,组合因子a发生的条件概率为0.85。与表1结构一致,表2中给出了图3中关联关系3对应的多个条件概率,在此不再赘述。

通过以表格的形式管理每一段关联关系对应的多个条件概率,方便后续根据条件组合,对条件概率进行查找,以有效地节约计算资源。

上述一个行为异常网络模型可对应一种异常类型,异常类型可为下述一种或多种:企业内部网络感染木马、访问过不安全网站、从网站上下载过不安全文件等。值得说明的是,行为异常网络模型的个数并不受特定限制,可根据实际情况确定出。

本发明实施例中,在计算行为数据对应的异常分数之前可进一步包括:根据行为数据包括的异常因子,从至少两个行为异常网络模型中,确定待使用的异常网络模型。

比如,图2给出了一种异常类别为行为异常a的部分行为异常网络模型,图3示出了另一种异常类别为行为异常b的部分行为异常网络模型以及图4示出了另一种异常类别为行为异常c的部分行为异常网络模型。针对行为数据来说,检测的结果指示行为数据与异常因子1、异常因子2以及异常因子4相匹配时,由于异常因子1、异常因子2出现在图2示出的行为异常网络模型,异常因子4出现在图2和图3示出的行为异常网络模型,则待使用的行为异常网络模型有2个,分别为图2、图3示出的行为异常网络模型。则可分别基于图2和图3示出的行为异常网络模型所包括的多个异常因子以及每一段关联关系对应的多个条件概率,针对行为异常a和行为异常b,分别计算行为数据对应的异常分数。

另外,在确定出待使用的行为异常网络模型的个数为至少2个或多个时,还可对该待使用的行为异常网络模型进一步筛选,比如,预设异常因子个数阈值,当待使用的行为异常网络模型包括有行为数据所包括的异常因子的个数低于该异常因子个数阈值时,则舍弃该待使用的行为异常网络模型;当待使用的行为异常网络模型包括有行为数据所包括的异常因子的个数不低于该异常因子个数阈值时,则针对该待使用的行为异常网络模型,执行计算行为数据对应的异常分数的步骤。

可以理解地,包括有行为数据所包括的异常因子的个数越多的待使用的行为异常网络模型,对应的异常分数越准确。

另外,值得说明的是,当不存在包括全部行为数据所包括的异常因子的待使用的行为异常网络模型时,上述行为异常检测方法可进一步包括:对构建出的行为异常网络模型进行调整或者构建新的行为异常网络模型,以进一步完善行为异常网络模型,以使行为异常网络模型后续使用过程,能够更真实地体现行为数据是否具有行为异常。比如,存储有图2至图4的行为异常网络模型,在某一次检测中,检测出行为数据包括有异常因子1、异常因子4以及异常因子6,而图2至图4给出的行为异常网络模型均只含有部分(即图2包括有异常因子1、图3包括有异常因子4、图4包括有异常因子6),则可对图2至图4的行为异常网络模型进行调整,使其中一个或多个行为异常网络模型包括异常因子1、异常因子4以及异常因子6,或者构建新的包括有异常因子1、异常因子4以及异常因子6的行为异常网络模型。

在本发明一个实施例中,在确定行为数据属于行为异常的步骤之后可进一步包括:确定待使用的行为异常网络模型对应的异常类别为行为异常属于的异常类别。比如,行为数据对应的待使用的行为异常网络模型分别为图2和图3示出的行为异常网络模型,且针对图2和图3示出的行为异常网络模型,计算出行为数据对应的异常分数均大于异常阈值,则行为数据属于行为异常a和行为异常b。通过该过程实现了对行为异常进行分类,以更好地提醒用户如何应对该行为异常。

在本发明一个实施例中,如图5所示,计算行为数据对应的异常分数的步骤可包括如下步骤:

针对每一段关联关系,执行:

s501:利用每一个父节点对应的发生率,计算父节点的每一种状态值的组合对应的组合概率;

该步骤可通过下述计算公式(2),计算得出。

pvt=∏d∈vhd(ft)(2)

其中,pvt表征关联关系v中条件组合t对应的组合概率;d表征关联关系v包括的父节点;ft表征条件组合t中父节点d的状态值,ft取值为0或1,0表征父节点发生,1父节点d未发生;hd(ft)表征条件组合t中父节点d的状态值ft所对应的概率;其中,当ft=1,且父节点d代表行为数据包括的一个异常因子时,hd(ft)即为行为数据包括的该异常因子对应的发生率;当ft=0,且父节点d为行为数据包括的一个异常因子时,hd(ft)即为行为数据包括的该异常因子对应的未发生率(即:1减去行为数据包括的该异常因子对应的发生率);当父节点d为组合因子时,hd(ft)可为上一段关联关系得到的该组合因子的状态值ft对应的条件概率或者上一段关联关系得到的该组合因子的异常分数(该组合因子的异常分数将在下面详细说明,在此不再赘述),且ft继承上一段关联关系得到的条件概率对应的d的状态值。

比如,在检测结果中行为数据包括的异常因子为异常因子3和异常因子4,其属于图3示出的关联关系2。其中,分别计算出的异常因子3和异常因子4的发生率为0.5和0.4,相应地,异常因子3和异常因子4的未发生率为0.5和0.6;则利用上述公式(2),计算状态值的组合t1(异常因子3和异常因子4均发生)对应的组合概率:p3t1=h3(ft=1)×h4(ft=1)=0.5×0.4=0.2;又比如,利用上述公式(2),计算状态值的组合t2(异常因子3发生和异常因子4未发生)对应的组合概率:p3t2=h3(ft=1)×h4(ft=0)=0.5×0.6=0.3。

其中,上一段关联关系得到的该组合因子的状态值ft=1对应的条件概率可以为上一段关联关系中的每一个状态值的组合对应的组合因子发生的条件概率中最大的一个条件概率,也可以为上一段关联关系中的预定义的异常因子发生对应的组合因子发生的条件概率,还可以为上一段关联关系计算出的组合概率。相应地,上一段关联关系得到的该组合因子的状态值ft=0对应的条件概率则为1减去上一段关联关系得到的该组合因子的状态值ft=1对应的条件概率。比如,针对图3示出的关联关系3中的组合因子a来说,该组合因子a的状态值ft=1对应的条件概率为关联关系2中每一个状态值的组合(异常因子3和异常因子4均发生、异常因子3和异常因子4均未发生、异常因子3发生和异常因子4未发生、异常因子3未发生和异常因子4发生)对应的条件概率中最大的一个条件概率;也可以为异常因子3和异常因子4均发生(预定义的异常因子为异常因子3和异常因子4)对应的组合因子发生的条件概率;还可以为关联关系2对应的组合概率。

另外,值得说明的是,针对计算发生率的实施方式二来说,在确定出行为数据包括的异常因子的发生率为1,相应地,该行为数据包括的异常因子作为父节点时,该父节点的状态值ft=1的概率为该父节点的发生率1;该行为数据包括的异常因子作为父节点时,该父节点的状态值ft=0的概率为该父节点的未发生率0。比如,图3示出的行为异常网络模型中异常因子3和异常因子4均发生(相应地,异常因子3作为父节点的概率可为异常因子3的发生率1或者异常因子3的未发生率0;异常因子4作为父节点的概率可为异常因子4的发生率1或者异常因子4的未发生率0),异常因子5未发生(相应地,异常因子5作为父节点的概率可为异常因子5的发生率0或者异常因子5的未发生率1),相应地关联关系2的组合概率:异常因子3和异常因子4均发生的条件组合所对应的组合概率为1;关联关系2中异常因子3发生和异常因子4未发生的条件组合所对应的组合概率为0;关联关系2中异常因子3未发生和异常因子4未发生的条件组合所对应的组合概率为0;关联关系2中异常因子3未发生和异常因子4发生的条件组合所对应的组合概率为0;相应地关联关系3的组合概率:关联关系3中组合因子a未发生和异常因子5未发生的条件组合所对应的组合概率为组合因子a未发生的概率与异常因子5未发生的概率(异常因子5未发生的概率为1)的乘积;关联关系3中组合因子a发生和异常因子5未发生的条件组合所对应的组合概率为组合因子a发生的概率与异常因子5未发生的概率(异常因子5未发生的概率为1)的乘积等。

s502:根据组合概率和关联关系的条件概率,计算关联关系的组合因子或行为异常的异常分数。

其中,上述步骤s502可以有三种具体实现方式。

计算异常分数的具体实现方式一:

针对每一段关联关系,执行:

根据所计算的组合概率的最大值在关联关系中对应配置的条件概率,计算关联关系的组合因子或行为异常的异常分数;

该具体实现方式一中的计算关联关系的组合因子或行为异常的异常分数可以有两种实现形式:

实现形式一:

从存储的关联关系对应的多个条件概率中,确定所计算的组合概率的最大值在关联关系中对应配置的条件概率,从该条件概率中选择组合因子或行为异常发生对应的条件概率为组合因子的异常分数。

针对子节点为组合因子的关联关系:

比如,表1示出的图3中关联关系2所包括的组合概率由公式(2)计算得到,该关联关系2可存在4个组合概率(异常因子3和异常因子4均未发生对应的组合概率、异常因子3和异常因子4均发生对应的组合概率、异常因子3发生和异常因子4未发生对应的组合概率、异常因子3未发生和异常因子4发生对应的组合概率),假如确定这4个组合概率中最大的组合概率为异常因子3和异常因子4均发生对应的组合概率,则通过查表1可得出,组合概率的最大值在关联关系中对应配置的条件概率为异常因子3和异常因子4均发生配置的条件概率:组合因子a不发生的条件概率0.15以及组合因子a发生的条件概率0.85,则组合因子a的异常分数为0.85。

针对子节点为组合因子的关联关系:

确定所计算的组合概率的最大值在关联关系中对应配置的条件概率,从该条件概率中选择行为异常发生对应的条件概率为行为异常的异常分数。

比如,表2示出的图3中关联关系3所包括的组合概率由公式(2)计算得到,该关联关系3可存在4个组合概率(组合因子a和异常因子5均未发生对应的组合概率、组合因子a和异常因子5均发生对应的组合概率、组合因子a发生和异常因子5未发生对应的组合概率、组合因子a未发生和异常因子5发生对应的组合概率),假如确定这4个组合概率中最大的组合概率为组合因子a发生和异常因子5未发生对应的组合概率,则通过查表2可得出,组合概率的最大值在关联关系中对应配置的条件概率为组合因子a发生和异常因子5未发生对应的配置的条件概率:行为异常b不发生的条件概率0.2以及行为异常b发生的条件概率0.8,则行为异常b的异常分数为0.8。

上述实现形式一只需要通过从具有条件概率的表中查找即可得到行为异常的分数,能够有效地降低对计算资源的消耗。

实现形式二:

利用下述公式(3),计算关联关系的组合因子或行为异常的异常分数;

pg=pg×tg(3)

其中,pg表征待使用的行为异常网络模型中第g个组合因子或行为异常的异常分数;pg表征第g个关联关系中组合概率的最大值;tg表征待使用的行为异常网络模型中,第g个关联关系中组合概率的最大值对应的子节点发生的条件概率。

比如,图3示出的关联关系2所包括的4个组合概率(异常因子3和异常因子4均未发生对应的组合概率、异常因子3和异常因子4均发生对应的组合概率、异常因子3发生和异常因子4未发生对应的组合概率、异常因子3未发生和异常因子4发生对应的组合概率)中,假如确定这4个组合概率中最大的组合概率为异常因子3和异常因子4均发生对应的组合概率,则通过查表1可得出,组合概率的最大值在关联关系中对应配置的条件概率为异常因子3和异常因子4均发生配置的条件概率:组合因子a不发生的条件概率0.15以及组合因子a发生的条件概率0.85,则通过公式(3)计算组合因子的异常分数:异常因子3和异常因子4均发生对应的组合概率乘以0.85得出的结果即为组合因子的异常分数。

又比如,图3中关联关系3存在4个组合概率(组合因子a和异常因子5均未发生对应的组合概率、组合因子a和异常因子5均发生对应的组合概率、组合因子a发生和异常因子5未发生对应的组合概率、组合因子a未发生和异常因子5发生对应的组合概率),假如确定这4个组合概率中最大的组合概率为组合因子a发生和异常因子5未发生对应的组合概率,则通过查表2可得出,组合概率的最大值在关联关系中对应配置的条件概率为组合因子a发生和异常因子5未发生对应的配置的条件概率:行为异常b不发生的条件概率0.2以及行为异常b发生的条件概率0.8,则通过公式(3)计算行为异常的异常分数:组合因子a发生和异常因子5未发生对应的组合概率乘以0.8得出的结果即为行为异常的异常分数。

计算异常分数的具体实现方式二:

如果行为数据指示了预定义的异常因子发生,则根据预定义的异常因子在关联关系中对应配置的条件概率,计算关联关系的组合因子或行为异常的异常分数。

上述预定义的异常因子可以为预先设定好的一个或多个异常因子,只要该预定义的异常因子发生,则:

从包括状态值为发生的预定义的异常因子的状态值的组合对应的条件概率中选择组合因子发生或者行为异常发生对应的最大的条件概率作为组合因子或行为异常的异常分数。

比如,图3示出的行为异常网络模型为待使用的行为异常网络模型,预定义的异常因子为异常因子3,如果行为数据包括异常因子3和异常因子4,则包括状态值为发生的预定义的异常因子的状态值的组合为:异常因子3发生和异常因子4发生、异常因子3发生和异常因子4未发生。其中,如表1所示,异常因子3发生和异常因子4发生对应的组合因子a发生的条件概率为0.85;异常因子3发生和异常因子4未发生对应的组合因子a发生的条件概率为0.5;则组合因子a的异常分数为0.85。

比如,图4示出的行为异常网络模型为待使用的行为异常网络模型,预定义的异常因子为异常因子10,如果行为数据包括异常因子10,则包括状态值为发生的预定义的异常因子的状态值的组合为:异常因子10发生和组合因子c发生、异常因子10发生和组合因子c未发生。假如异常因子10发生和组合因子c发生对应的行为异常c发生的条件概率为0.9;异常因子10发生和组合因子c未发生对应的行为异常c发生的条件概率为0.8;则行为异常c的异常分数为0.9。

通过上述具体实施方式二给出的方案能够更加快速简便地计算出行为数据的异常分数。

计算异常分数的具体实现方式三:

根据所计算的组合概率和组合概率在关联关系中对应配置的条件概率的乘积之和,计算关联关系的组合因子或行为异常的异常分数。

组合概率在关联关系中对应配置的条件概率是指,在关联关系中组合概率对应的子节点发生的条件概率。比如,组合概率为图3示出的关联关系2对应的异常因子3和异常因子4均发生的状态值的组合对应的组合概率,则该组合概率在关联关系中对应配置的条件概率为:异常因子3和异常因子4均发生的状态值的组合下,组合因子a发生对应的条件概率。

该具体实施方式三可通过下述公式(4)计算得出。

其中,pg表征待使用的行为异常网络模型中,第g个关联关系中组合因子或行为数据对应的异常分数;pgu表征待使用的行为异常网络模型中,第g个关联关系中第u个状态值的组合对应的条件概率(即在关联关系中组合概率对应的子节点发生的条件概率);pgu表征第g个关联关系中第u个状态值的组合对应的组合概率;wg表征第g个关联关系中包括的状态值的组合的总个数,g为不小于1的正整数。

其中,第g个关联关系中包括的状态值的组合的总个数,具体可为,wg=2b,其中,b表征第g个关联关系具有属于行为数据包括的异常因子的总个数或者第g个关联关系包括的组合因子和具有属于行为数据包括的异常因子的总个数。

其中,针对b表征第g个关联关系具有属于行为数据包括的异常因子的总个数,在关联关系中包括组合因子时,直接确定该组合因子的状态值为发生。例如,以图3的异常网络模型作为待使用的异常网络模型例,在异常因子3和异常因子4均属于行为数据包括的异常因子的前提下,针对关联关系2来说,当异常因子3和异常因子4均属于行为数据包括的异常因子时,wg=22=4;针对关联关系3来说,组合因子a的状态值已经确定为发生,当异常因子5属于行为数据包括的异常因子时,wg=21=2,当异常因子5不属于行为数据包括的异常因子时,wg=20=1。值得说明的是,当上述计算异常分数的具体实现方式一至计算异常分数的具体实现方式三对应的计算结果为关联关系的组合因子的异常分数,该关联关系的组合因子的异常分数可作为上述公式(1)中组合因子的发生率。

例如,以图3的异常网络模型作为待使用的异常网络模型为例,异常因子5属于行为异常数据包括的异常因子,p3代表了关联关系3中行为异常b的异常分数;p3u代表关联关系3中第u个(u=1或2)条件组合对应的组合概率(p31表征组合因子a和异常因子5均发生的组合概率;p32表征组合因子a发生和异常因子5未发生的组合概率);pgu表征从上述表2查到的关联关系3对应的条件概率(比如,组合因子a和异常因子5均发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p31=0.95,组合因子a发生和异常因子5未发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p32=0.8)。那么,基于图3的异常网络模型,计算行为异常分数:p3=(p31×p31)+(p32×p32)=0.95×p31+0.8×p32。又比如,异常因子5不属于行为异常数据包括的异常因子,p3代表了关联关系3中行为异常b的异常分数;p3u代表关联关系3中第u个(u=1)条件组合对应的组合概率(p3u表征组合因子a发生和异常因子5未发生的组合概率);pgu表征从上述表2查到的关联关系3对应的条件概率(比如,组合因子a发生和异常因子5未发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p3u=0.8)。那么,基于图3的异常网络模型,计算行为异常分数:

p3=(p3u×p3u)=0.8×p32。

其中,针对b表征第g个关联关系包括的组合因子和行为数据包括的异常因子的总个数,例如,以图3的异常网络模型为例,针对关联关系3来说,当异常因子5属于行为数据包括的异常因子时,b=1+1=2(关联关系3包括1个组合因子a以及1个属于行为数据包括的异常因子5),wg=22=4,当异常因子5不属于行为数据包括的异常因子时,b=1(关联关系3包括1个组合因子a)wg=21=2。

例如,以图3的异常网络模型作为待使用的异常网络模型为例,异常因子5属于行为异常数据包括的异常因子,p3代表了关联关系3中行为异常b的异常分数;p3u代表关联关系3中第u个(u=1或2或3或4)条件组合对应的组合概率(p31表征组合因子a和异常因子5均发生的组合概率;p32表征组合因子a发生和异常因子5未发生的组合概率;p33表征组合因子a未发生和异常因子5发生的组合概率;p34表征组合因子a和异常因子5均未发生的组合概率);pgu表征从上述表2查到的关联关系3对应的条件概率(比如,组合因子a和异常因子5均发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p31=0.95,组合因子a发生和异常因子5未发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p32=0.8;组合因子a未发生和异常因子5发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p33=0.7;组合因子a和异常因子5均未发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p34=0.1)。那么,基于图3的异常网络模型,计算行为异常分数:

p3=(p31×p31)+(p32×p32)+(p33×p33)+(p34×p34)=0.95×p31+0.8×p32+0.7×p33+0.1×p34(当异常因子3、异常因子4以及异常因子5均发生,且异常因子3、异常因子4以及异常因子5的发生率均由计算发生率的具体实施方式二得到,即异常因子3、异常因子4以及异常因子5的发生率均为1,p31等于组合因子a发生的概率0.85乘以异常因子5的发生率1,p31=0.85其中,该组合因子a发生的概率可直接从表1中查到,即异常因子3和异常因子4均发生所对应的组合因子a发生的条件概率为0.85;p32等于组合因子a发生的概率0.85乘以异常因子5未发生的概率0,即p32=0;p33等于组合因子a未发生的概率0.15乘以异常因子5发生的概率1,即p33=0.15,其中,该组合因子a未发生的概率为异常因子3和异常因子4均发生所对应的组合因子a未发生的条件概率,从表1中可查得,该组合因子a未发生的概率为0.15;p34表征组合因子a未发生和异常因子5未发生的组合概率,p34=0,则p3=0.95×0.85+0.8×0+0.7×0.15+0.1×0=0.95×0.85+0.7×0.15)。

又比如,异常因子5不属于行为异常数据包括的异常因子,p3代表了关联关系3中行为异常b的异常分数;p3u代表关联关系3中第u个(u=2)条件组合对应的组合概率(p3u表征组合因子a发生和异常因子5未发生的组合概率;p3u′表征组合因子a未发生和异常因子5未发生的组合概率);pgu表征从上述表2查到的关联关系3对应的条件概率(比如,组合因子a发生和异常因子5未发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p3u=0.8;组合因子a和异常因子5均未发生的前提下,从表2中可查到该关联关系3对应的行为异常b发生的条件概率为p3u′=0.1)。那么,基于图3的异常网络模型,计算行为异常分数:p3=0.8×p3u+0.1×p3u′。在异常因子3和异常因子4均发生的前提下,异常因子5未发生,且异常因子3、异常因子4以及异常因子5的发生率均由计算发生率的具体实施方式二得到,即异常因子3、异常因子4的发生率均为1以及异常因子5的发生率为0,p3u等于组合因子a发生的概率0.85乘以异常因子5未发生的概率1,即p3u=0.85,其中,该组合因子a发生的概率可直接从表1中查到,即异常因子3和异常因子4均发生所对应的组合因子a发生的条件概率为0.85;p3u′等于组合因子a未发生的概率0.15乘以异常因子5未发生的概率1,即p3u′=0.15,其中,该组合因子a未发生的概率为异常因子3和异常因子4均发生所对应的组合因子a未发生的条件概率,从表1中可查得,该组合因子a未发生的概率为0.15;则p3=0.8×0.85+0.1×0.15)。

由于上述具体实施方式三综合考虑了条件概率和组合概率对行为数据的异常分数的影响,能够使计算得到的行为数据的异常分数更准确地表达或体现行为数据是否异常。

值得说明的是,通过上述具体实施方式一至具体实施方式三中包括的计算得出的一个关联关系中组合因子的异常分数可作为该关联关系对应的下一关联关系中该组合因子的发生率。

值得说明的是,通过上述具体实施方式一至具体实施方式三计算得出的一个关联关系中行为异常的异常分数可作为行为数据对应的异常分数。

上述给出具体实施方式一至具体实施方式三可以选择任意一种或者多种作为计算组合因子或行为异常的异常分数的方式,具体可根据用户的设定进行选择。

可以理解地,不同的计算异常分数的方式或方法对应的异常阈值不同,即该异常阈值可根据计算异常分数的方式或方法的调整而进行相应地调整。

另外,除了计算异常分数之前,还可以计算与异常分数相对地正常分数,并设定正常分数阈值,在计算出的不大于正常分数阈值时,仍可以判定行为数据指示了发生所述行为异常。

其中,正常分数的计算方式可基于上述异常分数计算方式的原理或原则进行相应地部署,也可采用1减去上述异常分数计算方式计算出的异常分数得到正常分数。

另外,在本发明实施例中,在确定出行为数据包括的异常因子以及确定出行为数据发生的行为异常后,还可进一步根据该行为异常,确定异常因子是由哪种行为异常所引起的。比如,图3示出的行为异常指向异常因子11和异常因子12,则在确定出行为数据包括的异常因子11以及确定出行为数据发生的行为异常b,则根据图3示出的行为异常网络模型,可确定出该异常因子11是由行为异常b引起的。

在本发明一个实施例中,在检测设定范围内的行为数据的步骤之后可进一步包括:获取行为数据包括的多个特征信息;对每一种特征信息进行数值化处理,以获得行为数据包括的至少一种异常因子。数据化处理后的结果指示特征因子是否为异常因子;根据每一种特征信息对应的数值化处理后的结果,确定行为数据包括的至少一种异常因子。该数值化处理是指直接通过为特征信息赋值来确定该特征信息是否为异常因子,比如,赋值为“0”的特征信息为正常因子,赋值为“1”的特征信息为异常因子,通过上述赋值能够比较快速地定位出行为数据包括的异常因子,从而有助于降低对计算资源的消耗。

如图7所示,本发明实施例提供一种行为异常检测装置600,该行为异常检测装置600可包括:检测单元601、发生率计算单元602以及异常识别单元603,其中,

检测单元601,用于根据预设的异常因子检测方式,检测设定范围内的行为数据;

发生率计算单元602,用于当检测单元601检测的结果指示行为数据包括至少一种异常因子时,计算每一种异常因子在设定范围内的发生率;

异常识别单元603,用于根据每一种异常因子、每一种异常因子对应的发生率、存储的行为异常网络模型所包括的多个异常因子之间的关联关系及关联关系对应的条件概率,计算行为数据对应的异常分数,其中,行为异常网络模型与一行为异常相关,关联关系包括至少一个作为父节点的异常因子和一个作为子节点的组合因子或所述行为异常;当异常分数不小于预设的异常阈值时,行为数据指示了发生所述行为异常。

在本发明一个实施例中,如图7所示,行为异常检测装置600进一步包括:模型构建单元604和存储单元605,其中,

模型构建单元604,用于构建行为异常网络模型,其中,行为异常网络模型包括多个异常因子以及多个异常因子之间的至少一段关联关系;为每一段关联关系配置多个条件概率,条件概率表示了对应于父节点的发生情况组合子节点的发生概率;

存储单元605,用于存储模型构建单元604构建出的行为异常网络模型以及配置的每一段关联关系对应配置的多个条件概率。

在本发明一个实施例中,每一段关联关系包括下列中的一种情况:

子节点对应于至少两个父节点、子节点是另一段关联关系的父节点。

在本发明一个实施例中,模型构建单元604,用于针对每一段关联关系,执行:针对至少一个父节点的每一种状态值的组合,配置子节点发生的条件概率和子节点未发生的条件概率,其中,状态值指示父节点发生或未发生。

在本发明一个实施例中,异常识别单元603,进一步用于根据行为数据包括的异常因子,从至少两个行为异常网络模型中,确定待使用的异常网络模型。

在本发明一个实施例中,异常识别单元603,进一步用于针对每一段关联关系,执行:利用每一个父节点对应的发生率,计算父节点的每一种状态值的组合对应的组合概率;根据组合概率和关联关系的条件概率,计算关联关系的组合因子或行为异常的异常分数。

在本发明一个实施例中,异常识别单元603,进一步用于根据算的组合概率的最大值在关联关系中对应配置的条件概率,计算关联关系的组合因子或行为异常的异常分数。

在本发明一个实施例中,异常识别单元603,进一步用于如果行为数据指示了预定义的异常因子发生,则根据预定义的异常因子在关联关系中对应配置的条件概率,计算关联关系的组合因子或行为异常的异常分数。

在本发明一个实施例中,异常识别单元603,进一步用于根据算的组合概率和组合概率在关联关系中对应配置的条件概率的乘积之和,计算关联关系的组合因子或行为异常的异常分数。

在本发明一个实施例中,检测单元601所使用的异常因子检测方式可包括:基于规则的异常因子检测方式、基于行为基线的异常因子检测方式以及基于机器学习的异常因子检测方式中的任意一种或多种。

在本发明一个实施例中,行为数据包括:访问网站、发送数据、下载文件、发起网络连接、查询dns中的任意一种或多种。

在本发明一个实施例中,检测单元601进一步用于获取行为数据包括的多个特征信息;对每一种特征信息进行数值化处理,以获得行为数据包括的至少一种异常因子。

图7示出了可以应用本发明实施例的行为异常检测方法或行为异常检测装置的示例性系统架构700。

如图7所示,系统架构700可以包括终端设备701、702、703,网络704、服务器705和虚拟机706。网络704用以在终端设备701、702、703和服务器705之间、终端设备701、702、703和虚拟机706之间、服务器705和虚拟机706之间提供通信链路的介质。网络704可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备701、702、703通过网络704与服务器705交互,用户可以使用终端设备701、702、703通过网络704与虚拟机706,服务器705通过网络704与虚拟机706,以接收或发送消息等。

终端设备701、702、703上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例),终端设备701、702、703还可对用户浏览各种应用或软件的日志中包括的行为数据进行检测、计算异常分数等处理,以及时提醒用户该终端设备701、702、703的用户行为或实体行为出现异常。

终端设备701、702、703可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器705可以是提供各种服务的服务器,例如对用户利用终端设备701、702、703,虚拟机706所产生的行为数据提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对行为数据进行异常因子检测、计算异常分数等处理,并将处理结果(例如异常报警信息--仅为示例)反馈给终端设备。

虚拟机706可对其自身产生的行为数据进行检测、计算异常分数等处理,并在检测出行为异常后,将行为异常的检测结果发送给终端设备,以及时提醒用户虚拟机出现行为异常。

需要说明的是,本发明实施例所提供的行为异常检测方法可由终端设备701、702、703、服务器705以及虚拟机706执行,相应地,行为异常检测装置可设置于终端设备701、702、703、服务器705以及虚拟机706中。

应该理解,图7中的终端设备、网络、服务器和虚拟机的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络、服务器和虚拟机。

下面参考图8,其示出了适于用来实现本发明实施例的终端设备或服务器的计算机系统800的结构示意图。图8示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图8所示,计算机系统800包括中央处理单元(cpu)801,其可以根据存储在只读存储器(rom)802中的程序或者从存储部分808加载到随机访问存储器(ram)803中的程序而执行各种适当的动作和处理。在ram803中,还存储有系统800操作所需的各种程序和数据。cpu801、rom802以及ram803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。

以下部件连接至i/o接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至i/o接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。

特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(cpu)801执行时,执行本发明的系统中限定的上述功能。

需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括检测单元、发生率计算单元以及异常识别单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,检测单元还可以被描述为“检测设定范围内的行为数据的单元”。

作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:根据预设的异常因子检测方式,检测设定范围内的行为数据;当检测的结果指示行为数据包括至少一种异常因子时,计算每一种异常因子在设定范围内的发生率;根据每一种异常因子、每一种异常因子对应的发生率、存储的行为异常网络模型所包括的多个异常因子之间的关联关系及关联关系对应的条件概率,计算行为数据对应的异常分数,其中,行为异常网络模型与一行为异常相关,关联关系包括至少一个作为父节点的异常因子和一个作为子节点的组合因子或行为异常;当异常分数不小于预设的异常阈值时,行为数据指示了发生所述行为异常。

根据本发明实施例的技术方案,因为存储的行为异常网络模型包括多个异常因子以及多个异常因子之间的关联关系,即该行为异常网络模型综合了多个异常因子和多个异常因子之间的关联关系。那么,基于行为异常网络模型包括的多个异常因子之间的关联关系及关联关系对应的条件概率、检测出的行为数据包括的每一种异常因子以及行为数据包括的每一种异常因子对应的发生率,计算出的行为数据对应的异常分数,能够比较全面和真实的反映行为数据,因此,利用异常分数的大小,判断行为数据是否指示了发生行为异常(即当异常分数不小于预设的异常阈值时,行为数据指示了发生行为异常),能够有效地降低行为异常的误报率或虚报率。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1