网络入侵检测的大数据分析: 综述

来源:Lidong Wang*, Randy Jones。Big Data Analytics for Network Intrusion Detection:A Survey,International Journal of Networks and Communications 2017, 7(1): 24-31

摘要:分析网络流、日志和系统事件已经被用于入侵检测。网络流、日志和系统事件等产生大数据。大数据分析可以将多个信息源关联到一个一致的视图中,识别异常和可疑活动,最终实现有效、高效的入侵检测。本文介绍了网络入侵检测、流数据特征和流处理系统、特征提取和数据约简、常规数据挖掘和机器学习、深度学习和网络入侵检测大数据分析的方法和后续评价标准。介绍了这些方法在入侵检测中的最新挑战。

1 介绍

与美国大规模网络攻击有关的网络和信息安全概念继续占据新闻头条,超过了美国发生陆上恐怖袭击的任何可能性。联邦调查局局长在参议院国土安全部的一次采访中作证。2013年委员会称,网络攻击已经超过了美国的陆基恐怖袭击威胁,并已成为一个主要威胁,[1]继续上升。在网络安全领域,有效和高效的态势感知常常需要了解当前和历史上的网络(即主机或网络)活动,以检测和应对[2]威胁行为。通过将来自大量异构源的安全事件关联起来,可以改进对网络威胁的分析。组织必须实施入侵检测和预防系统(IDPS),以保护他们的关键信息免受各种攻击,因为杀毒软件和防火墙不足以对其系统提供充分保护[4]。

入侵检测系统(IDSs)可分为三类:基于网络的入侵检测系统(NIDS)、基于主机的入侵检测系统(HIDS)和基于混合的入侵检测系统(hybrid IDS)。HIDS通过监视多个主机并检查网络流量来检测单个计算机上的恶意活动,而NIDS通过检测网络流量来识别入侵。在一个NIDS中,传感器位于网络的瓶颈处,用于执行监视,通常是在非军事区(DMZ)或网络边界上,并捕获所有的网络流量。基于混合的IDSs通过分析应用程序日志、系统调用、文件系统修改(密码文件、二进制文件、访问控制列表、能力数据库等)和其他主机状态和活动[5]来检测入侵。IDSs通常与其他技术(如路由器和防火墙)一起使用。IDS技术,如HIDS、NIDS、网络行为异常检测(NBAD)和无线局域网(WLAN)IDS都被用于将每个设备的数据关联起来,并根据这些IDSs监视器[6]进行决策。

入侵防御系统(IPS)是杀毒软件、个人防火墙和入侵检测系统等的先进组合。入侵防御系统的目标不仅是检测攻击,还可以通过禁用连接、离线记录用户、结束进程、关闭系统等自动响应来阻止攻击。入侵防御系统可分为两大类:基于网络的入侵防御系统和基于主机的入侵防御系统。本文旨在研究网络入侵检测方法和技术的最新进展,以及大数据分析在入侵检测中的进展和挑战,以探索有助于入侵检测分析的新技术。

2  网络入侵检测方法和评估标准

入侵检测方法有三种:基于签名的检测(也叫误用检测)、基于异常的检测和混合入侵检测。其中最常用、最准确的是基于签名的入侵检测。在发起新攻击后,所定义的攻击模式或特征可以是攻击期间的目标资源、目标为资源的方式、或攻击代码主体内的名称(以字符形式)。网络安全专家可以在研究攻击签名后,设计防御新攻击的防御措施。根据提议的防御,IDS相应地更新,以检测新的攻击模式并对其做出响应。这种方法在检测已知攻击时非常有效,并产生少量误报(FP)警报,这些警报将正常流量归类为恶意流量。但是,如果攻击模式稍有改变,该方法将无法识别攻击的更改版本。

