一种基于网络安全设备日志数据的用户风险度评估方法和系统与流程

文档序号:19664344发布日期:2020-01-10 21:25阅读:395来源:国知局
一种基于网络安全设备日志数据的用户风险度评估方法和系统与流程

本发明属于数据挖掘技术领域,特别涉及一种基于网络安全设备日志数据的用户风险度评估方法和系统。



背景技术:

由于企业云平台的重要性,各企业在搭建云平台时都会选择将其部署在安全设备之后从而保障其不受到来自外网的攻击。但安全设备对于已获准进入的内部用户的异常访问行为并不能很好的检查出来,比如用户账户滥用、用户越权访问,以及用户私自获取、修改重要数据等行为。这些异常行为对于企业云平台而言具有极高的风险,一旦发生就会给企业带来不可估量的严重后果和经济损失。

虽然网络安全设备无法检测到内部用户的行为异常,但可以较为全面的记录所有云平台用户的操作信息与账户信息。通过这些数据我们可以利用技术手段提取出用户的行为特征,从而尝试对用户进行行为分析并实现对用户账户总体风险的评估以及对高危用户的识别预警。



技术实现要素:

为了克服上述现有技术的缺点,本发明的目的在于提供一种基于网络安全设备日志数据的用户风险度评估方法和系统,从用户行为和服务器平台管理部门获取用户危险行为清单,并从网络安全设备用户权限数据中提取用户权限信息,然后通过统计海量用户日志数据获得用户的危险指令使用及越权行为等特征;使用高斯混合模型算法建立用户在各特征维度上的风险分级概率模型,并基于证据融合理论建立风险概率融合算法,从而使用用户各特征维度上的风险分级概率计算得到用户总体风险概率;通过比较用户总体风险概率结果与预设阈值作出是否发出预警的决策,从而达到准确预警并节省人力和财力的目的。本发明不仅考虑了用户的历史日志数据,同时也考虑了用户的当日实时数据,具有获取成本低、信息内容丰富、覆盖用户广、针对用户的行为分析更全面,且可以对用户账户总体的风险进行评估等优点,使得本申请与传统的方法和系统相比,具有明显优势。

为了实现上述目的,本发明采用的技术方案是:

一种基于用户日志数据的用户风险度评估方法,其特征在于,包括:

步骤1,从用户日常行为及企业规范中提取用户危险指令行为清单;

步骤2,以网络安全设备用户权限数据为数据源,从用户权限数据中提取用户的系统账号id、服务器ip,以及“root”权限信息;

步骤3,以网络安全设备n周内的用户历史日志数据为数据源,从中提取用户实际使用的操作指令,将其与步骤1中提取到的用户危险指令行为对照,提取8个用户单日危险行为特征。其中包括参考用户危险行为清单中的相关危险指令提取到的linux危险指令、hadoop危险指令、sql危险指令单日使用频次3个用户危险指令使用特征。此外,通过提取日志中的指令信息,并将其与步骤2中提取的用户权限信息进行对照,从用户操作日志中提取用户单日越权操作特征:

步骤3.1,依据历史日志数据中的“命令指令部分”字段提取linux危险指令单日使用频次特征:将用户日志每个单日内使用的linux类危险指令的次数进行统计,得到用户linux危险指令单日使用频次;

步骤3.2,依据历史日志数据中的“命令指令部分”字段提取hadoop危险指令单日使用频次特征:将用户日志每个单日内使用的hadoop类危险指令的次数进行统计,得到用户hadoop危险指令单日使用频次;

步骤3.3,依据历史日志数据中的“命令指令部分”字段提取sql危险指令单日使用频次特征:将用户日志每个单日内使用的sql类危险指令的次数进行统计,得到用户sql危险指令单日使用频次;

步骤3.4,依据历史日志数据中的“命令参数部分”、“命令指令部分”以及“命令中出现的远程连接地址”三个有效字段提取越权操作类特征:将用户登录其他系统账号、使用高级权限(“root”权限)、远程登录其他服务器的行为与用户权限数据进行对照,统计用户越权登录他人账号、服务器,以及私自提权为“root”的次数,从而得到用户单日越权操作频次;

