基于距离度量的数据库异常访问检测方法、系统及设备

文档序号:1904846 发布日期:2021-11-30 浏览:6次 >En<

阅读说明:本技术 基于距离度量的数据库异常访问检测方法、系统及设备 (Database abnormal access detection method, system and equipment based on distance measurement ) 是由 宋美艳 陈锋 沈正华 郑卫东 李晓燕 周波 贾泽冰 刘畅 李亚都 于 2021-11-02 设计创作,主要内容包括:本发明提供了基于距离度量的数据库异常访问检测方法、系统及设备,通过基于距离的KNN算法对低维用户访问向量进行训练,得到异常检测模型,并构建异常访问响应器,本方法通过基于距离的KNN算法构建异常检测模型,可以实时检测用户的数据库操作行为是否正常,有效解决了使用数据库审计工具无法实时检测正在进行的数据库操作是否正常;异常访问响应器事先制订一些对数据库异常操作的响应策略,从而实现对异常检测模型预测的用户异常操作做出响应,并记录该用户异常操作的相关信息,以此实现对异常操作的主动防御效果。基于以上特点,本方法实现对用户异常操作数据库的实时监控和主动防御的效果。(The invention provides a distance measurement-based database abnormal access detection method, a distance measurement-based database abnormal access detection system and distance measurement-based database abnormal access detection equipment, wherein a distance-based KNN algorithm is used for training a low-dimensional user access vector to obtain an abnormal detection model, and an abnormal access responder is constructed; the abnormal access responder prepares response strategies to abnormal operations of the database in advance, thereby realizing the response to the abnormal operations of the user predicted by the abnormal detection model and recording the related information of the abnormal operations of the user, thereby realizing the active defense effect to the abnormal operations. Based on the characteristics, the method realizes the effects of real-time monitoring and active defense on the abnormal operation database of the user.)

基于距离度量的数据库异常访问检测方法、系统及设备

技术领域

本发明属于DCS传输数据的处理,主要涉及数据库异常访问检测领域,具体为基于距离度量的数据库异常访问检测方法、系统及设备。

背景技术

在分散控制系统(DCS)上位机部分,各上位机子系统经常对数据库进行访问、查寻等操作。另外,对于数据库管理人员,也会经常对数据库进行修改及维护。对于数据库的恶意访问及操作,一般分为外部恶意访问和内部恶意访问。而对于数据库的外部恶意访问往往有较好的防御策略,而对于拥有权限的内部人员的恶意访问或者误操作往往很难防范。在电数字数据处理中,现有技术对于内部人员的恶意访问或误操作一般采用数据库审计工具实现,数据库审计工具在后台记录所有的数据库访问和操作记录,包括操作的IP、用户、操作语句、时间、操作结果等;然后系统安全员通过分析数据库访问和操作记录来检测内部用户的操作行为。由于数据库审计工具是一种事后追查手段,没有办法实时阻止正在进行的数据库异常操作,因此,该方法无法起到主动防御和实时防御的作用。

发明内容

针对现有技术中数据库审计工具存在没有办法实时阻止内部用户正在进行的数据库异常操作的问题,本发明提供基于距离度量的数据库异常访问检测方法、系统及设备,通过LDA算法构建低维的用户访问向量,并将用户访问向量输入到基于距离的KNN模型中进行训练,得到异常检测模型,该异常检测模型用于检测用户对数据库的所有操作是否正常,同时构建异常访问响应策略,从而对内部用户的异常访问进行实时监控和主动防御效果。

本发明是通过以下技术方案来实现:

一种基于距离度量的数据库异常访问检测方法,包括如下步骤:

提取数据库访问信息;

所提取的数据库访问信息进入模型训练阶段通过数据降维的方式得到低维的用户访问向量;

使用基于距离的算法对低维的用户访问向量进行训练,得到异常检测模型;

模型训练阶段得到的训练结果作为模型测试阶段的异常检测模型,模型测试阶段通过数据降维的方式得到低维的用户访问向量,将降维后的用户访问向量输入到异常检测模型中,得到检测结果,实现对数据库异常访问的实时监控和主动防御。

优选的,模型训练阶段和模型测试阶段均通过采用LDA算法实现数据降维,构建低维的用户访问向量,以及采用KNN模型作为异常检测模型实现对数据库异常访问的检测。

进一步的,KNN模型的距离度量采用欧式距离,具体表达式为:

其中x表示样本点,y表示样本点对应的分类。

进一步的,采用KNN模型可通过计算结果调整K值对正常访问与异常访问进行不同程度的划分。

进一步的,模型训练阶段的具体步骤包括如下:

对提取的数据库历史日志进行数据预处理操作,得到文本数据;

对文本数据提取用户操作特征,基于用户属性特征和用户操作特征构建初始的数据库用户访问特征画像,其中初始的数据库用户访问特征画像为高维的矩阵;