一个异常检测系统有一个关于防御系统的正常行为模式的轮廓。即将到来的数据模式在与正常模式不同时被归类为攻击。异常检测方法可以使用无监督学习技术来检测新出现的攻击,而不需要标记模式;然而,它有可能产生错误警报[8]。异常检测技术在检测网络级攻击如SYN flood、teardrop、拒绝服务(DOS)等方面具有较好的准确性;但在识别应用程序级漏洞时,比如远端到本地(R2L)和用户到根(U2R)就不行了。所有异常检测方案只考虑报文头字段,如标志、端口号和IP地址等;因此,如果攻击只涉及网络级别上的相关字段,那么它们可以很好地工作。不幸的是,如果有效负载涉及到攻击,它们无法检测攻击,例如,对Microsoft IIS的攻击导致用户下载恶意脚本文件,但是由于没有无效的包头字段,基于头的技术不会触发任何警报。恶意负载是一种应用级攻击;如果在基于异常的检测中忽略了有效负载,那么在检测有效负载相关攻击方面的性能就会很差。结合基于签名的方法(误用检测)和基于异常的方法[10],开发了混合入侵检测方法,以提高入侵检测和预防系统(IDPS)的性能和能力。

可以用来比较IDS中算法性能的一些评估标准包括[11]:1)准确性,2)假阴性率(FNR), 3)假阳性率(FPR), 4)使用时间,5)内存消耗,6)Kappa统计。在六个评价标准中,IDS[12]通常采用三个实用标准:

准确性:测量失败的百分比和正确的检测,以及从IDS中生成的假警报的数量。

FNR:样本的百分比报告实际上是异常时正常。在假阴性情况下,IDS不会检测到真正的攻击。

FPR:不正确分类为异常的正常实例的比例

表1比较了异常检测方法与入侵检测[10]误用方法的优缺点。表2比较了基于不同性能标准的三种检测方法[13]。


3 在通信网络上的流数据

流数据及其处理具有以下特征:它是动态的、不断变化的、容量大的、只允许进行一次或少量的扫描、以固定的顺序进出流,并且需要快速响应。Web点击流和网络流量是流数据的典型例子。流数据的有效分析和管理是一个巨大的挑战,因为流数据通常不存储在任何类型的数据存储库中。连续查询模型是流数据管理系统中一个典型的查询模型,在该系统中,预定义的查询会不断地评估传入的流,收集聚合数据,并进行响应。对数据流的更改,并报告它们的状态。流数据挖掘涉及流数据中的动态更改和常规模式的有效发现。人们对基于消息流异常的入侵感兴趣,可以通过动态构建流模型和集群流数据,或者将当前频繁的模式与特定的前几次进行比较。大多数流数据位于较低的抽象级别,但分析人员通常更感兴趣的是更高的抽象级别和多级抽象。因此,多层面、多层次的在线分析和挖掘应该在流数据上进行。

与流数据挖掘相关的主要问题有:概念演化(concept evolution)、概念漂移(concept drift)和无限长(无限长)。概念演变定义为新类的发展,概念漂移是指数据随时间的变化。无限长意味着流数据需要无限长存储和训练时间[15]。由于大流数据的速度分量,引入了学习模型中的概念漂移;概念漂移表明,模型预测的目标变量的统计性质随时间的变化而发生不可预见的变化。这是一个主要的问题,因为预测会随着时间的流逝而变得不准确。实时入侵检测是一项繁琐的工作,因为涉及的数据量很大。数据不平衡也是一个主要障碍。如果数据的不平衡程度很高,分类器的准确性和可靠性就会降低。不平衡是实时数据中不可避免的问题,因为某些事务的规模大、频率低。采样技术是减少不平衡对分类器[16]的影响的常用方法

恶意攻击和入侵是动态的,需要在具有数据流的实时环境中执行入侵检测。事件本身可能是正常的,但如果它被视为事件序列的一部分,那么它就是恶意的。流数据分析用于帮助识别这种情况下的入侵。它在识别经常一起发生的事件序列、发现顺序模式以及识别异常值或异常[10]方面非常有用。有三种主要的异常类型[17]:1)点异常-数据样本被检测为与数据集其余部分有关的异常;2)集体异常-完全异常的数据样本集合;3)上下文(条件)异常——仅在特定的上下文中是异常的。提出了一种基于流算法的实时网络态势感知系统,用于确定重要的流特征和识别异常行为。此外,通过对一种著名的流媒体算法的改进和增强,提高了系统的性能。该系统应用于实时高速中型企业网络,给出了系统的性能和检测结果。