步骤4,根据步骤3中提取到的全部用户在linux、hadoop、sql危险指令单日使用频次及单日越权操作这四个特征维度上的全部特征值,针对每个特征维度,利用gmm算法分别构建用户特征值分布混合高斯概率模型,作为用户风险分级概率的计算模型:

步骤4.1,将步骤3中提取的用户危险行为特征按特征维度划分为s1,s2,s3,s4四个样本集;

步骤4.2,确定高斯混合模型中心数n后(本例中设置n=3),使用gmm算法在各样本集上训练产生高斯混合分布函数,且该函数具备n个峰值,代表着组成高斯混合函数的n个单一高斯函数。每个特征值输入该高斯混合模型都可以得到形如{p1,p2,…,pn}的一组概率输出;

步骤4.3,将每个峰值都作为分级概率中的“级”,等级从低到高排列,每当某特征值输入进模型中,模型会输出该特征值属于各个级的概率,找到这些概率的最大值以及该值对应的“级”,就可以认为该特征值属于该“级”;

步骤4.4,将训练产生的4个特征维度上的高斯混合模型φ1,φ2,φ3,φ4进行储存,以备后续输入用户危险特征从而产生用户风险分级概率;

步骤5,获取网络安全设备的当日用户日志数据,从其中的用户操作日志有效字段中提取各用户当日危险行为特征,根据步骤4中得到的各特征维度上的高斯混合模型计算各用户当日各个特征维度上的风险分级概率:

步骤5.1,获取网络安全设备当日的用户日志数据,提取用户危险行为特征;

步骤5.2,将各用户危险行为特征按不同特征维度输入相对应的高斯混合模型,得到各用户当日的风险分级概率集:其中α11为第1个危险行为特征上的高斯混合模型中第1个单一高斯分布函数所占的权重,p11为第1个危险行为特征上的高斯混合模型中第1个单一高斯分布函数上产生的概率值,其余符号同理;

n取3时,风险分级概率集为

步骤6,根据基于证据融合理论设计的概率融合算法,使用步骤5产生的各用户风险分级概率集计算各用户的总体风险概率,并根据用户的总体风险概率对是否发出高危用户预警作出决策:

步骤6.1,基于证据融合理论,可以将用户在每个危险行为特征上的风险分级概率融合为一组描述用户总风险度的概率组合{p1,p2,p3}。由于最初在每个特征上的高斯混合模型模型选取中心数为3。所以融合结果也是由三个分别代表用户在低/中/高三个风险分级上的概率组成。设计融合概率计算公式如下:

步骤6.2,将每位用户的风险分级概率集输入融合概率计算公式,计算得到每位用户的总体风险概率{p1,p2,p3};

步骤6.3,基于每位用户的正常概率p1、中等风险概率p2、高风险概率p3设置综合预警阈值,对是否对总体风险概率超过综合阈值的用户发出高危用户预警做出决策。

进一步,本发明中网络安全设备日志数据是指,例如云平台堡垒机等安全设备记录下的包含用户每日操作的具体信息如时间、服务器ip、使用指令、系统账号等内容的大量相关数据。

进一步,本发明中所提到的用户危险行为清单是指包含用户不得随意操作的危险行为的具体列表,如重要数据的删除、上传、下载、篡改,以及程序、系统的删除、修改等相关操作。清单中的具体内容为用户实施的危险操作及操作所使用的相关指令,主要由服务器平台管理部门提供并结合用户指令使用的具体情况进行筛选。

进一步,步骤4中提到的高斯混合模型是一种用于估计数据概率分布的算法。理论上gmm可以拟合出任意类型的数据分布,但现实中由于计算性能和时间复杂度的限制只能得到数据概率分布的近似拟合。

进一步,步骤5中提到的风险分级概率是指特征值输入含有n个高斯分量的高斯混合模型后产生的一组维数为n的概率值。由于n个高斯分量中心的值大小是从小到大依次排列,所以中心值越大的高斯分量意味着属于该高斯分布的特征值越大,相应用户的危险操作也越多。因此n个高斯分量上产生的概率代表着输入特征值属于对应风险级的可能性,因此称为风险分级概率。

