数据库用户异常行为检测方法技术

技术编号:24122243 阅读:136 留言:0更新日期:2020-05-13 03:26
本发明专利技术公开了数据库用户异常行为检测方法,包括:将数据库事务数据集中数据库事务记录的属性转化为纯数值型属性的元组;将数据库事务特征集合作为OPTICS算法的聚类数据进行聚类;根据聚类结果,将被标记为簇标签的记录标记为正常的用户行为,对于未能获得簇标签的记录作为离群元组集合记录的LOF值计算,对于LOF值小于设定值的记录将其标记为正常的用户行为;对于其他未被标记的记录输入至预先训练完成的集成学习分类模型进行分类获得分类结果;所有数据库事务特征都标记完成获得最终确定用户行为模式库;利用用户行为模式库匹配数据库事务数据完成用户异常行为检测。本发明专利技术能够明显提高入侵检测能力降低误报率,提高数据库用户异常行为检测效率。

【技术实现步骤摘要】
数据库用户异常行为检测方法
本专利技术属于网络信息安全
,具体涉及数据库用户异常行为检测方法。
技术介绍
在网络信息安全体系中,数据库的安全保护一直被人们所关注,数据库威胁主要分为外部攻击与内部攻击。外部攻击由外部未经授权的用户,利用系统漏洞进行非法的数据库访问,尽管传统的数据库安全服务能够提供一定的防御措施,有效抵御外部攻击,但是其却不易应对来自内部人员滥用权限造成的安全问题,此类攻击则被称为内部攻击,由于内部人员完全了解系统安全设置,甚至对一些数据拥有访问权限,此类数据库事务的访问不容易被发现,从而对数据造成潜在威胁,因此对于防范内部攻击目前变得尤为重要。出于对现有的安全措施不足,并防止此类攻击的发生,因此有必要设计一种可以有效监测数据库非法入侵的检测系统(DatabaseIntrusionDetectionSystem,DIDS),以用来保护数据库信息安全。有关DIDS系统,Elaziz等人提出了一种通过增强顺序数据挖掘数据库入侵的监测模型,通过对用户的正常历史记录完成挖掘,利用机器学习模型进行检测,从而实现异常记录的挖掘检测。Yi等人提出了一种根据相关系统数据提取行为特征完成的入侵检测方案。张夏提出了一种支持向量机的分类方法完成网络入侵检测的方案。但目前而言,多数的此类系统对于入侵检测能力提升的同时,误报率也在提升,会对正常的用户产生一定的干扰。
技术实现思路
本专利技术解决目前数据库用户异常行为检测类系统对于入侵检测能力提升的同时,误报率也在提升,会对正常的用户产生一定的干扰的技术问题。为实现上述技术目的,本专利技术采用了以下技术方案:数据库用户异常行为检测方法,其特征在于,包括:本专利技术提供了一种数据库用户异常行为检测方法,包括以下步骤:将数据库事务数据集中数据库事务记录的属性转化为纯数值型属性的元组,得到数值化后的数据库事务特征集合;将得到的数据库事务特征集合作为OPTICS算法的聚类数据进行聚类;根据聚类结果,将被标记为簇标签的记录标记为正常的用户行为,对于未能获得簇标签的记录作为离群元组集合记录的LOF值计算,对于LOF值小于设定值的记录将其标记为正常的用户行为;对于其他未被标记的记录输入至预先训练完成的集成学习分类模型进行分类获得分类结果;所有数据库事务特征都标记完成获得最终确定用户行为模式库;利用用户行为模式库匹配数据库事务数据完成用户异常行为检测。进一步地,所述数据库事务记录的属性包括SQL语句内的信息、事务发生的时间和/或事务的请求源。进一步地,对所述元组中的元素进行归一化,方法为:统计所有元组各个属性的上界与下界,将每个属性按照所处上下界的比例,折算成[0,1]之间的数值。进一步地,OPTICS算法的聚类数据进行聚类的具体方法如下:步骤1:输入数据库事务特征集合D,对于数值型属性,原样保留,对于非数值型、离散型属性,使用数值映射表将其映射为等距数值,获得数据集合U;将数据集合U分为两组数据集合U1与U2;步骤2:将数据集合U1与U2分别进行归一化处理,得到数据U’与U”;定义OPTICS算法中的领域半径r及最小个数MinPts参数;步骤3:定义两个有序集合:集合R1和排序集合O;步骤4:从数据集合U’任意取出不在结果集合R1中且未标记已处理的元组p,先将其标记为已处理状态;步骤5:利用欧式距离计算公式计算该元组与其他元组的欧式距离,并获得以元祖p为中心,ε为半径的其他元组集合,若该集合中所含数量大于等于MinPts时,则将点p列入结果集合R1中,并将其邻域集合列入排序集合,对排序集合O中元组计算他们的可达距离,并进行升序排序,然后从中取出序列首个元组,重复步骤f。若排序集合O已空,则重复步骤4;若数据集合U’中已无未处理的元组则OPTICS算法结束,输出有序的结果集合R1,集合包含每一个元组的最小可达距离d;获得数据集合U’中在不包含在结果集合R1的元组构成的离群元组集合F,对数据集合U”进行与步骤e相同的OPTICS聚类操作,获得结果集合R1’与离群元组组成的离群元组集合F’。再进一步地,对于离群元组集合F内各个元组使用LOF计算公式计算其LOF值,若其LOF值<1,则将其移除集合F,并列入稠密点集合R2,最终将以稠密点集合R2、离群元组集合F作为输出。再进一步地,对于离群元组集合F,继续交由集成学习模块,集成学习模块采用Bagging、Boosting、Stacking作为复合模型,其中Bagging与Boosting均采用多层感知器MLP作为个体分类器,Stacking的基学习器使用MLP、k-NN和DT,元学习器使用NB进行组合,以结果集合R1’与离离群元组集合F’作为训练集,其中R1’表示为正常行为记录元组、F’为异常行为元组,训练三个复合模型;将离群元组集合F作为输入,分别进行Bagging、Boosting、Stacking复合模型进行分类,分别给出分类结论Ba、Bo、St;若离群元组集合F中元组被Ba、Bo、St中任意结论标识为正常行为记录,则该元组即为正常行为,列入正常行为集合R3中;否则为异常行为,列入异常行为集合F1中。再进一步地,获得用户行为模式库包括:正常用户行为表GHT和异常行为表MHT,其中集合R1、稠密点集合R2、正常行为集合R3均留样存放至正常行为表GHT中,对于异常行为集合F1中元组列入异常行为表MHT中。有益技术效果:本方法采用无监督学习与有监督学习相结合,实现无需提供先验样本的方式进行数据库异常行为的监测方法。在无监督学习中,采用OPTICS聚类算法给出基于聚类的行为结论,然后再使用LOF计算公式对于非簇中元素进行进一步确认非稠密的检测,该方法解决了单一使用LOF计算的计算量过大的问题,提高检测效率。其次在OPTICS算法给出的聚类结论,作为有监督学习过程,即集成学习中所需要的训练集合,使用Bagging、Boosting、Stacking复合模型提升经典分类器的分类效率。经过OPTICS聚类、LOF计算、3种集成学习复合模型的分类检测,尽可能挖掘原始数据集中的“正常用户行为”,以用来降低系统的误报率,避免对用户正常的使用带来影响。对已经检测出的正常行为与异常行为,将其特征进行留样,可对未来产生的新的用户行为快速匹配做出响应。因此本专利技术能够明显提升入侵检测能力,以及降低误报率,提高数据库用户异常行为检测的效率和精度。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术具体实施例提供的方法整体流程图;图2为本专利技术具体实施例模拟器生成的一组二维数据集的分布情况具体实施方式为使本专利技术实施例本文档来自技高网...