通过LDA算法对初始的数据库用户访问特征画像的高维矩阵进行降维操作,得到低维的用户访问向量;

将低维的用户访问向量作为KNN模型的输入,KNN模型经过计算得出模型中待训练的参数,不断调整给定的K值,得到最佳的分类结果,即为模型训练结果。

更进一步的,数据预处理操作为对系统日志进行去除操作得到文本数据。

进一步的,模型测试阶段具体步骤包括如下:

对模型训练阶段的用户数据进行数据预处理,提取有效访问数据语句;

对有效访问数据语句基于用户属性特征和用户操作特征构建数据库用户访问特征画像,得到一个高维的数据库用户访问特征画像;

通过LDA算法对高维的数据库用户访问特征画像进行降维操作,得到低维的用户访问向量;

将低维的用户访问向量作为KNN模型的输入,KNN模型经过计算得出模型中待训练的参数,不断调整给定的K值,得到最佳的检测结果,并将正常访问检测结果与异常访问检测结果进行区分;

将异常访问检测结果输入到异常访问响应器中,输出不同的异常访问级别,并对该条访问执行不同的操作。

更进一步的,数据预处理为删除数据库访问的无效语句,提取核心的有效访问语句。

一种基于距离度量的数据库异常访问检测系统,包括

获取模块,用于提取数据库访问信息;

第一处理模块,用于所提取的数据库访问信息进入模型训练阶段通过数据降维的方式得到低维的用户访问向量;

第二处理模块,用于使用基于距离的算法对低维的用户访问向量进行训练,得到异常检测模型;

第三处理模块,用于模型训练阶段得到的训练结果作为模型测试阶段的异常检测模型,模型测试阶段通过数据降维的方式得到低维的用户访问向量,将降维后的用户访问向量输入到异常检测模型中,得到检测结果,实现对数据库异常访问的实时监控和主动防御。

一种基于距离度量的数据库异常访问检测设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述所述的基于距离度量的数据库异常访问检测方法的步骤。

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

本发明提供了一种基于距离度量的数据库异常访问检测方法,通过基于距离的KNN算法对低维用户访问向量进行训练,得到异常检测模型,并构建异常访问响应器,本方法通过基于距离的KNN算法构建异常检测模型,可以实时检测用户的数据库操作行为是否正常,有效解决了使用数据库审计工具无法实时检测正在进行的数据库操作是否正常;异常访问响应器事先制订一些对数据库异常操作的响应策略,从而实现对异常检测模型预测的用户异常操作做出响应,并记录该用户异常操作的相关信息,以此实现对异常操作的主动防御效果。基于以上特点,本方法实现对用户异常操作数据库的实时监控和主动防御的效果。

附图说明

图1为本发明中基于距离度量的数据库异常访问检测方法的步骤流程图;

图2为本发明中基于距离度量的数据库异常访问检测系统的结构原理图。

具体实施方式

下面结合具体的实施例对本发明做进一步的详细说明,所述是对本发明的解释而不是限定。

本发明提供一种基于距离度量的数据库异常访问检测方法,如图1所示,包括如下步骤:

提取数据库访问信息;

所提取的数据库访问信息进入模型训练阶段通过数据降维的方式得到低维的用户访问向量;

使用基于距离的算法对低维的用户访问向量进行训练,得到异常检测模型;

模型训练阶段得到的训练结果作为模型测试阶段的异常检测模型,模型测试阶段通过数据降维的方式得到低维的用户访问向量,将降维后的用户访问向量输入到异常检测模型中,得到检测结果,实现对数据库异常访问的实时监控和主动防御。

模型训练阶段和模型测试阶段均通过采用LDA算法实现数据降维,构建低维的用户访问向量,以及采用KNN模型作为异常检测模型实现对数据库异常访问的检测。模型训练阶段与模型测试阶段通过基于用户属性特征和用户操作特征得到的数据库用户访问特征画像均为高维度矩阵。

模型训练阶段与模型测试阶段通过LDA算法所得到用户访问向量均为低维度向量。

根据图1所示,本发明中模型训练阶段的具体步骤包括如下:

对提取的数据库历史日志进行数据预处理操作,得到文本数据;

对文本数据提取用户操作特征,基于用户属性特征和用户操作特征构建初始的数据库用户访问特征画像,其中初始的数据库用户访问特征画像为高维的矩阵;

通过LDA算法对初始的数据库用户访问特征画像的高维矩阵进行降维操作,得到低维的用户访问向量;

将低维的用户访问向量作为KNN模型的输入,KNN模型经过计算得出模型中待训练的参数,不断调整给定的K值,得到模型的最佳分类结果。

其中,数据预处理操作为对系统日志进行去除操作得到文本数据。

根据图1所示,本发明中模型测试阶段具体步骤包括如下:

对模型训练阶段的用户数据进行数据预处理,提取有效访问数据语句;

对有效访问数据语句基于用户属性特征和用户操作特征构建数据库用户访问特征画像,得到一个高维的数据库用户访问特征画像;

通过LDA算法对高维的数据库用户访问特征画像进行降维操作,得到低维的用户访问向量;

将低维的用户访问向量作为KNN模型的输入,KNN模型经过计算得出模型中待训练的参数,不断调整给定的K值,得到最佳的检测结果,并将正常访问检测结果与异常访问检测结果进行区分;

将异常访问检测结果输入到异常访问响应器中,输出不同的异常访问级别,并对该条访问执行不同的操作。

其中,数据预处理为删除数据库访问的无效语句,提取核心的有效访问语句。

本发明中基于距离度量的数据库异常访问检测方法中,模型训练阶段和模型测试阶段均采用采用LDA算法实现数据降维,LDA算法具体方式如下:

设定数据集D={(x1,y1),(x2,y2),...,(xm,ym)},其中任意的样本xi都是n维向量;yi为样本的类别,yi∈{0,1};

定义Nj(j=0,1)为第j类样本的个数,Xj(j=0,1)为第j类样本的集合,而μj(j=0,1)为第j类样本的均值向量,定义Σj(j=0,1)为第j类样本的协方差矩阵。

因此,uj的表达式为:

Σj的表达式为:

LDA算法是将同一种类别数据的投影点可能的接近,而不同类别的数据的类别中心之间的距离尽可能的大,因此将同类数据投影到一条直线上即可。

设定投影直线是向量w,则对任意一个样本xi,它在直线w的投影为wTxi,wT代表向量w的转置,设定两个类别的中心点分布为μ0,μ1;在直线w的投影为wTμ0和wTμ1

由于LDA算法需要让不同类别的数据的类别中心之间的距离尽可能的大,也就是要最大化;同时同一种类别数据的投影点尽可能的接近,也就是要同类样本投影点的协方差wTΣ0w和wTΣ1w尽可能的小,即最小化wTΣ0w+wTΣ1w。

综上所述,优化目标为:

J(W)表示目标函数;当J(W)取得最大值时,此时获得的结果即为经过LDA降维后的用户访问特征矩阵。

本发明中KNN模型是一种基于距离的机器学习方法,其原理可理解为多数表决法,即训练集里与预测样本特征最近的K个样本为数据集里最多类别数的类别,在本发明中为与预测样本最近的K个样本数据为正常访问数据,而远离K值的即为异常数据库访问。

本发明的KNN模型的距离度量采用欧式距离,具体表达式为:

其中x表示样本点,y表示样本点对应的分类。

当定义好距离与K值后,对于任意一个新的样本,将其分类为与该样本距离最近的k个样本中类别最多的那个类别。

以二维点矩阵二分类问题为例;当样本为S=(x1,y1),(x2,y2),...,(xN,yN);其中,xi为二维平面上的点,yi为样本xi二维平面上的点所对应的分类。对于一个新的样本x,样本点对应的分类y的计算公式如下:

其中,cj表示样本的类别;Nk(x)表示距离样本x最近的k个样本的集合,f为关于yi的指示函数;该指示函数的数学表达式如下:

实施例

当某用户对数据库执行删除整个数据表操作时,“delete from table_name”;将低维的用户访问向量输入到已训练好的异常检测模型中,模型会输出一个预测的结果--假设为“异常操作”。将该预测结果输入到异常访问响应器中,异常访问器输出“拒绝删表”指令,同时拒绝该用户对数据表的删除操作。

下述为本发明的装置实施例,可以用于执行本发明方法实施例。

根据图2所示,本发明实施例中提供一种基于距离度量的数据库异常访问检测系统,用于实现上述所述的基于距离度量的数据库异常访问检测方法,数据库异常访问检测系统包括:

获取模块,用于提取数据库访问信息;

第一处理模块,用于所提取的数据库访问信息进入模型训练阶段通过数据降维的方式得到低维的用户访问向量;

第二处理模块,用于使用基于距离的算法对低维的用户访问向量进行训练,得到异常检测模型;

第三处理模块,用于模型训练阶段得到的训练结果作为模型测试阶段的异常检测模型,模型测试阶段通过数据降维的方式得到低维的用户访问向量,将降维后的用户访问向量输入到异常检测模型中,得到检测结果,实现对数据库异常访问的实时监控和主动防御。

其中,第一处理模块、第二处理模块和第三处理模块中均包括异常检测模块和人机交互模块;

异常检测模块,用于对数据库信息进行数据访问检测;

人机交互模块,用于显示异常访问检测数据。

本发明再一实施例中,一种提供了基于距离度量的数据库异常访问检测设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述的基于距离度量的数据库异常访问检测方法。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。

最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种离线式入侵检测装置及方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类