进一步,步骤6中提到的证据融合理论是一种将多个对象相融合的理论。该对象可以是不同分类器的分类结果,也可以是不同人对某对象的预测,或不同传感器对某变量的测量数据,总之具有将多个结果相融合从而产生更直观更明确的统一输出需求的问题都可以应用证据融合理论解决

本发明还提供了一种基于网络安全设备日志数据的用户风险度评估系统,包括数据获取模块、特征提取模块、概率模型建立模块、评估模块、警告和可视化模块五个模块,可实现用户风险度的数据化表述,通过警告决策和可视化展示对高危用户发出警告,其特征在于,包括:

数据获取模块,从网络安全设备和云平台管理部门获取用户权限数据与用户日志数据以及用户危险行为清单;

特征提取模块,从用户危险行为中提取用户所用危险指令,从用户权限数据中提取与用户权限相关的服务器权限、系统账号权限,然后参照危险指令清单从用户日志数据中提取linux危险指令单日使用频次、hadoop危险指令单日使用频次、sql危险指令单日使用频次3个特征,参照用户权限信息提取用户单日越权操作频次特征;

概率模型建立模块,根据特征提取模块提取到的全部用户在linux、hadoop、sql危险指令单日使用频次及单日越权操作这四个特征维度上的全部特征值,基于gmm算法建立四个特征维度上用户特征值分布的混合高斯概率模型,作为用户风险分级概率的计算模型;

评估模块,获取网络安全设备的当日用户日志数据,从其中的用户操作日志有效字段中提取各用户当日危险行为特征,根据各特征维度上的高斯混合模型计算各用户当日各个特征维度上的风险分级概率,然后根据基于ds理论设计的概率融合算法,使用各用户风险分级概率计算各用户的总体风险概率;

警告和可视化模块,根据评估模块得到的用户总体风险概率{p1,p2,p3},将每位用户的正常概率p1、中等风险概率p2、高风险概率p3与综合预警阈值进行比较,从而对是否发出高危用户预警做出自动决策,并且对各用户总体风险概率结果进行可视化呈现。

与现有技术相比,本发明的有益效果是:

1.在用户风险概率模型建立过程中,只需要网络安全设备上自动记录的用户权限数据和日志数据,不需要其他专门产生的数据,也不需要具体的人工标记,从而该方法具有很低的人力和财力的花销。

2.使用的算法与模型结构简单容易实现,同时具有低的时间复杂度,降低了计算开销。

3.对用户账户的风险度进行了总体性的评估,相比单一角度或局部的评估更加全面,结果也更具可靠性,也实现了对用户风险度的定量化描述。

附图说明

图1是本发明的基于网络安全设备日志数据的用户风险度评估方法框图。

图2是本发明的基于网络安全设备日志数据的用户风险度评估系统框架图。

图3是网络安全设备用户权限数据实例。

图4是网络安全设备日志数据实例。

图5是用户危险行为清单实例。

图6是风险评估的可视化结果。

具体实施方式

下面结合附图和实施例详细说明本发明的实施方式。

本发明中的方法将分为离线建模和在线分析两部分说明,具体包括数据获取过程、特征提取过程、概率模型建立过程、在线用户风险评估过程。图1是本发明的基于网络安全设备日志数据的用户风险度评估方法框图。本发明中的系统以框图形式予以说明。图2是本发明的基于网络安全设备日志数据的用户风险度评估系统框架图。

数据获取过程

图3是网络安全设备用户权限数据实例。图4是网络安全设备用户日志数据实例。图5是用户危险行为清单实例。数据获取具体过程如下:

(1)通过linux下载指令,以固定格式从数据源下载所需用户权限数据;

(2)通过linux下载指令,以固定格式从数据源下载用户日志数据中的所需字段。

(3)通过云平台管理部门给出的指令使用规范以及对用户常用指令的分析得出用户危险指令清单。

特征提取过程