【技术保护点】
1.数据库用户异常行为检测方法,其特征在于,包括:/n将数据库事务数据集中数据库事务记录的属性转化为纯数值型属性的元组,得到数值化后的数据库事务特征集合;/n将得到的数据库事务特征集合作为OPTICS算法的聚类数据进行聚类;根据聚类结果,将被标记为簇标签的记录标记为正常的用户行为,对于未能获得簇标签的记录作为离群元组集合记录的LOF值计算,对于LOF值小于设定值的记录将其标记为正常的用户行为;/n对于其他未被标记的记录输入至预先训练完成的集成学习分类模型进行分类获得分类结果;/n所有数据库事务特征都标记完成获得最终确定用户行为模式库;/n利用用户行为模式库匹配数据库事务数据完成用户异常行为检测。/n

【技术特征摘要】
1.数据库用户异常行为检测方法,其特征在于,包括:
将数据库事务数据集中数据库事务记录的属性转化为纯数值型属性的元组,得到数值化后的数据库事务特征集合;
将得到的数据库事务特征集合作为OPTICS算法的聚类数据进行聚类;根据聚类结果,将被标记为簇标签的记录标记为正常的用户行为,对于未能获得簇标签的记录作为离群元组集合记录的LOF值计算,对于LOF值小于设定值的记录将其标记为正常的用户行为;
对于其他未被标记的记录输入至预先训练完成的集成学习分类模型进行分类获得分类结果;
所有数据库事务特征都标记完成获得最终确定用户行为模式库;
利用用户行为模式库匹配数据库事务数据完成用户异常行为检测。


2.根据权利要求1所述的数据库用户异常行为检测方法,其特征在于,所述数据库事务记录的属性包括SQL语句内的信息、事务发生的时间和/或事务的请求源。


3.根据权利要求1所述的数据库用户异常行为检测方法,其特征在于,对所述元组中的元素进行归一化,方法为:统计所有元组各个属性的上界与下界,将每个属性按照所处上下界的比例,折算成[0,1]之间的数值。


4.根据权利要求1所述的数据库用户异常行为检测方法,其特征在于,OPTICS算法的聚类数据进行聚类的具体方法如下:
步骤1:输入数据库事务特征集合D,对于数值型属性,原样保留,对于非数值型、离散型属性,使用数值映射表将其映射为等距数值,获得数据集合U;将数据集合U分为两组数据集合U1与U2;
步骤2:将数据集合U1与U2分别进行归一化处理,得到数据U’与U”;定义OPTICS算法中的领域半径r及最小个数MinPts参数;
步骤3:定义两个有序集合:集合R1和排序集合O;
步骤4:从数据集合U’任意取出不在结果集合R1中且未标记已处理的元组p,先将其标记为已处理状态;
步骤5:利用欧式距离计算公式计算该元组与其他元组的欧式距离,并获得以元祖p为中心,ε为半径的其他元组集合,若该集合中所含数量大于等于MinPts时,则将点p列入结果...

【专利技术属性】
技术研发人员:高英健张志军李泽科陈泽文付广宇卢楷马铭志孟凡星李宏李龙云郝宁王洋高明慧徐剑刘昕禹王琛
申请(专利权)人:北京科东电力控制系统有限责任公司国网福建省电力有限公司东北大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1