大规模在线分析(MOA)是一个流数据挖掘的框架,包括收集和评估机器学习算法的工具。它可以实现聚类、分类、回归、频繁图挖掘和频繁模式挖掘。它包含在线和离线用于聚类和分类的集合以及评估工具。MOA是目前最好的流数据挖掘工具之一。可以从各种源收集流数据,并在流处理引擎中进行处理,以便将结果写入目标系统。Flink、Storm和Spark流是分布式流处理的三个主要开源平台。Flink和Storm的吞吐量比Spark流(一种微批处理系统)高15倍。Storm的吞吐量效率比其他的要高,但是Spark流在节点失败时是健壮的,并且能够在没有损失的情况下恢复[18]。Storm是主要的分布式流处理引擎之一。它有许多应用程序,如连续计算、实时分析、分布式远程过程调用(RPC)、在线机器学习和ETL(提取、转换和加载)过程。Storm是容错和可伸缩的,并且保证数据将被处理[19]。表3[20]比较了三种流处理系统。


异常检测的一个主要挑战是大量的数据。异常检测技术在处理大规模输入(数据)时需要具有计算效率,而输入是需要在线分析的流数据。另一个问题是由于大量输入而产生的错误警报。由于输入数据可能包含数以百万计的数据对象,低百分比的错误警报会使分析变得难以承受。与正常行为相对应的标签数据通常是可用的,但用于入侵的标签通常不是。因此,非监督或半监督的异常检测方法往往是首选[21]。处理大量的流数据,从结构化数据到非结构化数据,从数字数据到微博客的文本流,都是一个挑战,因为流数据是动态的,而且可能非常异构[22]。

4 数据挖掘和机器学习在网络入侵检测中的应用

4.1 用于网络入侵检测的大数据、特征提取和数据减少

特征选择在机器学习和数据挖掘中非常重要。删除冗余或不相关的特性并执行主成分分析(PCA)会导致数据维数减少。特征选择可以通过减少数据维数和加快学习过程来提高模型的预测性能。特性选择有很多应用程序涉及高维度的数据。大多数研究都是在离线学习方法中进行的,即训练样本的特征是预先给定的。然而,这种假设不适用于一些实际应用程序,在这些应用程序中,训练实例可能以在线方式到达,或者收集所有数据的成本很高。对网络特征选择进行了研究。在线特征选择的目的是开发在线分类器,只使用少量固定数量的特征[23];因此,为挖掘大数据进行在线特征选择是一个重要的研究课题。

大数据被定义为“数据集,其大小超出了典型数据库软件工具捕捉、存储、管理和分析的能力。”许多部门的大数据量从几十TB (TB:大约1012字节)到多个PB (PB:大约1015字节)[24]。大数据可能体积太大,移动太快,或者可能不符合传统数据库架构[25]的限制。大数据技术包括机器学习、数据挖掘、众包、自然语言处理、流处理、时间序列分析、集群计算、云计算、并行计算、可视化和图形处理单元(GPU)计算等[26,27]。分布式文件系统、集群文件系统和并行文件系统是大数据[24]中使用的主要工具。

不幸的是,冗余属性和记录使大数据分析中的入侵检测成为一项特别复杂和具有挑战性的任务。PCA被用于从高维数据集的属性中提取特征,特别是具有冗余属性的数据集。专家们在IDSs[29]的特征选择中使用了这种方法。利用PCA对非结构化系统日志中的无监督异常检测进行了研究,并给出了其效果。降维对性能和效率都非常重要,有助于降低异常识别中的计算复杂度,提高分类器的性能[17]。

4.2 网络入侵检测中的常规数据挖掘和机器学习

利用聚类、分类、关联规则挖掘等数据挖掘方法,通过对网络数据的分析,获取有价值的网络入侵信息。聚类可用于误用检测和异常检测,分类主要用于异常检测,是一种有监督的学习方法。基于分类的IDS可以将所有网络流量分类为恶意或正常。关联规则挖掘从大型数据集中搜索频繁发生的项,并识别大型数据集[30]的数据项之间的关联关系或关联规则。具体来说,分类和聚类在IDSs[31]中的应用存在差异:

1)聚类:聚类优于分类方法的一个优点是不需要使用带标签的数据集,聚类在入侵检测中是有用的,因为恶意活动应该聚类在一起,将自己与正常活动分离开来。

2)分类:基于分类的IDS尝试将所有流量分类为恶意或正常流量。挑战在于如何最小化假阴性和假阳性的数量。采用支持向量机(SVM)、模糊逻辑、归纳规则生成、神经网络和遗传算法等五种通用技术对入侵检测进行分类。

一些数据挖掘算法有利于攻击或入侵检测。例如,决策树被认为是异常检测中检测攻击最有效的技术之一。其他数据挖掘技术如支持向量机(SVM)、朴素贝叶斯、随机森林和神经网络已经被用于分析网络系统的通信量。使用SVM、神经网络和DT等技术的误用检测需要攻击签名。另一方面,混合分类器是一种基于神经网络、k近邻(k-NN)、DT和模糊逻辑等算法的混合方法。它可以检测误用攻击和异常攻击。网络事件被视为数据流,各种基于数据流的学习模型被用于提出入侵检测[32]的新见解。数据挖掘在通信网络控制中的应用包括[33]:

(1)网络状态的分类,应用程序类型、用户类型等,为每个情况采取最合适的行动。

(2)根据应用程序、通道条件、硬件资源和改进网络的位置,将用户或节点聚集到组中

(3)开发回归模型预测服务时间、交通负荷,信道质量、服务请求的数量,和期望的服务质量。

(4)识别频繁序列模式发现典型的网络流量趋势,典型的用户行为和网络安全攻击,等等。

(5)在网络控制参数、用户满意度和网络性能之间发现关联规则。

4.3 网络入侵检测的深度学习

深度学习也称为深度机器学习、层次学习或深度结构化学习。它可以在基于多个分层模型的收集数据中进行无监督或监督学习。深度学习算法对于分析大量无监督、种类繁多的数据非常有用,这为分析网络数据进行入侵检测提供了可能。然而,深度学习在大数据[38]方面存在一些挑战:

(1)大规模深度学习模型是适当的在处理大量的输入与大数据相关。然而,如何确定模型参数的最优数量以及如何提高计算的实用性是大数据深度学习的一个挑战。

(2)高维的数据源可以产生大量的原始数据,这使得开发高维度大数据的深度学习算法成为一个挑战。

(3)有必要使深度学习适应流数据,因为在对非平稳数据进行增量学习的过程中,其中一个挑战是处理流媒体和快速移动的输入数据。

5 网络入侵检测中的大数据分析

传统技术往往不能支持长期和大规模的分析,主要是因为保留大量数据通常不经济或不可行。因此,大多数事件日志和其他记录的活动都会在固定的保留期之后被删除。其次,对具有噪声和不完整数据的非结构化和大型数据集进行分析和复杂查询效率太低。大数据应用程序正在成为安全管理软件的一部分,因为它们帮助准备、清理和查询不完整和/或噪声记录[39]的异构数据。此外,还研究了与数据融合、安全信息和事件管理(SIEM)系统以及异构入侵检测体系结构相关的问题。

对入侵检测和缓解网络安全问题的大数据分析吸引了越来越多的关注,因为它促进了对大量复杂和不同数据的研究,这些数据来自不同的来源,检测异常,并打击网络攻击。可以创建超高维数据模型,以便在线精确地配置流数据,从而帮助预测和检测实时[40]中的入侵和攻击。Hadoop生态系统和流处理等大数据技术可以高速存储和分析大型异构数据集,通过以下方式转换安全分析:(a)从许多内部和外部来源(例如脆弱性数据库)获取大规模数据;(b)对数据进行深入分析;(c)实现流数据的实时分析,并(d)提出安全相关信息的综合视图。因为大数据分析工具需要正确配置,所以系统分析师和架构师需要对他们的系统[41]有深入的了解。

