【摘要】
简介
安全攻击非常普遍,因为网络攻击者利用系统漏洞实现财务目标。破坏基础设施和盗窃知识产权是另外的动机,它们分别来自国家行为者和工业间谍活动。最熟练的攻击者受雇于国家行为体,进行协调和有针对性的攻击。最近的有针对性的攻击例子包括索尼、Anthem和Stuxnet。检测安全漏洞所需的时间以天为单位。
网络入侵者意识到普遍存在的安全隐患,并不断启发可能的攻击。网络攻击者可以使用各种各样的工具,使他们能够绕过传统的安全机制。例如,浏览器漏洞包、地下市场上的恶意软件感染框架和零日漏洞都很常见。机器学习(ML)是人工智能(AI)的一部分,已经被广泛应用于各个领域,例如无人机波束选择、生物医学工程技术和网络资源管理方法。
攻击者购买个人信息和被破坏的域名,用于发起额外的攻击。网络保护策略作为安全运行时间监控的要求,需要有一个信息物理系统应用实现的需求,并证明它是准确的,如图1所示。
安全漏洞是不可避免的;最初的减少和发现是在攻击中生存的最高防御机制。安全专业人员采用预防和检测技术以减少安全漏洞的风险。安全漏洞被定义为任何未经授权的行为,包括使用数据挖掘技术进行入侵检测。强调预防技术使其更加困难。一些预防技术的实例包括应用最近的安全更新、确定更好的安全策略、启动有影响力的用户安全文献以及避免默认配置。所有信息安全策略都遵循这三个策略,包括可用性、机密性和完整性。保证被批准的客户有资格进入信息系统称为可用性。保密性是指一套对信息的访问权限进行限制的准则。诚信是事实正确可靠的保证。
检测技术分为基于异常的检测、攻击识别和基于签名的检测两大类。针对当前攻击的网络流量通过基于签名的检测技术进行监控,但减少了对零攻击或当前攻击或模拟攻击的检测。这种攻击针对已知的威胁提供了可观的保护。对于使用当前攻击方法和利用的有经验的攻击者,它们的保护严重不足。因此,任何安全保障措施都很容易被攻击者绕过。
大数据中的分析是对来自不同基础的许多异质输入的关联和聚合。它在探测网络威胁方面有一个有利的作用,在可采取行动的时期,没有或很少有人干预。在行业中,安全分析是一个新的趋势,也是首选,并有望立即实现势头。确定所需的适当算法,以解决必须解决的众多障碍之一,就是在大量数据中发现隐藏的趋势。噪声和不完整的数据是必须考虑的进一步因素。最后,大规模的企业级数据强加了最大限度的接触,以实现安全分析的有效实现。传统方法通过区分正常和异常来区分安全分析。准确地说,重点不是载荷特征或材料,而是操作。物联网体系结构由多个连接的物联网系统构建块组成,以确保传感器生成的设备数据在大数据仓库中被收集、存储和处理,并确保设备的执行器执行通过用户应用程序发送的命令(图2)。
本研究的目的是提出一种精确、可扩展、快速的可重复检测网络攻击的程序。对于通过不同系统的用户行为的显式图像,该方法应该评估多个数据源。正常的波动通常发生在用户一天的活动模式中;这些模式与周末的趋势不同。预计模型会在异常用户活动和正常波动之间变化。利用深度学习算法训练神经网络来检测用户的忧虑行为。这篇文献与数字取证的一种形式完全相关,这种形式的重点是找到黑客无意中遗留在网络日志文件中的非法活动的证据。与数字取证相比,该研究侧重于识别恶意活动模式和实时检测非法活动。人工智能的描述性分析如图3所示。
相关工作
在本节中,研究了一些值得注意的研究,包括基于ML的算法的应用,其次是基于网络安全的机器学习算法的分类,以及ML算法在网络安全中的应用。
基于机器学习的算法应用
一些研究描述了人工智能特别是网络领域的发展。一个创新的基于差分进化算法的分类器组合被引入到文本情感分类中。这使得文本情感分类的安排准确率很高,在Laptop数据集上达到98.86%。
利用文本分析,文本排序是高维特征空间的领域。在该研究中,提取关键词作为特征在文本分类中是非常合适的。研究表明,ACM文集(ACM文档)的分类准确率达到了随机森林的93.80%。经验结果表明,与可预测的协作方法和三种合奏修剪算法相比,开发的方案可以产生更合适的情感检查结果。
相关模型进一步表明,该集合聚类框架的性能优于所展示的基线聚类方法。调查结果进一步说明,套袋和随机子空间合集方法以及基于相关性和一致性的特征选择方法在准确率方面取得了更好的结果。
基于特征工程方案和五种不同的基础学习者,结合集合学习方法,进一步进行了广泛的比例考察。根据实验结果,使用了一个基于集合分类的系统,该系统将随机森林的随机子空间集合与四种类型的特征相结合;这产生了94.43%的模型准确率。基于所展示的方法,从五种基于过滤器的特征选择方法中获得的特征排名通过增强的Borda-count排名聚合进行了累积。在研究过程中,路透社-21578和20个新闻组的数据集被用于支持向量机和C4.5分类器。与传统的基于过滤器的特征选择方法相比,该模型表现出更好的性能。
基于网络安全的机器学习算法的分类
大数据有三个特征,包括数量、种类和速度。体积提供了一个数据沉积的范围,并以PB、Exabytes或Terabytes来估计。半结构化、非结构化和结构化数据都是多样性的例子。结构化数据通常存放在数据仓库或数据库中。照片、文本信息、推特和文件是非结构化数据的例子。半结构化指的是日志数据。在某些情况下,键值对在日志数据内构成,或以逗号分隔值(CSVs)格式存入。大数据的病症,其规模必须远离当时使用的尝试性方法,描述大数据的病症。大数据描绘了数据搜索和处理方面的问题。新的遭遇需要创新的方法和技术,包括大数据分析或数据挖掘。通过大数据分析采用数据挖掘技术,从数据中提取可操作的观察结果,以做出智能商业决策。一般来说,提取转换负载是大数据分析的最初步骤。这是一个阶段,数据通过数据挖掘程序可以理解的设置进行痴迷的转化。分析或处理阶段整合了一个系统程序,其中包括收集转移的数据。
最后,以论文的形式给出了研究结果。利用ML方法对大数据集的数据挖掘进行了描述。
无监督学习和监督学习是机器学习的两种常见形式。监督学习被用于可用的标记实例的案例数据集。分类问题通过监督学习加以利用。监督学习的目的是训练人工智能预测观察结果或正确分类输入。无监督学习是在没有标记数据集的情况下使用的。无监督学习技术是一种将相关实例分组的聚类方法。聚类是一种检测数据模式的技术。例如,执行聚类是为了对未标记的数据集进行分类,以及利用后续的分类数据集进行监督学习。
机器学习在持续开发中涵盖了大量的实例,呈现交叉关联和弱边界。此外,不同的应用程序和视图可能驱动不同的分类法。因此,与其依赖于早期研究中完全一致的分类,不如演示一种捕获各种网络检测方法之间变化的实际安排这些分类法是为安全人员明确设计的,它避免了提出能将所有人工智能专家分类和使用意识形态的最佳安排的崇高目标。在浅层学习中需要一位领域专家,他可以在继续使用安全查找算法之前完成识别适当数据属性的严肃工作深度学习基于对输入数据的复杂描述;它可以使用表征学习的方法独立完成特征分类。
机器学习算法在网络安全方面的应用
入侵检测的目的是利用入侵检测技术来澄清设备或网络上的非法活动。今天的商业网络使用各种网络入侵预防技术。该系统传统上建立在已识别的攻击的轮廓上;当代的分布包含了额外的异常识别或风险检测的方法,以及基于机器学习的分类。有两个问题适合在整个更广泛的入侵检测领域进行分析。僵尸网络是一个由攻击者控制的受感染计算机网络,它被用于各种非法活动。僵尸网络检测的目的是找出被攻击的机器如何与外部命令和控制服务器以及被监控的网络进行通信。尽管大多数商业工具和研究提案都解决了这一风险,但一些僵尸网络仍然存在。
域名是在域名生成算法(DGAs)中自动生成的,通常被一个受侵扰的机制利用来与外围服务器通信,定期生成新的主机名。他们对企业构成了事实上的威胁,因为他们可以绕过基于静态域名黑名单的保护。DGA检测技术是基于机器学习的。恶意软件研究是一个非常重要的课题,因为现代恶意软件会自动生成相同恶意结果的变体,但它们会以巨大的不同的可能文件出现。传统的基于规则的恶意软件检测技术被某些变形和多态的特征所击败。由于攻击者利用渐进式规避战术来绕过传统的应变器,钓鱼和垃圾邮件的检测逐渐变得复杂。跨度识别过程可以通过机器学习方法来加强。
在此之前,基于虚拟内存访问模式的ML创建了一个在线框架,用于硬件辅助恶意软件检测。提出的进行实验的方法包括使用逻辑回归,基于森林的随机分类器和支持向量机根据研究结果,真阳性率为99%,假阳性率不到5%。此外,采用机器学习和数据挖掘分类,提出了分类和恶意检测软件。基于异常和基于签名的特征都被识别出来进行检测。结果表明,其他类似的方法优于预测方法。使用k近邻和操作代码作为机器学习分类器对恶意软件进行分类用图表示运算码,并嵌入特征空间。此外,使用集合或分类器分别将向量分类为良性或恶意软件。实验结果表明,该模型具有较高的识别率。
深度学习架构是为智能恶意软件识别而构建的。作者使用多层受限玻尔兹曼机的自动编码器来检测未识别的恶意软件。研究表明,与浅学习和深度学习方法相比,异构深度学习系统将提高整体恶意软件检测效率。恶意软件检测,一个热门的研究趋势,集中在一般的移动恶意软件,如Shafik等,以及具体的机器恶意软件。与深度学习一样,机器学习也是这一领域的重要举措。
方法和评价
在本节中,介绍了方法和评价。这包括转换和数据提取、无监督学习、监督学习、需要测量的监督学习和评估等等。
转换和数据提取
这个过程由三个子任务组成,它们共同生成机器学习所需的数据集。数据收集子任务负责定位、收集来自多个源的日志数据,并将其合并到单个存储库中。为了减少数据集的大小以及将其转换为滑动窗口分类器,需要进行预处理。在机器学习中,特征选择用于从数据中对一系列特征进行分类,用于初步评估和模型训练。
为了检测网络攻击,需要详细了解所有可用的日志源类型。数据收集的第一步是采访安全专家,以制定可能的源表单列表。根据其网络结构的不同,各机构之间可用的资源差别很大。另一方面,电子邮件活动、来自无线接入点的数据、来自物理设施的数据、安全数据以及来自事件管理和浏览器活动的数据都是潜在源类型的例子。来自web应用程序的日志文件也是消费的重要候选对象。通过将这些数据源集成到单个存储库中,我们可以创建跨不同系统的用户活动的全面映像。存储库将使观察用户行为变得更容易,否则在独立调查数据源时,用户行为将被忽略。
无监督学习
在数据集中每个数据方面的类标记未指定的情况下使用无监督学习技术。聚类是一种无监督学习形式,它涉及将相关数据方面分组到集群或组中。
有监督学习
训练计算机根据实例正确识别范式或预测值的技术被称为监督学习。用于训练预测模型的训练集和用于评估目标的测试集都是用于对数据进行分类的命名数据集。对于分类,有多种算法可供选择。随着当前神经网络计算能力的科学发展,一种新的偏好已经减弱。
测量和评估。提出的模型的有效性通过以下绩效行动进行评估。f得分和召回率同样重要,尽管准确性是一个宽泛的衡量标准。例如,成本可能会带来不便;如果没有正在进行的安全事件,则发送警报。
初始模型。Splunk企业版6。用来实现所提出的系统架构。Spunk的web界面用于手动上传源日志文件。相反,日志文件通过Splunk转发器转发到Splunk索引器,Splunk索引器用于同时存储和parson。需要注意的是,Splunk转发器还能够通过专用的传输控制协议端口从包括防火墙在内的高速设备接收日志数据。基于web的用户界面由Splunk搜索托管,用于执行交互式搜索以及向用户展示结果。
通过Splunk搜索命令,每隔1分钟执行一个平均特征计数的数据集。然后,这些平均数据被上传到CSV文件中,数据被导出到预处理模块中。通过预处理模块将1分钟的间隔转换为5分钟的滑动窗口表示。数据被导出到聚类模块,在那里它被标记和分类用于初始训练。然后将预处理后的数据直接导出到深度学习模块中进行事件检测和训练。当检测到异常活动时,系统将生成和更新仪表板,主要是在实际时间警报。
时隙概念用于创建数据集,以便对数据建模。两个数据集的时隙都调整为5分钟。在数据集中,每一行包含5分钟内的平均特征量。单个时隙表示3小时内检查的日志数据的平均计数。这可以减少添加新日志文件所需的资源数量;该系统能够通过逐步表示每个数据集的所有数据来线性扩展。本研究将日志文件从源系统中提取出来,经过压缩后转移到DVD媒体中。这种研究方法是以离线的方式进行的。这项研究不包括生产配置。相反,该研究可用于近实时方法。本研究的训练和测试数据集是使用日志文件构建的,由时间序列格式的平均计数值组成。
为机器学习选择的特征是根据一个或多个日志文件的特征进行的。在对单个用户名或互联网协议值进行选择后,将产生一个稀疏的矩阵,这将使内存需求呈指数级上升。通过调查3小时的收集的数据,很明显,这样的解决方案不会是线性扩展的。Neptune源类型是由四个Windows服务器的事件数据组成的。这个源类型的结构遵循W3C扩展日志文件标准。这种源类型包含的事件是用户电子邮件活动的结果。超文本传输协议(HTTP)开机自检(POST)的总数以及从这种源类型中提取的属性包括GET请求。
结果
所有的数据集都是由一个干净的文件日志衍生出的分钟函数总数的自持。我们使用了围绕 Medoids(PAM)的分区算法,因为它是k-means聚类的一个非参数替代方案,用于划分数据集。表1中列出了与使用ML相关的特征。同时,与特征相关的所有日志文件的来源也被详细列出。该特征集与上一节中使用的特征集一样,有新计算的区域的加法:Wday和Dhour。
启动新特征的目的是为了塑造独特的用户体验。例如,在下午时分发生的典型模式可以与夜间发生的模式区分开来。因此,它对其性质产生了严重的怀疑,同时也增加了入侵的可能性。预处理模块将表2中提供的数据集以5分钟滑动窗口的形式进行转换,该窗口通过聚集特征集合来表示。为了获得不容易观察到的活动中难以捉摸的波动性,使用了总和,而不是使用平均值或中位值。此外,预处理模块还带来了另外两个特征,有助于中立的网络以更正确的方式区分由于变化而产生的不规则活动。值得注意的是,这些变化通常会发生在整个白天。
wday和dhour是两个新特征。wday的特点是与从第0天到第6天的日历周相关的序号。dhour的特征显示了关于0-23的时间段的小时数,因为它被规定用于表3中给出的所有数据集的预处理。正常化的行为是通过预处理模块执行的,以安排与机器学习有关的数据。归一化的目的是将整个特征组织在一个典型的范围内,因为它将避免特征与其他特征相比具有更高的优先权的趋势。所有的特征都是通过使用最小-最大归一化进行归一化的。
规格化有助于在使用另一种尺度时进行比较,以剔除特征。此外,它还加快了组织和准备神经网络所需的时间。
本研究中使用的源日志文件在收集入侵时进行了匿名处理。随后,这些数据集被贴上标签。同样,在数据中也发现了不规则的活动模式。然而,为了有效地实践中性网络,我们发现了样本的缺陷。由于日志文件的数据量很大,手工标记需要付出很大的努力。因此,为了组织一个有标记的数据集,使用了PAM算法,对所有类都有适当的数字插图。PAM聚类结果如表4所示。
为了呈现与用户活动相关的典型业务回顾,使用了三种分类:红色、绿色和黄色。它们也表示活动的重要性和紧迫性。典型的用户活动模式用绿色表示;然而,红色反映了更高程度的紧迫性。类似地,没有匿名化或表明网络攻击脆弱性的攻击模式用黄色表示。所有数据集被分成三个聚类,并通过聚类评分函数命名。这个分数是通过收集集群的中位数特征计算出来的。得分最低的聚类用绿色标出,得分最高的聚类用红色标出。另一方面,集群的其余部分是黄色的。
提出的方法是基于规则的聚类作为一种独特的方法来标记数据,聚类以某种方式发散出数据的线性隔离。这导致将数据安排在一个更复杂和非线性的方程中,可以更容易地表示攻击的危险。除此之外,主题专家还可以以日志的形式对一些事件进行区分。规则集对这些方法的可靠性没有影响。这是因为这个实验可以与一个完全不同的数据集交换,也可以获得与之平行的结果。
该方法采用了四条规则,通过三个不同的日志源明确地确定了特征。这些规则是通过对安全分析师的采访而产生的,当时他们正在进行一场关于日志中可能显示攻击可能性的事件的对话。通过使用分类法,将分类的定义澄清视为与其中一条规则相似的插图标注为黄色,而与两条或两条以上规则相似的插图标注为红色。另一方面,那些不喜欢任何规则的被归类为绿色。基于规则的类别的结果如表5所示。
为了给所有的类提供适当的说明,采用分位数函数来计算特征值。决定建立一个独特的门槛。在这个实例中,动态主机配置协议(Dynamic Host Configuration Protocol)探究了超过75%分位数的值,因此必须考虑攻击。这种方法比PAM聚类更快。使用PAM作为集群,2周的数据集跨越2小时,与基于规则的方法进行比较,其连接持续时间不少于2分钟。而且,与PAM方法相比,基于规则的方法分配了少量不规则插图。从例子中可以看出,数据集2的PAM方法显示,在18%被认为是红色或临界的所有集群中,活性比为33%。
在对数据集进行标记后,通过Weka方法的信息增益属性评估器对特征进行排序。在3小时的数据集中,一个常数与wday这个特征相关。因此,它被赋予了零等级,被列为零等级的特征可能会被消除,对模型的准确度没有影响。值得注意的是,由于研究的实验,这些特征没有被淘汰。在其他数据集中,新特征的排名更高。它们是通过基于规则的聚类来确定的,并被分配了比其他特征更多的等级。
对数据集进行分类的非线性方法有可能是通过分层聚类来激发的。使用PAM将数据集划分为三个聚类。在下一步,使用PAM对随后的聚类进行分区,以创建三个聚类。这些聚类根据其相应的聚类分数用红色、黄色、其他颜色和绿色来标示。标有颜色的聚类被用来合并九个聚类,用于创建数据集。后来,这些数据集被用来评估利用多个隐藏层的深度学习算法。溢出级概念和分层聚类之间存在相似性;但是,这种相似性没有确定的原因。
PAM是用于划分步骤1的算法。在步骤2中,树的高度用于定义层次聚类中的数字聚类,而PAM则负责指定聚类的总数。层次聚类的方法有两种类型。
一种类似底层的技术被称为聚类。它从每个实例在它自己的聚类中开始,然后链接到单个聚类。
一种自上而下的策略被称为分裂式,它从单个集群中的实例开始。后来,它又被细分为直至达到自己的集群。
溢出级方法中的最终集群数量由k控制,其中高度保持不变。这发生在第二层,并与用户活动的水平相匹配,这被用于进一步分类。PAM标记的数据集被用于深度学习测试,隐藏的神经元数量有很大的变化,在一个单独的层中的范围在2到20之间。表6显示了每个数据集上存在的单一测试的结果。wday特征被深度学习算法自动放弃,因为在3小时的数据集中,wday的值是恒定的,对每个测试结果的矩阵是混乱的。数据集1和数据集2没有表现出错误的否定。较大的数据集表现出10个假阴性,其中只有两个被认为是正常的。数据集1和数据集2显示只有一个假阳性。最后,更大的数据集显示了17个假阳性,其中4个被称为高度重要。
表7显示了单层拓扑,显示了数据集1的深度学习等级。该数据集1包含各种神经元配置,而其余参数保持不变。两个、三个和四个神经元在表现上没有差别。然而,只有在添加第五个神经元后,才能达到100%的准确性、召回率和精确度。表8展示了数据集2的单层拓扑分析。在数据集2中,隐藏的两个神经元表现出了最好的准确性。增加更多的神经元没有影响;然而,在某些情况下,准确性略有下降。训练模型总共需要5.69 s的时间。10个隐藏神经元的准确率最高,约为99.33%。总训练时间为170 s。单层6个隐神经元的准确率为99.01%,完全训练耗时约54.6 s
结论
在本研究中,使用深度学习算法训练的比例实例集合的结果表明,分类数据集可以准确地检测可疑行为。该方法允许通过滑动时间窗口分配多个日志源类型,并提供可伸缩的解决方案,这是一个非常需要的功能。
基于规则的标签数据集用于进行深度学习测试。在单个隐藏层中,隐藏神经元的质量在2到20之间,测试在不同质量的隐藏神经元之间变化。在基于规则的标记数据集(与PAM分类数据集相关联)的帮助下,训练模型所需的时间有了显著的延长。例如,最大的基于规则的训练数据集使用了90.5 s;与PAM标记的可比数据集相比,使用了53.7 s。当将PAM标记数据集的准确性与基于规则的数据集的准确性进行比较时,PAM标记数据集的准确性更高。当观察红色聚类时,发现数据集1没有假阴性。同样,在对数据集2进行分类时,红色聚类显示有39个假阴性。最后,在数据集2的分类中,共有14个阴性。
尽管该数据集中的其他参数保持不变,但该数据集中包含不同的神经元配置。单隐层5个神经元的准确率为84.3%。测试集分类为数据集1。这个数据集是不同隐藏神经元的配置。训练周期为28.1 s,单个秘密层包含11个神经元,准确率达到95.47%。在训练周期为90.5 s,单个秘密层中有5个神经元的情况下,准确率达到97.97%。
采用最优数量的神经元来添加第三个隐藏层。在最后两次试验中,这些神经元被发现了。精确度或f值最高的层是最优的隐藏层配置。在训练时间为39.5 s,配置16个神经元的情况下,准确率达到97.2%。16,15个神经元的秘密层拓扑提供了97.8%的准确率。与单层拓扑相比,双层隐层拓扑具有更高的精度;因此,它被认为是最佳的。通过使用20秒的补充计算时间,得到了0.6%的精度的总增益。
建议检测网络攻击是一个漫长而复杂的分析过程的开始。安全专家应完成降低风险的活动,包括锁定账户和将源ip列入黑名单。应该通过检查日志文件以及攻击者检索的所有资源来识别任何被破坏的帐户。在检测到活动的几周甚至几个月前,必须收集和检查所有相关事件。自动相关是未来研究的一个有潜力的领域。