本发明属于信息网络安全领域,具体讲涉及一种电力信息网络安全告警信息误报判定方法和系统。
背景技术
从国家信息安全形势来说,信息系统的基础性、全局性、全员性作用日益增强,信息安全作为信息化深入推进的重要保障,已成为国家安全战略的重要组成部分。信息化安全建设随着网络安全技术的发展不断进步,网络安全威胁也在逐年增加。安全告警信息作为网络安全的一个重要子课题,具有广阔的应用前景,较高的学术价值和理论研究意义。
当前不少学者在网络安全告警分析领域已经开展了许多研究工作,并取得了一定的成果。基于数据挖掘和机器学习的方法是一种比较精确的误告警去除方法,但是需要大量的人工干预,效率较低;基于关联分析的安全告警信息预测方法,需要考虑不同属性的相似度计算和需要确定多个阈值,算法不够灵活;基于统计的误报判定方法高效,但是存在突出的缺点,即漏报和误报。
技术实现要素:
为克服上述现有技术的不足,本发明提出一种电力信息网络安全告警信息误报判定方法和系统。
实现上述目的所采用的解决方案为:
一种电力信息网络安全告警信息误报判定方法,其改进之处在于:
获取告警信息,所述告警信息包括:当前告警信息和所述当前告警信息之前的历史告警信息;
将所述历史告警信息输入预先建立的电力信息网络安全告警预判模型,得到预测告警信息;
当所述预测告警信息和所述当前告警信息不一致时,则判定电力信息网络安全告警信息存在误报。
本发明提供的第一优选技术方案,其改进之处在于,所述电力信息网络安全告警预判模型的建立,包括:
根据电力信息网络,确定电力信息网络安全告警预判模型中状态空间数量和可能出现的观察值数量;
采集电力信息网络的历史告警信息,作为所述告警预判模型中的观察值序列;
基于所述状态空间数量、可能出现的观察值数量和观察值序列,采用隐马尔可夫模型进行训练和参数优化,建立电力信息网络安全告警预判模型。
本发明提供的第二优选技术方案,其改进之处在于,所述基于所述状态空间数量、可能出现的观察值数量和观察值序列,采用隐马尔可夫模型进行训练和参数优化,建立电力信息网络安全告警预判模型,包括:
基于隐马尔科夫模型,采用起始概率分布矢量表示电力信息网络初始的状态概率分布,采用状态转移矩阵表示电力信息网络状态转移的概率,采用观察值概率矩阵表示根据电力信息网络的状态得到告警信息的概率,并随机初始所述起始概率分布矢量和观察值概率矩阵,根据所述起始概率分布矢量计算状态转移矩阵;
根据所述状态空间数量和可能出现的观察值数量,计算观察到所述观察值序列的概率;
采用鲍姆韦尔奇算法以所述观察值序列的概率达到最大为目标优化调整概率分布矢量、状态转移矩阵和观察值概率矩阵;
基于所述概率分布矢量、状态转移矩阵和观察值概率矩阵构建电力信息网络安全告警预判模型。
本发明提供的第三优选技术方案,其改进之处在于,所述采集电力信息网络的历史告警信息,作为所述告警预判模型中的观察值序列,包括:
采集从初始时刻到当前前一时刻的电力信息网络的历史告警数据,建立观察值序列o={o1o2…ot},其中,o1,o2,…,ot为观察值,t表示当前前一时刻。
本发明提供的第四优选技术方案,其改进之处在于,所述将所述历史告警信息输入预先建立的电力信息网络安全告警预判模型,得到预测告警信息,包括:
设定预测观察值为ot+1,根据所述预测观察值ot+1,生成观察值序列ot+1={o1o2…ot+1};
根据预先建立的电力信息网络安全告警预判模型,结合多个不同的观察值序列ot+1,计算观察到各个观察值序列ot+1的概率;
取概率最大的观察值序列ot+1对应的观察值ot+1作为预测告警信息。
本发明提供的第五优选技术方案,其改进之处在于,所述根据所述状态空间数量和可能出现的观察值数量,计算观察到所述观察值序列的概率,包括:
根据所述状态空间数量和可能出现的观察值数量,基于隐马尔科夫模型,采用前向后向算法计算观察到所述观察值序列的概率。
一种电力信息网络安全告警信息误报判定系统,其改进之处在于,包括数据获取模块、预测模块和判断模块;
所述数据获取模块,用于获取告警信息,所述告警信息包括:当前告警信息和所述当前告警信息之前的历史告警信息;
所述预测模块,用于将所述历史告警信息输入预先建立的电力信息网络安全告警预判模型,得到预测告警信息;
所述判断模块,用于当所述预测告警信息和所述当前告警信息不一致时,则判定电力信息网络安全告警信息存在误报。
本发明提供的第六优选技术方案,其改进之处在于,还包括用于建立电力信息网络安全告警预判模型的建模模块,所述建模模块包括:数量单元、观察值序列单元和建模单元;
所述数量单元,用于根据电力信息网络,确定电力信息网络安全告警预判模型中状态空间数量和可能出现的观察值数量;
所述观察值序列单元,用于采集电力信息网络的历史告警信息,作为所述告警预判模型中的观察值序列;
所述建模单元,用于基于所述状态空间数量、可能出现的观察值数量和观察值序列,采用隐马尔可夫模型进行训练和参数优化,建立电力信息网络安全告警预判模型。
本发明提供的第七优选技术方案,其改进之处在于,所述建模单元包括初始化子单元、概率计算子单元、优化子单元和模型确定子单元;
所述初始化子单元,用于基于隐马尔科夫模型,采用起始概率分布矢量表示电力信息网络初始的状态概率分布,采用状态转移矩阵表示电力信息网络状态转移的概率,采用观察值概率矩阵表示根据电力信息网络的状态得到告警信息的概率,并随机初始所述起始概率分布矢量和观察值概率矩阵,根据所述起始概率分布矢量计算状态转移矩阵;
所述概率计算子单元,用于根据所述状态空间数量和可能出现的观察值数量,计算观察到所述观察值序列的概率;
所述优化子单元,用于采用鲍姆韦尔奇算法以所述观察值序列的概率达到最大为目标优化调整概率分布矢量、状态转移矩阵和观察值概率矩阵;
所述模型确定子单元,用于基于所述概率分布矢量、状态转移矩阵和观察值概率矩阵构建电力信息网络安全告警预判模型。
本发明提供的第八优选技术方案,其改进之处在于,所述预测模块包括观察值设定单元、观察值序列计算单元和告警信息预测单元;
所述观察值设定单元,用于设定下一时刻出现的预测观察值,并根据所述预测观察值,生成观察值序列;
所述观察值序列计算单元,用于根据预先建立的电力信息网络安全告警预判模型,结合多个不同的观察值序列,计算观察到各个观察值序列的概率;
所述告警信息预测单元,用于取概率最大的观察值序列对应的预测观察值作为预测告警信息。
与最接近的现有技术相比,本发明具有的优异效果如下:
本发明提供的电力信息网络安全告警信息误报判定方法和系统,将当前告警信息之前的历史告警信息输入电力信息网络安全告警预判模,得到预测告警信息,并对比预测告警信息和当前告警信息,当预测告警信息和当前告警信息不一致时,判定存在误报。相比现有技术,不需要人工干预,效率高,并且能够以较高的准确度判定网络中产生的误报安全告警信息,具有较高的判定效率,可提升安全告警的有用性、稳定性。
附图说明
图1为本发明提供的一种电力信息网络安全告警信息误报判定方法流程示意图;
图2为本发明提供的一个电力信息网络安全告警信息误报判定方法的实施例流程示意图;
图3为本发明提供的一种电力信息网络安全告警信息误报判定系统基本结构示意图;
图4为本发明提供的一种电力信息网络安全告警信息误报判定系统详细结构示意图。
具体实施方式
下面结合附图对本发明的具体实施方式做进一步的详细说明。
实施例1:
本发明提供一种电力信息网络安全告警信息误报判定方法流程示意图如图1所示,包括:
步骤1:获取告警信息,该告警信息包括:当前告警信息和当前告警信息之前的历史告警信息;
步骤2:将历史告警信息输入预先建立的电力信息网络安全告警预判模型,得到预测告警信息;
步骤3:当预测告警信息和当前告警信息不一致时,则判定电力信息网络安全告警信息存在误报。
具体的,电力信息网络安全告警信息误报判定方法包括:
步骤101:建立电力信息网络安全告警预判模型。
建模过程具体包括:
步骤101-1:根据电力信息网络,确定电力信息网络安全告警预判模型中状态空间数量和可能出现的观察值数量。本发明中,观察值即为观察到的告警信息。
步骤101-2:采集电力信息网络的历史告警信息,作为告警预判模型中的观察值序列。
步骤101-2具体包括:采集从初始时刻到当前前一时刻的电力信息网络历史告警数据,建立观察值序列o={o1o2…ot},其中,o1,o2,…,ot为观察值,t表示当前前一时刻。
步骤101-3:基于状态空间数量、可能出现的观察值数量和观察值序列,采用隐马尔可夫模型进行训练和参数优化,建立电力信息网络安全告警预判模型。
步骤101-3具体包括:
隐马尔科夫模型的初始化,即基于隐马尔科夫模型,采用起始概率分布矢量表示电力信息网络初始的状态概率分布,采用状态转移矩阵表示电力信息网络状态转移的概率,采用观察值概率矩阵表示根据电力信息网络的状态得到告警信息的概率,并随机初始起始概率分布矢量和观察值概率矩阵,根据起始概率分布矢量计算状态转移矩阵;
根据状态空间数量和可能出现的观察值数量,计算观察到观察值序列的概率;
采用鲍姆韦尔奇算法即baum-welch算法以观察值序列的概率达到最大为目标优化调整概率分布矢量、状态转移矩阵和观察值概率矩阵;
基于概率分布矢量、状态转移矩阵和观察值概率矩阵构建电力信息网络安全告警预判模型。
步骤101-3中,计算观察到观察值序列的概率可采用前向后向算法即forward-backward算法。
采用baum-welch算法优化调整概率分布矢量、状态转移矩阵和观察值概率矩阵的具体过程如下:
令隐马尔科夫模型为λ(n,m,ω,a,b),其中,n为状态空间数量,m为可能出现的观察值数量,n,m为固定的值;ω表示概率分布矢量,a表示状态转移矩阵,b表示观察值概率矩阵。
(1)计算t时刻马尔科夫链为θi状态的概率
其中,qt表示t时刻马尔科夫链的状态,p表示观察值序列为o,隐马尔科夫模型为λ,t时刻马尔科夫链的状态qt为θi的概率,采用维特比算法即viterbi算法计算得出;。
故
(2)计算优化的状态转移矩阵
采用下式计算
(3)计算优化的观察值概率矩阵
采用下式计算
ot=vk表示t时刻的观察值ot为vk。
(4)得到新的隐马尔科夫模型
(5)计算
(6)以观察到观察值序列o={o1o2…ot}概率最大的隐马尔可夫模型作为电力信息网络安全告警预判模型。
步骤102:将当前时刻前一时段的告警信息输入预先建立的电力信息网络安全告警预判模型,得到预测告警信息。
步骤102具体包括:
将从初始时刻到当前的前一时刻这一时段的告警信息o1o2…ot输入预先建立的电力信息网络安全告警预判模型。在模型中,设定当前时刻出现的观察值为ot+1,根据设定的多个观察值ot+1,生成多个不同的观察值序列ot+1={o1o2…ot+1}。基于步骤101得到的电力信息网络安全告警预判模型λ,计算p(ot+1|λ)即计算观察到观察值序列ot+1的概率。取概率最大的观察值序列ot+1对应的观察值ot+1作为预测告警信息。
步骤103:对电力信息网络安全告警信息进行误报判定,具体过程如下:
将预测告警信息与当前告警信息进行对比,如不同,则认为存在误报情况。
实施例2:
下面给出一个电力信息网络安全告警信息误报判定方法的实施例。如图2所示,包括:
步骤201,对数据进行预处理,并确定状态空间数量,生成观察值序列。
(201a)确定状态空间的数量;
(201b)确定可能出现的观察值数量;
(201c)对告警信息做数据预处理,获得观察值序列。
步骤202,利用观察值序列,对隐马尔科夫模型进行建模并训练,具体为:
(202a)统计每分钟内出现的告警,形成告警序列;
(202b)对告警序列建立马尔科夫模型;
(202c)对历史安全告警信息序列进行训练,生成隐马尔科夫模型。
步骤203,对安全告警信息进行预测,具体过程如下:
(203a)使用隐马尔科夫模型向下预测1条安全告警信息。
(203a1)对于确定的模型λ,已知当前时刻出现的观察值序列o={o1o2…od}。假定下一时刻出现的观察值为od+1,根据不同的假定观察值,生成不同的观察值序列od+1={o1o2…od+1};
(203a2)通过求取并比较得出最大的观察值概率p(od+1|λ),最大的p(od+1|λ)对应的观察值序列o中假定的下一时刻观察值od+1则认为是最有可能出现的观察值。
步骤204,对电力信息网络安全告警信息进行误报判定,具体过程如下:
将预测告警信息和实际告警信息进行对比,如不同则认为存在误判。
实施例3:
本发明还提供了一种电力信息网络安全告警信息误报判定系统,该系统基本结构如图3所示,包括数据获取模块、预测模块和判断模块;
其中,数据获取模块,用于获取告警信息,告警信息包括:当前告警信息和当前告警信息之前的历史告警信息;
预测模块,用于将历史告警信息输入预先建立的电力信息网络安全告警预判模型,得到预测告警信息;
判断模块,用于当预测告警信息和所述当前告警信息不一致时,则判定电力信息网络安全告警信息存在误报。
电力信息网络安全告警信息误报判定系统的详细结构如图4所示,该系统还包括用于建立电力信息网络安全告警预判模型的建模模块;建模模块包括:数量单元、观察值序列单元和建模单元;
数量单元,用于根据电力信息网络,确定电力信息网络安全告警预判模型中状态空间数量和可能出现的观察值数量;
观察值序列单元,用于采集电力信息网络的历史告警信息,作为告警预判模型中的观察值序列;
建模单元,用于基于状态空间数量、可能出现的观察值数量和观察值序列,采用隐马尔可夫模型进行训练和参数优化,建立电力信息网络安全告警预判模型。
其中,建模单元包括初始化子单元、概率计算子单元、优化子单元和模型确定子单元;
初始化子单元,用于基于隐马尔科夫模型,采用起始概率分布矢量表示电力信息网络初始的状态概率分布,采用状态转移矩阵表示电力信息网络状态转移的概率,采用观察值概率矩阵表示根据电力信息网络的状态得到告警信息的概率,并随机初始化隐马尔科夫模型中的起始概率分布矢量和观察值概率矩阵,根据起始概率分布矢量计算状态转移矩阵;
概率计算子单元,用于根据状态空间数量和可能出现的观察值数量,计算观察到观察值序列的概率;
优化子单元,用于采用鲍姆韦尔奇算法以观察值序列的概率达到最大为目标优化调整概率分布矢量、状态转移矩阵和观察值概率矩阵;
模型确定子单元,用于基于概率分布矢量、状态转移矩阵和观察值概率矩阵构建电力信息网络安全告警预判模型。
其中,观察值序列单元采集电力信息网络的历史告警信息,作为告警预判模型中的观察值序列,包括:
采集从初始时刻到当前前一时刻的电力信息网络的历史告警数据,建立观察值序列o={o1o2…ot},其中,o1,o2,…,ot为观察值,t表示当前前一时刻。
其中,预测模块包括观察值设定单元、观察值序列计算单元和告警信息预测单元;
观察值设定单元,用于设定下一时刻出现的预测观察值,并根据预测观察值,生成观察值序列;
观察值序列计算单元,用于根据预先建立的电力信息网络安全告警预判模型,结合多个不同的观察值序列,计算观察到各个观察值序列的概率;
告警信息预测单元,用于取概率最大的观察值序列对应的预测观察值作为预测告警信息。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用于说明本申请的技术方案而非对其保护范围的限制,尽管参照上述实施例对本申请进行了详细的说明,所属领域的普通技术人员应当理解:本领域技术人员阅读本申请后依然可对申请的具体实施方式进行种种变更、修改或者等同替换,但这些变更、修改或者等同替换,均在申请待批的权利要求保护范围之内。