通过批量数据处理和文本挖掘等技术,参考网络安全设备用户权限信息与用户危险指令清单对网络安全设备日志数据中有效字段进行特征提取。具体特征提取过程如下:

(1)依据历史日志数据中的“命令指令部分”字段提取linux危险指令单日使用频次特征:将用户日志每个单日内使用的linux类危险指令的次数进行统计,得到用户linux危险指令单日使用频次;

(2)依据历史日志数据中的“命令指令部分”字段提取hadoop危险指令单日使用频次特征:将用户日志每个单日内使用的hadoop类危险指令的次数进行统计,得到用户hadoop危险指令单日使用频次;

(3)依据历史日志数据中的“命令指令部分”字段提取sql危险指令单日使用频次特征:将用户日志每个单日内使用的sql类危险指令的次数进行统计,得到用户sql危险指令单日使用频次;

(4)依据历史日志数据中的“命令参数部分”、“命令指令部分”以及“命令中出现的远程连接地址”三个有效字段提取越权操作类特征:将用户登录其他系统账号、使用高级权限(“root”权限)、远程登录其他服务器的行为与用户权限数据进行对照,统计用户越权登录他人账号、服务器,以及私自提权为“root”的次数,从而得到用户单日越权操作频次。

概率模型建立过程

具体建立过程如下:

(1),将用户危险行为特征按特征维度划分为s1,s2,s3,s4四个样本集;

(2),确定高斯混合模型中心数n后(本例中设置n=3),使用gmm算法在各样本集上训练产生高斯混合分布函数,且该函数具备n个峰值,代表着组成高斯混合函数的n个单一高斯函数。每个特征值输入该高斯混合模型都可以得到形如{p1,p2,…,pn}的一组概率输出;

(3),将每个峰值都作为分级概率中的“级”,等级从低到高排列,每当某特征值输入进模型中,模型会输出该特征值属于各个级的概率,找到这些概率的最大值以及该值对应的“级”,就可以认为该特征值属于该“级”;

(4),将训练产生的4个特征维度上的高斯混合模型φ1,φ2,φ3,φ4进行储存,以备后续输入用户危险特征从而产生用户风险分级概率

在线用户风险评估过程

将当日用户危险行为特征输入风险分级概率的高斯混合模型,输出用户风险分级概率集。然后根据基于证据融合理论设计的概率融合算法,使用各用户风险分级概率集计算各用户的总体风险概率,并根据用户的总体风险概率对是否发出高危用户预警作出决策:

(1),获取网络安全设备当日的用户日志数据,提取用户危险行为特征;

(2),将各用户危险行为特征按不同特征维度输入相对应的高斯混合模型,得到各用户当日的风险分级概率集

(3),将每位用户的风险分级概率集输入融合概率计算公式,计算得到每位用户的总体风险概率{p1,p2,p3};

(4)基于每位用户的低风险概率p1、中等风险概率p2、高风险概率p3设置综合预警阈值,对是否对总体风险概率超过综合阈值的用户发出高危用户预警做出决策。

图6是用户总体风险概率计算程序在服务器上在线运行的可视化结果(用户真实姓名不予展示)。在本例中,最后三列分别为低频使用概率、正常概率、高风险概率,每个正常概率低于50%,高风险概率高于20%的用户都是具有高风险的异常用户,需要发出风险预警。

综上,本发明从用户行为及企业规范中中提取用户危险行为清单,根据危险行为清单从网络安全设备用户日志等数据中提取用户危险行为特征,根据用户危险行为特征训练用户各危险行为上的高斯混合模型,并得到用户风险分级概率集,基于证据融合理论设计用户风险分级概率融合方法,并根据用户的风险概率融合结果决定用户是否存在行为异常风险;本发明所公开的基于网络安全设备日志数据的用户风险度评估方法和系统,实现简单、计算复杂度低,可以有效减少用户日志中行为分析的计算资源开销,不需要任何额外标记,仅需要网络安全设备自动记录的数据,具有实际应用的优势,提供了对不同用户标准统一的风险度评估方法,同时对需要预警的高危用户进行了决策性判断。

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