通过将来自不同来源的安全事件关联起来,可以获得对入侵或攻击的整体看法和良好的态势感知。只有像网络流量这样的单一事件源才能产生大数据并带来挑战;然而,异构数据源越多,大数据的挑战和复杂性就越大。另一方面,集成来自异构源(如netflow、防火墙、IDS和主机日志文件)的安全事件以提高态势感知能力是另一个主要挑战。此外,需要一种全面的方法来开发工具、技术和基础设施,以适应对流数据进行持续查询,并跨越统计分析、演绎推理(推理)、归纳推理(机器学习)和高性能计算(并行化)等领域。对于有效的流处理[22]来说,在集群上自动(或至少部分自动化)分配任务和大型特定于数据的并行技术也是必要的。

一个具有三层体系结构的模型被用来描述大数据系统,包括应用层、计算层和基础设施层。应用层包括用于实现数据分析的软件或其他应用程序资源,而计算层也称为中间件层,包括用于集成和管理数据的软件工具。而基础设施层,包括一个基于虚拟化和云计算的存储系统网络,也是一个用于存储大数据[42]的分布式硬件系统。大数据技术可以分为流处理和批处理。流处理是在动态数据上执行的;而批处理是对静止的数据执行的。大数据批处理的典型技术是Hadoop。使用既能进行流处理(实时分析)又能进行批处理的大数据分析系统是有效执行入侵检测和保护关键信息基础设施(CIIs)[42]的最佳防御策略。网络入侵预测与检测具有时效性,需要高效的大数据技术来实时处理[20]上的问题。

高级持久威胁(APT)是针对高价值资产或物理系统的目标攻击,是最严重的信息安全问题之一。大数据分析是APT识别[41]的一种合适方法,因为支持[43]有助于促进APT识别:

(1)异常检测基于历史和近期的相关事件。例如,域名系统(DNS)流量在短时间内增加可能是由于合法用户的行为。但这种模式表明,如果在一段时间的历史流量中也检测到这些数据,那么这些数据就会被隐藏。此外,这种相关性有助于降低警报的假阳性率(FPR)。大数据分析增加了能够计算相关性的数据的范围和数量。

(2)管理和动态捕获、集成和关联来自异构数据源的数据,如网络流量、事件数据(例如,IDS、网络设备)和操作系统构件,帮助防御者将分散的低严重性事件与持续的入侵或攻击行为的结果关联起来。与SIEM系统相比,大数据分析没有一个有限时间窗口来执行相关性。

6 结论

异常检测方法在检测网络级攻击时表现良好,但在检测应用级漏洞时表现不佳。准确性、FNR和FPR是IDS的三个实用评价标准。Storm、Flink和Spark流是分布式流处理的主要开源平台。去除冗余和不相关的特征有助于特征选择,而PCA是一种从高维数据中提取特征的方法。通过全面的方法来监视来自各种异类源的安全事件,可以改进入侵检测。传统的数据挖掘和机器学习方法在入侵检测中是有用的,但在处理网络上的大数据时存在局限性。深度学习算法在大数据中也存在一些挑战,但在分析大量无监督网络数据方面有潜力进行入侵检测。

大数据分析可用于分析网络流量、病毒签名、用户行为、网站概况、事件发生时间等,还可以通过对流数据的连续监控来计算异构源的属性关联,提高代理的安全性。实时流数据分析正成为获取有用知识的最快、最有效的方法。流处理中的一个大数据挑战是正确地存储、处理和管理大量流数据。大数据分析有可能解决在清理和查询数据的过程中遇到的问题和挑战,这些数据不完整和/或有噪声的记录,以及由于异构数据源而导致的各种数据结构。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 162,710评论 4 376
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,839评论 2 308
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 112,295评论 0 255
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,776评论 0 223
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 53,198评论 3 297
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 41,074评论 1 226
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,200评论 2 322
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,986评论 0 214
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,733评论 1 250
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,877评论 2 254
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,348评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,675评论 3 265
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,393评论 3 246
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,209评论 0 9
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,996评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,212评论 2 287
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 36,003评论 2 280

推荐阅读更多精彩内容