下一步攻击事件预测方法及相关设备

文档序号:25991547发布日期:2021-07-23 21:03阅读:119来源:国知局
下一步攻击事件预测方法及相关设备
本发明涉及计算机
技术领域
,特别是指一种下一步攻击事件预测方法及相关设备。
背景技术
:如今存在于互联网上的攻击,绝大部分都属于多步攻击。多步攻击事件的关联分析从冗杂低级的告警信息中提炼出了高级的安全事件,一个完整的多步攻击,步骤之间具有关联性,上一个步骤是下一个步骤发生的原因。一般地,对多步攻击步骤进行划分,可大致分为以下五个阶段:侦查阶段、漏洞扫描与分析阶段、获取权限阶段、保持权限实施攻击、消除痕迹阶段。在多步攻击事件的最初阶段,攻击者往往进行的是危害性较小的攻击行为,在多步攻击事件阶段的后期,攻击者往往进行的是危害性较大的攻击行为。现在常用的传统的入侵检测系统和防火墙系统只能向安全管理员报告一个单独的攻击行为,且缺少主动防御功能,这使得网络上的安全数据庞大冗杂,难以直接解读。由于存在大量的冗余信息且安全数据缺乏统一的标准,容易造成误报率较高的局限性,干扰了对真实攻击事件的有效识别。因此,近年来有关多源异构安全数据融合的研究成为热点,对于复杂的网络攻击来说,建立一个网络安全事件分析模型,对于管理和分析多源异构的网络安全数据至关重要,通过多源异构安全数据的分析和处理,可以反映出攻击事件的发生情况,从而对网络攻击进行预防,实现对整个网络安全态势的有效监控。技术实现要素:有鉴于此,本说明书一个或多个实施例的目的在于提出一种下一步攻击事件预测方法及相关设备,以解决现有技术中面临的问题。基于上述目的,本说明书一个或多个实施例提供了一种下一步攻击事件预测方法,其步骤如下:分析电网告警日志生成攻击链,其中,使用电网内主机ip节点关联构建所述攻击链;对所述攻击链进行预处理,包括对所述攻击链进行过滤去重和特征提取,其中,通过所述特征提取操作获得所述攻击链的节点特征和事件特征;将提取到的所述节点特征和所述事件特征输入预测模型,由预测模型输出预测结果。可选的,预测模型通过随机森林算法训练得到,从待训练告警日志中分析生成待训练攻击链并进行所述预处理,对所述待训练攻击链进行分层划分,将所述待训练攻击链分为训练集和测试集;将提取的所述训练集的所述节点特征和所述事件特征输入所述随机森林算法进行训练,得到训练模型,将提取的所述测试集的所述节点特征和所述时间特征输入所述训练模型,计算所述训练模型的输出结果准确率,所述准确率达到预设阈值,所述训练模型即为所述预测模型;否则使用所述训练集的所述节点特征和所述事件特征对所述训练模型继续进行训练,调整优化所述训练模型,直至向优化后的所述训练模型输入所述测试集的所述节点特征和所述时间特征时,所述输出结果准确率达到所述预设阈值。基于同一发明构思,本说明书一个或多个实施例还提供了一种下一步攻击事件预测装置,包括:攻击链生成模块,分析电网告警日志生成所述攻击链,其中,使用电网内主机ip节点关联构建所述攻击链;特征提取模块,对所述攻击链进行预处理,包括对所述攻击链进行过滤去重和特征提取,其中,通过所述特征提取操作得到所述攻击链的节点特征和事件特征;预测模块,将提取到的所述节点特征和所述事件特征输入预测模型,观察预测模型输出的预测结果。基于同一发明构思,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述的下一步攻击事件预测方法。基于同一发明构思,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令在被计算机执行时,使所述计算机实现上述下一步攻击事件预测方法。从上面所述可以看出,本说明书一个或多个实施例提供的下一步攻击事件预测方法及相关设备,能够针对电网中发生的多步攻击事件,提出了针对多步攻击事件的下一步攻击事件预测模型,对电网中有可能发生的重大攻击事件进行预测,电网技术人员可以针对模型输出的预测结果做好防范措施,从而防止电网系统遭受重大损失。本说明书一个或多个实施例提供的下一步攻击事件预测方法及相关设备以发生在电网的告警日志形成的攻击链为源数据,经过数据预处理,特征提取,模型选取与优化等流程,最终形成了泛化性能较好的下一步攻击事件预测模型,将从攻击链中提取的节点特征和时间特征输入预测模型,预测模型处理特征后输出预测结果。同时在攻击链的预处理过程中,针对电网数攻击链不均衡的问题提出了分层抽样的方法,在特征提取的过程中,改进了针对告警内容进行文本特征提取的方法。实验表明,该预测模型的精确率和召回率已经分别达到84.90%和84.91%,达到了有效预测可能发生的攻击事件的效果。附图说明为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本说明书一个或多个实施例提供的下一步攻击事件预测方法步骤图;图2为本说明书一个或多个实施例提供的攻击链生成流程图;图3为本说明书一个或多个实施例提供的预测模型训练步骤图;图4为本说明书一个或多个实施例提供的攻击链示意图;图5为本说明书一个或多个实施例提供的下一步攻击事件预测装置的结构图;图6为本说明书一个或多个实施例提供的能够实现下一步攻击事件预测方法的电子设备示意图。具体实施方式为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。如
背景技术
部分所述,传统的入侵检测系统和防火墙系统只能向安全管理员报告一个单独的攻击行为,且缺少主动防御功能,这使得网络上的安全数据庞大冗杂,难以直接解读。由于存在大量的冗余信息且安全数据缺乏统一的标准,容易造成误报率较高的局限性,干扰了对真实攻击事件的有效识别。对多步攻击事件的预测达不到很好的效果。为了解决现有技术面临的问题,本说明书一个或多个实施例提供了一种下一步攻击事件预测方法及相关设备。通过对电网告警日志分析的分析结果生成攻击链,对攻击链去重后进行特征提取,获得攻击链的节点特征和事件特征,将两种特征输入优化好的预测模型进行预测,并根据模型得出的预测结果进行分析判断。其中,预测模型为使用从待训练的告警日志中的攻击链提取的特征采用随机森林算法训练得到的,这种方法能够较好的预测多步攻击事件中的下一步攻击事件,为技术人员提供帮助。参考图1,本说明书一个或多个实施例提供的下一步攻击事件预测方法步骤如下:步骤s101、分析电网告警日志生成攻击链,其中,使用电网内主机ip节点关联构建所述攻击链。本步骤中需要利用告警日志中的数据建立攻击链,其步骤如图2所示:步骤s201、根据告警日志的数据利用主机的ip节点关联构建攻击树。步骤s202、聚合所述攻击树得到初始攻击链。步骤s203、对所述初始攻击链进行剪枝和降噪得到所述攻击链。步骤s102、对所述攻击链进行预处理,包括对所述攻击链进行过滤去重和特征提取,其中,通过所述特征提取操作获得所述攻击链的节点特征和事件特征。本步骤中,对生成的攻击链需要进行去重操作,首先循环遍历得到的每一条攻击链并记录每一条攻击链中第一个告警事件的发生时间,将其与对应的攻击链的生产窗口的开始时间进行比较;如果二者不相等,将该条攻击链剔除,否则保留攻击链等待进行后续的操作。本步骤中,提取攻击链的节点特征时,首先将其抽象得到适用于机器学习的向量集,对得到的向量集进行特征提取以获得节点特征。提取节点特征时采用的方法为使用文本特征提取函数将向量集中的攻击链事件类型数据文本抽象为独热编码,对得到的编码进行处理得到8维节点特征,包括:访问本机的ip个数;访问本机的可疑ip个数;本机是可疑源ip,若本机为可疑源ip为1,否则为0;本机是受害ip,是为1,不是为0;本机同时是可疑源ip和受害ip,是为1,不是为0;访问其他ip的个数;访问受害ip的个数;与目的ip之间的事件总数。其中,文本特征提取函数只考虑每个单词出现的频率,然后构成一个特征矩阵,每一行表示一个训练文本的词频统计结果;独热编码,又称一位有效编码,是使用n位状态寄存器来对n个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候,其中只有一位有效。步骤s103、将提取到的所述节点特征和所述事件特征输入预测模型,由预测模型输出预测结果。作为一个可选的实施例,参考图3,进行下一步攻击事件预测的预测模型训练方法如下:步骤s301、从电网安全设备中获取告警日志,对电网告警日志进行分析获得包括攻击链、关键设备、重点事件在内的安全数据,对其中的攻击链进行预处理后将其划分为训练集和测试集。本步骤中,划分训练集和测试集时,首先按照攻击链的标签所展示的时间对其进行排序,然后对每天的攻击链按照时间顺序进行排序;然后根据排序结果,提取前80%作为所述训练集,剩余20%的作为所述测试集。步骤s302、对训练集中的攻击链进行特征提取,将获得的节点特征和包括关键设备、重点事件在内的事件特征输入随机森林算法进行训练得到模型,并对训练结果进行优化得到下一步攻击事件预测模型。步骤s303、对测试集中的攻击链进行特征提取,将获得的节点特征和时间特征输入得到的下一步攻击事件预测模型,观察结果是否符合预设阈值。本步骤中,若预测模型的输出结果没有达到预设阈值,需要使用训练集的节点特征和时间特征继续对预测模型进行调整优化,直到向优化过的预测模型输入测试集的节点特征和事件特征得出的预测结果达到预设阈值,此时,得到可以进行下一步攻击事件预测的预测模型。作为一个可选的实施例,以一条攻击链来说明下一步攻击事件预测方法的执行过程,采用了一条来自电网中的攻击链,为保护隐私对ip地址进行了匿名化处理。在这条攻击链中,主机*.*.20.16对主机*.*.154.2发起了主机扫描事件,主机*.*.154.2对主机*.*.20.17发起了非正常数据访问事件。该条攻击链如图4所示。在上述攻击链中发生了两次告警事件,并由电网系统检测得到:访问该条攻击链的ip个数为23;访问本机的可疑ip个数为64;本条攻击链中存在受害ip和可疑ip;本条攻击链中主机ip访问其他ip的个数为12;访问受害ip的个数为2;到达目的ip的事件总数为2。表1、对攻击链提取得到的特征编号特征维度数值1主机扫描事件12非正常数据访问事件13访问该攻击链的ip个数234访问本机的可疑ip个数645是否存在受害ip16是否存在源ip17是否存在受害ip和源ip18访问其他ip的个数129访问受害ip的个数210到达目的ip的事件总数2表1中的特征1和特征2为提取得到的该攻击链的事件特征,通过特征提取得到的数值为0的事件类型还有125维,并没有在表1中列出,特征3至特征10为该攻击链的节点特征,将表1中的特征数据输入到建立并调优好的预测模型中,模型输出的预测结果为该条攻击链的下一步事件为入侵事件。本说明书一个或多个实施例提供的下一步攻击事件预测方法能对电网中的多步攻击事件进行预测,可以在多步攻击的前几个阶段提前预测接下来可能发生的攻击事件,从而做到主动实时地预防重大危害发生,并根据下一步预测事件及时有效的修正网络中的攻击弱点和安全漏洞,对网络攻击进行及时的响应和阻断。针对电网中发生的多步攻击事件,本说明书一个或多个实施例提出了下一步步攻击事件预测方法,以发生在电网的告警日志形成的攻击链为源数据,经过数据预处理,特征提取,模型选取与优化等流程,最终形成了泛化性能较好的下一步攻击事件预测模型。同时在数据集的预处理过程中,针对电网数据不均衡的问题提出了分层抽样的方法,在特征提取的过程中,本文改进了针对告警内容进行文本特征提取的方法。本发明的下一步攻击事件预测模型的精确率和召回率已经分别达到84.90%和84.91%,达到了有效预测可能发生攻击事件的效果。需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。需要说明的是,上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种下一步攻击事件预测装置。参考图5,所述下一步攻击事件预测装置,包括:攻击链生成模块501、分析电网告警日志生成所述攻击链,其中,使用电网内主机ip节点关联构建所述攻击链。特征提取模块502、对所述攻击链进行预处理,包括对所述攻击链进行过滤去重和特征提取,其中,通过所述特征提取操作得到所述攻击链的节点特征和事件特征。预测模块503、将提取到的所述节点特征和所述事件特征输入预测模型,观察预测模型输出的预测结果。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。上述实施例的装置用于实现前述任一实施例中相应的下一步攻击事件预测方法,并且具有相应的方法实施例的有益效果,在此不再赘述。基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的下一步攻击事件预测方法。图6示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。处理器1010可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。存储器1020可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。上述实施例的电子设备用于实现前述任一实施例中相应的下一步攻击事件预测方法,并且具有相应的方法实施例的有益效果,在此不再赘述。基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的下一步攻击事件预测方法。本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的下一步攻击事件预测方法,并且具有相应的方法实施例的有益效果,在此不再赘述。所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1