当前位置: 首页 > 科技观察

浅谈网络攻击预测技术

时间:2023-03-17 14:37:29 科技观察

一、研究背景网络安全是一个非常广阔的研究领域,网络中恶意活动的检测是最常见的问题之一。入侵检测系统(IntrusionDetectionSystem,IDS)是应用最为广泛的网络安全产品之一,但它存在以下缺陷:(1)告警信息量大,难以识别和理解不同攻击者的攻击场景;(2)只能检测到攻击,无法预测攻击者的下一次攻击。当前的网络攻击多为复杂攻击,因此从大量IDS告警数据中识别出不同的复合攻击事件并预测下一次复合攻击事件成为亟待解决的问题。IDS日志中往往会有大量告警日志。为了发现可疑的攻击事件并预测即将发生的攻击事件,往往需要大量的安全分析师参与。这是一项复杂而重复的工作,但却是当前人工智能的专长领域。如果能够通过合适的建模方法将人工智能的研究成果成功迁移到安全日志分析领域,就可以为每个局域网建立一个具有自学习能力的通用网络攻击预测模型,实现多方位的高效准确预测。-步攻击预测可以得到改善。可为安全分析师提供可靠的参考。网络的快速发展导致了对网络安全要求的提高。分析网络安全设施检测到的网络安全事件日志,重构网络攻击场景,仍然是当前学术界网络攻击研究的重点和热点。是重中之重。网络攻击是由多个攻击步骤组成的完整攻击场景,网络攻击的认知和预测是一个多层次的模型[1]。2总体流程网络攻击预测模型的流程包括三个步骤,如图1所示:IDS告警处理模块、攻击场景构建模块、攻击预测模块。图1网络攻击预测模型流程III.IDS告警处理模块入侵检测系统是网络攻击预测模型的数据源,误报和漏报是入侵检测技术的关键技术指标。减少警报的误报和漏报是入侵检测系统的一个重要目标。现代入侵检测系统(IDS)在收集和分析数据时使用的技术极为多样,而且大多数都依赖于一个共同的架构:(1)检测模块收集可能包含入侵迹象的数据;(2)关联分析引擎处理收集到的数据,判断入侵活动;(3)响应组件负责记录和报告入侵行为。几乎所有的现代入侵检测系统都是通过监控主机信息或网络连接信息来捕获与攻击相关的数据。入侵检测可以收集的数据包括:文件系统、网络事件和系统调用。入侵检测数据采集完成后,IDS将使用分析引擎对数据进行分析,识别入侵行为。现代系统主要使用两种技术来解析入侵检测数据:误用检测和异常检测。误用检测的本质是基于专家系统预定义的知识库来识别入侵。因此,对于知识库中出现的入侵行为可以达到较高的准确率。由于滥用检测系统无法检测到没有出现在知识库中的入侵,因此此类系统的性能在很大程度上取决于其正确和完整的构造,而传统上这项任务需要人类专家来完成。异常检测主要涉及识别偏离正常系统行为的异常行为。异常检测系统首先需要建立一个代表正常系统行为的基线模型,并基于该模型识别异常事件。系统通过特定的阈值判断事件是否为异常行为。优势在于它能够识别新的以及以前未发现的攻击。目前IDS模型种类繁多,有免费的Snort、TCPdump、Portsentry等,也有商用的入侵检测系统如Drangon、NFR、RealSecure等。它们的告警格式和内容各不相同,在攻击场景构建中不方便直接使用。但由于IDS设备的封闭性,不同IDS产生的告警信息格式差异较大,导致IDS告警信息无法共享。最近出现了许多新功能,包括入侵检测格式(CIDF)和IETF标准化工作,以提供入侵检测系统的互操作性。互联网工程任务组(InternetEngineeringTaskForce,IETF)内的IDWG(IntrusionDetectionWorkingGroup)工作组提出了一种集成能力强的入侵检测报文交换格式IDMEF。这样的框架使得不同的数据收集和分析技术能够集成到一个系统中,从而提高系统的覆盖率和冗余度。越来越多的入侵检测系统开始实施这种思想,例如EMERALD。标准框架的广泛应用尚需时日,入侵检测系统的标准格式需要进一步研究。4攻击场景构建模块4.1告警关联技术告警关联技术是构建攻击场景的主要理论基础,而攻击场景重构是构建网络攻击预测模型的重要组成部分[2]。网络入侵检测系统(NIDS)的存在是任何现代安全架构的基石。典型的NIDS会分析网络流量,并在检测到恶意网络数据包时立即生成安全警报。警报分析由安全专家手动执行,他们解析NIDS日志以识别相关警报以及它们之间可能的因果关系。警报关联系统将不同的警报关联在一起。有时警报数量如此之多以至于无法进行手动分析,关联引擎会将大量信息减少到可以关联的程度。此外,警报关联系统可以从整体和抽象的角度识别恶意活动,而不是单独分析每个警报。换句话说,警报关联系统是一种从各种异构系统接收事件、减少评估所需的信息、消除错误警报并检测高级攻击模式的系统。告警关联算法按其特点可分为三类,即基于相似性的方法、基于知识的方法和基于统计的方法。其中,基于相似性和基于统计的算法需要较少的上下文信息,并且只能根据警报特征与先前学习的信息之间的相似性进行关联。基于知识的算法基于警报的含义。4.2构建复合攻击场景IDS日志是一系列告警事件的集合,这些告警事件来自多个攻击序列。根据IDS告警之间的内部关系,将IDS日志划分为多个IP相关的告警序列。然后在每个与IP相关的警报序列中提取攻击事件。最后按照攻击事件发生时间排序,形成攻击序列。攻击场景重建部分接收来自入侵检测系统(IDS)的传入IDS日志。首先,通过IP相关告警序列划分算法,将IDS日志划分为多个告警组。然后,在每个告警组内应用提取攻击事件的算法,将多个告警组转化为多个攻击组。最后,通过提取和构建序列算法,将每个攻击组转化为一个或多个攻击序列。复合攻击场景构建流程如图2所示。图2复杂攻击场景构建流程IDS数据处理模块解决了各种IDS产生的日志格式不兼容的问题,但是不同的局域网由于不同的功能不同不同的配置,即使是同一个地址(内网地址)所表达的意思也是不同的。为了解决数据内容不一致的问题,需要设计攻击场景构建部分。该函数将不同局域网中的数据以相同的形式表达出来,用于模型训练和预测。4.2.1告警信息聚合告警聚合模块将传入IDS告警处理模块的格式化IDS告警数据导入,将告警数据划分到不同的告警组中。例如,如果两个警报相关且可聚类,则警报的地址(源IP地址或目标IP地址)将始终与另一个警报的源或目标IP地址相同。同一攻击活动触发的因果告警事件在地址分布上总是相互关联的。4.2.2从相互关联的告警组中提取攻击事件。如果告警名称相同,则将它们合并为一个攻击事件。每个攻击事件包含的属性包括攻击名称、发生时间(即第一次告警时间)、结束时间(即最后一次告警时间)、源IP地址集、目的IP地址集和攻击得分event,攻击评分综合反映了攻击事件的威胁程度。攻击事件的时间间隔是指上一次攻击事件的告警发生时间与下一次攻击事件的第一次告警发生时间之间的时间间隔。攻击序列不会永远持续下去。如果两次攻击事件之间的时间间隔过长,在满足其他条件的情况下也会被认为属于两个攻击序列。4.2.3攻击事件排序理论上,复合攻击的每个攻击步骤的威胁等级是依次递增的,而攻击得分量化了每个攻击步骤的威胁等级,因此提取每个攻击序列中的每个攻击序列的事件得分应该也依次递增。通过对事件抽取中产生的攻击事件组成的序列进行处理,生成攻击序列组成的序列。一个攻击事件序列经过排序后可能包含多个攻击序列。4.2.4攻击事件编码每个攻击事件都包含攻击事件信息,其中攻击事件的名称用字符串表示,源/目的IP集用字符串集表示,攻击序列码为它们是以数值表示。这样做的意义在于:(1)将攻击序列转化为计算机模型可以处理的形式;(2)避免局域网内的特有信息,如IP地址的分配方式、局域网内的主机数量等。五、攻击预测模块5.1深度学习目前,以深度学习为代表的人工智能相关技术在自然语言处理、机器翻译、计算机视觉等领域取得了丰硕成果,并逐渐在各个领域得到普及。与其他技术相比,深度学习具有以下优势:(1)可以在训练过程中进行特征提取,减少了复杂的特征提取过程,减少了对领域专家知识的依赖;(2)具有强大的拟合能力,可以拟合各种复杂的函数;(3)卷积神经网络、递归神经网络等网络结构的提出,进一步提高了神经网络在特定问题上的性能。尽管神经网络在拟合复杂变换方面的能力很强,但训练需要大量的标记数据来控制过度拟合的风险。贝叶斯方法可以用少量的训练样本建立非常准确的模型。结合这两种方法提出了贝叶斯深度学习。它的优点是可以从少量数据中学习,同时具有很强的拟合能力。图3显示了使用预测模型预测攻击事件的整个过程[3]。研究人员现在逐渐将注意力转向无监督学习,这将是人工智能的一个长期目标。完全无监督或半监督学习中的未标记数据通常使用概率模型和贝叶斯方法建模。最近,深度生成模型的流行证明了结合深度神经网络和概率模型的潜在价值,这在图像生成中得到了证明[4]。图3攻击预测模型总体流程图5.2贝叶斯网络基于贝叶斯模型的多步网络攻击预测模型的原理是利用一组条件概率来完成一组条件独立假设。首先利用贝叶斯网络建立知识库(贝叶斯网络安全事件),在预测和估计过程中将网络安全事件按照一定的规则关联起来,依次建立贝叶斯网络。而贝叶斯博弈的网络攻击模型可以解决传统网络防御系统和入侵检测系统的一些不足,可以实现对未知网络攻击行为的动态防御。利用贝叶斯方法修改网络攻击者主机的概率值,模型可以很好地匹配网络攻击行为,可以预测下一个网络攻击阶段。贝叶斯网络推理算法大致可以分为两类:精确推理算法和近似推理算法。精确推理算法希望计算出目标变量的边际分布或条件分布的精确值。但是这类算法的计算复杂度随着最大团规模的增长呈指数增长,因此只适用于规模较小的贝叶斯网络。小时。当贝叶斯网络规模较大时,常采用近似推理,近似推理算法能够以较低的时间复杂度得到原问题的近似解。贝叶斯网络和攻击场景都是有向无环图,有向边表示因果关系,攻击场景可以用贝叶斯网络的形式描述,生成贝叶斯攻击场景图[5]。基于多步攻击场景的攻击预测算法的基本流程如图4所示。图4贝叶斯网络攻击预测模型总体流程贝叶斯网络攻击预测方法主要包括两个处理过程:因果贝叶斯攻击场景图和攻击预测推理。(1)因果贝叶斯攻击场景图的构建因果贝叶斯攻击场景图构建的基础是结构构建和参数学习,其中基于攻击之间的因果关联规则构建因果贝叶斯攻击场景图结构。(2)攻击预测推理对加入攻击证据的因果贝叶斯攻击场景图进行参数概率推理,得到攻击证据的直接节点和间接节点的概率值,通过概率预测下一次攻击及其最终攻击计算意图。五、总结针对入侵检测系统难以识别攻击场景,无法预测下一次入侵的问题,本文对网络攻击预测进行了探索。根据对当前网络中已有网络状态的深入分析,判断当前网络状态下下一阶段的网络状态,然后结合特定的数学模型模拟和预测未来的行为。建立网络攻击预测模型的方法有很多种。本文梳理了常用的神经网络和贝叶斯网络模型的整体流程。参考文献[1]范迪,刘静,庄俊熙,赖英旭.基于因果知识发现的攻击场景重构研究[J].网络与信息安全学报,2017,3(04):58-68.[2]黄强,陆学忠,云凯,李浩生,赵梅,康万庆.基于多源告警信息关联的网络安全技防技术[J].信息安全研究,2021,7(11):1041-1046.[3]于勇。基于深度学习的多步网络攻击预测模型的设计与实现。北京邮电大学.[4]Rezende,D.J.;伊斯拉米,S.A.;穆罕默德,S。巴塔利亚,P.;贾德伯格,M。和Heess,N.2016。从图像中无监督地学习3d结构。在神经信息处理系统的进展中,4997-5005。[5]刘伯温,刘建义,张儒.基于神经网络和贝叶斯网络攻击图的多步攻击场景挖掘研究[J].2019.