美国安全和新兴技术中心近期发布《机器学习与网络安全——疯狂炒作背后的真相》报告,就机器学习技术进步可能对网络安全产生的潜在影响进行深入研究。

一、 摘要

近年来,网络攻击的比重和规模都有所增长。政府、媒体、学术和工业界的许多评论人士都想知道:网络安全专业人员如何能够使用机器学习来进行防御。机器学习能否让防守方更快地检测、拦截攻击?使用机器学习技术的Agent能否自动寻找漏洞,或者在发生攻击时自动与对手交战?决策者应该将机器学习视为网络防御的变革力量,还是仅仅看成是一场炒作?

报告对网络安全和人工智能(AI)结合应用的潜力进行了中肯的评价,将网络安全实践分成四个阶段的模型,研究了近期的机器学习创新在每个阶段可能产生的影响,并将这些应用与现状进行对比。

报告提出了四个结论:

  • 机器学习可帮助防守方更准确地检测、区分潜在的攻击。许多情况下,这些技术仅是对已有旧方法的细化(而非根本性创新),却引入了新的攻击面。

  • 机器学习可以使大量特定任务实现完全或部分自动化,包括某些漏洞发现、欺骗和攻击阻断。但许多最具变革性的方法,仍有待于机器学习的重大突破。

  • 总的来说,机器学习将会给网络防守方带来渐进式的进步。但除非未来能够实现更多突破,否则不太可能对整个行业产生根本性变革。最具变革性的影响,充其量是让更多组织使用以前未使用或未充分利用的防御策略。

  • 机器学习既不偏向进攻,也不偏向防御,但某些类型的策略对攻击方或防守方更有吸引力,使机器学习能微妙地改变威胁格局。

二、简介

电子邮箱、网站浏览器这些服务都利用机器学习来保护用户免受网络攻击。过去十年中,随着组织面临的威胁愈发严重、技术越来越成熟,机器学习在网络安全中的作用也逐渐增强。网络行动日益成为普遍的地缘政治工具,这意味着许多组织将面临风险,成为资源丰富攻击者的目标。与此同时,训练有素的网络安全专业人员配置不足,难以满足日益增长的专业需求。此外,越来越多的研究机构推测,不久的将来人工智能将被用来进一步加剧网络攻击。

这种环境下,研究人员、决策者和从业人员无一例外都在思考:机器学习是否能帮助扭转网络攻击的战局。大众媒体经常大肆报道机器学习可能极大地改善攻击检测能力,而国防界人士则竞相谈论未来可以自主搜寻和驱赶入侵者的人工智能系统。

"人工智能"已经成为网络安全营销材料的核心支柱,广告将人工智能产品吹嘘成为上至生物种群、下到免疫系统等各类事物。如果仅看这些表面说法,那些不太关注人工智能研究现状的决策者可能会得出这样的结论:最多只需要几年时间,机器学习算法就将会彻底改变网络安全行业。

如果决策者了解到,机器学习系统被普遍用于关键的网络安全任务长达20年之久时,可能会感到不可思议。过去五年的突破理所当然地引起了人们对人工智能和机器学习研究领域的关注,但人们很容易忽视,这些进展背后的算法在许多情况下已经存在了几十年。考虑到这一点,该决策者在看到最近一连串备受瞩目的黑客攻击时,可能会忍不住完全否认否定机器学习的潜力。

评估机器学习在网络安全方面潜力的部分困难在于,不同方面有不同的成功准则。就我们的目的而言,我们应当区分两种用来评估新技术影响的准则:反事实准则和历史准则。

使用反事实准则意味着一个问题——在其他条件不变的情况下,如果没有机器学习,我们的现状会是怎样?从这个角度切入问题,就会让我们对机器学习有更多的欣喜了解:在一些行业中,可能的网络攻击事件数量已经从每天几百个暴增至几百万个,令人惊讶的是,维护IT基础设施安全的工作并没有拖垮大多数公司。在很大程度上,这种成功要归功于机器学习系统,它可以自动筛选潜在攻击,生成可疑行为警报,或对异常活动进行一些基本分析。

反事实准则对网络安全从业者来说至关重要--他们了解威胁形式,并必须以某种方式做出响应。但决策者也需要深入了解一系列更普遍的问题:世界是变得更安全了,还是更不安全了?对于网络安全人才的长期短缺,我们应该有多担心?机器学习能否让我们在绝对意义上不再轻易受到敌人的攻击?为了回答这些问题,我们需要使用历史准则。与其将有机器学习的世界与没有机器学习的假想世界进行比较,不如将过去与现在以及(最有可能的)未来进行比较。

机器学习可以为网络安全从业者带来显著的益处,这一点得到了大多数人的认同,但这些益处能否可以构成网络安全的"革命",尚存较大争议。

在本文中,"革命性影响"是指按照历史准则(而不仅仅是反事实准则)产生的影响。在网络安全的背景下,这意味着一项技术应该做的不仅仅是帮助防守方跟上日益增长的威胁形势:如果想要成为革命性技术,该技术应当减少需要人工响应的威胁总数,并使其保持在较低的数量上,或者它应该切实改变网络安全实践。

对于决策者来说,更重要的是理解机器学习将如何改变网络安全,而不是争论它是否会带来变化。为此,本文探讨了多种机器学习技术的进步可能对网络安全产生的潜在影响。对于网络安全中一些倍受炒作的机器学习应用,我们向读者表明了适度的怀疑,同时也提议让读者注意一些未得到广泛关注的潜在应用。

为了保持我们对成功历史准则的重视,我们试图通过研究早期的机器学习是如何被应用到网络安全领域的,以期了解近期人们对网络安全机器学习兴趣增长的原因。

这是一项艰巨的任务,并且本报告无法涵盖所有与机器学习在网络安全中发挥日益重要作用有关的内容。我们的重点完全集中在技术方面--机器学习能做什么。

三、网络安全的四阶段模型

最著名的网络安全概念化模型是由美国国家标准与技术研究院(NIST)设计的网络安全框架(Cybersecurity Framework)。

为了帮助防守方评估其风险水平,该框架将网络安全大致分为五项功能:识别、保护、检测、响应和恢复。

本文使用 NIST 模型的改编版本,强调略有不同的四个类别:预防、检测、响应和恢复以及主动防御

偏离 NIST 框架有两个主要原因:首先,虽然有许多关于机器学习被用于网络攻击检测的实例,但在 NIST 框架的其他四个类别中,机器学习技术的使用仍然相当不成熟,这证明将多个类别组合在一起进行分析是合理的;其次,人们对“主动防御”(我们将在下面详述)这个领域的关注日益增长,从技术和操作角度看,它在概念上有别于其他类别,因此值得单独讨论。

在此模型中,预防是指安全专家为尽量减少其组织的漏洞而采取的所有行动。预防要求防守方至少做到对网络配置和用户权限做出安全决策,对其网络和软件的依赖项保持持续关注,并及时修补已知漏洞。对于软件公司来说,最好的预防工作是在产品上市之前评估自己的产品是否存在漏洞。对于中型或大型组织来说,预防通常需要审计自身整体安全态势,以及定期进行渗透测试(对网络发起良性攻击,以发现和暴露脆弱点)。这个类别大致对应于NIST的识别和保护类别,前者强调资产管理和安全战略,后者则侧重于用于保护资产的技术和政策控制。

再多的前期工作也无法使组织免受网络攻击。当攻击发生时,需要检测系统来迅速提醒防守方,使他们能够做出响应。全面的检测系统必须监控从网络流量到电子邮件附件以及员工行为的所有内容,以识别异常情况和潜在威胁。由于在入侵网络后的数月内,攻击方往往会藏匿自身,因此有效的检测系统可以帮助组织显著降低网络攻击的影响。

一旦检测到攻击,安全专家必须确定如何响应和恢复。对于某些类型的威胁,响应简单直接:例如,检测到垃圾邮件时,电子邮件服务只需将疑似非法的邮件重定向到一个垃圾邮件文件夹即可。然而,对于许多其他类型的攻击,很难做出合理的响应。面对正在进行的攻击,网络安全人员往往必须当机立断:决定是否需要关闭机器、隔离部分网络,或者采取一些其他可能严重扰乱组织运营的措施,例如。一个有效的响应必须确定攻击的规模和范围,阻断攻击方的访问,并完全消除攻击方可能拥有的任何立足点。做完这些后,重要的是将系统恢复到攻击前的初始状态。

预防、检测、响应和恢复三要素构成了网络安全的核心。对于大多数组织来说,有效良好地执行这些任务是良好网络安全实践的最高境界。然而,某些组织可能会面临来自兵精粮足的威胁者的攻击,因此仅仅遵循预先定义好的框架可能还远远不够。这些组织还必须确保自身能够灵活地适应威胁环境的变化。

考虑到组织需要灵活地应对复杂威胁,本报告引入了额外的阶段:主动防御该术语采用SANS研究所的定义:干扰、归因或直接反击等一系列活动。主动防御可以被看作是一个"其他"类别,包括所有刻意参与或研究外部行为者的尝试,而不是简单地在问题出现后做出反应。该类别可以细分为几个更明确的子类别,本报告强调其中的三个:(1) 欺骗,试图误导和拖延对手;(2) 威胁情报,试图积极研究潜在的对手,以更好地预测他们的行动;(3) 归因,试图将多个事件与某个单一实体联系起来,然后可以进行更详细地研究。如果将主动防御做好,可以让防守方领先对手,防患未然。

四、传统机器学习与网络安全

在过去的十年里,人工智能和机器学习研究取得了重大进展,但将机器学习方法用于网络安全的做法由来已久。直到最近,这些应用仍几乎完全属于网络防御的检测阶段,其中对垃圾邮件检测、入侵检测和恶意软件检测的关注最为显著。本节讨论了那些简单易行且由来悠久的机器学习方法在历史上是如何适配这三种应用的。图1展示了网络威胁领域主要进展的粗略时间表,以及为了应对这些威胁机器学习是如何进化的。

这里的"传统机器学习"指的是最近5-10年深度学习(deep learning)取得重大进展之前,在机器学习研究中占主导地位、已有数十年历史的一系列算法。传统机器学习算法的一些例子包括朴素贝叶斯分类器、随机森林、K-means聚类、逻辑回归模型和支持向量机。值得注意的是,尽管我们使用了"传统机器学习"这个名字,但其本身并不是一个停滞不前的领域。

为了阐述这些传统的机器学习方法在网络安全中应用的历史,我们先来看看垃圾邮件检测的例子。

4.1 垃圾邮件检测

自21世纪初以来,机器学习一直是垃圾邮件检测的重要组成部分,其中许多早期的机器学习方法至今仍在使用。在引入机器学习技术之前,垃圾邮件检测依赖于黑名单列表,屏蔽来自(已知的)恶意IP地址的邮件;或依赖于关键词检测,阻止含有手工整理的垃圾邮件词汇(如"免费"或"性感")的邮件。然而,由于这些方法经常会被滥用,往往会导致合法的电子邮件被阻止。为了解决这个问题,计算机科学家在本世纪初开始提出基于机器学习的解决方案。

早期的方法相对简单明了。首先收集大量的电子邮件,将它们标记为垃圾邮件或合法邮件,并将它们拆分成各个单词。对于每个单词,计算包含该单词的电子邮件是垃圾邮件的概率。当一封新的电子邮件到送达时,可以使用根据每个词与垃圾邮件相关的概率来计算该电子邮件是垃圾邮件的风险,风险分数超过预设阈值的邮件会被自动阻止。

自21世纪初以来,尽管研究人员已经做出了改进,但垃圾邮件检测的核心要素仍没有太大变化。通过从邮件标题中提取更多的技术细节(如IP地址和服务器信息),或将出现在主题中的词语与出现在邮件正文中的词语区别对待,可以建立更好的垃圾邮件分类器。更好的算法能识别出短语或同义词,而不是将所有的单词孤立看待。一些公司已经开发出极其复杂的垃圾邮件检测器,除上述措施之外,还可以根据用户以往的电子邮件互动、标记异常的联系人,或使用深度学习模型,来确定含有品牌的电子邮件是否来自其真实公司。

然而,即便是像谷歌等公司所使用的最先进的垃圾邮件分类器,大多也是从上述早期方法缓慢完善和演变而来。当然,对于负责保护数十亿封电子邮件的大型公司来说,即使是准确性的些许提高,也会产生重大影响。但是,如果把机器学习垃圾邮件检测系统近期的创新,描绘成对过去做法的根本性转变,那就大错特错了:实际上,近二十年来机器学习一直是这项任务的核心。

4.2 入侵检测

入侵检测系统通过关注行为特征,并搜索恶意活动的迹象,以检测计算机网络上是否存在未经授权的活动。入侵检测系统通常分为基于误用(misuse-based)或基于异常(anomaly-based)的系统。在基于误用的检测中,攻击是基于它们与以前看到的攻击的相似性来识别的;而在基于异常的检测中,先构建一个“正常”行为的基线,然后将所有不匹配基线的行为标记为潜在的攻击。这两种方法都可以使用不同的机器学习方法。

最简单的基于误用的检测形式依赖于已知的失陷指标(indicators of compromise)来检测以前遇到的威胁。例如,如果组织发现某个恶意软件试图访问特定的网站,那么网络防守方就可以编写一个简单的检测系统,当网络中的机器试图访问该网站时发出警报。

基于误用的检测通常兼具较高的处理速度和较低的误报率,尤其是基于上述简单方法时,这使其能够快速准确地识别恶意事件。然而,这种检测形式只能监测已知威胁,对新型攻击无法提供切实保护。

通过允许系统“学习”不同类型的攻击是什么样的,机器学习可用于自动执行某些形式的基于误用的检测。参考许多过去攻击的(标记)示例,则可以训练监督学习分类器来识别不同类型攻击的迹象,而无需人工生成会触发警报的特定规则列表。

一些研究人员倾向于将基于误用的检测更精准地定义为严格基于精心策划的失陷指标清单,而不是基于概率模型。根据这一定义,机器学习不能用于执行基于误用的检测,因为机器学习在本质上是概率性的。然而,许多机器学习分类器相似于基于误用的检测系统,因为它们使用以往攻击的标记实例来检测未来的攻击,很难用于0day攻击,并且不寻求识别“正常”行为的基线模型。因此,我们认为将具有这些特征的机器学习分类器归入“基于误用的检测”的标签下是最合理的。

至少从1999年开始,研究人员就试图生成不同类型攻击的网络流量档案,以便机器学习分类器可以学习如何识别以前看到的攻击。这项研究最初是由美国国防部高级研究计划局(DARPA)推动的,研究结果表明,机器学习能够胜任基于误用的检测工作。

尽管人们很容易认为较新的机器学习方法(如深度学习的兴起)大大增强了检测工具的功能,但2018年对几十项实验结果的审查表明,在基于误用的检测方面,深度学习并不比几十年前的机器学习方法更准确。由于没有一种类型的模型始终是基于误用的检测的最佳选择,研究人员经常发现,最成功的机器学习系统是集合模型,或通过利用多个分类器对分类进行“投票”来对新输入进行分类的模型。这种方法被普遍使用,避免了对任何特定模型的过度依赖(每种模型都可能有自己的盲点),但它也同时表明没有哪个架构明显优于其他架构。

与基于误用的检测相比,基于异常的检测通过标记可疑的行为,无需与过去的攻击进行具体比较。这种类型的检测系统更可能使用无监督的学习方法来聚类网络中的“正常”流量,并对任何偏离该模式的可疑行为发出警告。理论上,基于异常的检测可以识别新型攻击——这是网络安全最困难的领域之一。为了实现这种能力,该领域的研究集中在寻找一种方法,为给定的网络确定适当的“正常”流量基线,因为即使是正常的流量也可能是高度可变的。一个参数不当的入侵检测系统将产生许多误报,而调查这些误报耗时耗力。

遗憾的是,尽管在跟踪单个机器或用户时,基于异常的检测非常有效,但它通常难以有效识别整个网络中的可疑行为。此外,人们长期抱怨异常检测系统会产生许多误报,这说明,很难定义"正常"流量,做到足够严格以检测出所有异常情况,同时又足够宽松以使没有合法行为被标记为异常。此外,如果组织的标准程序发生变化,就会大大削弱异常检测的作用,至少在新的基线形成之前是这样的--许多企业去年受到了这个教训,当时为应对新冠疫情,数百万员工突然开始在家工作。由于与异常检测相关的困难重重,许多组织仅将其用作更标准的基于误用的检测系统的补充。

上述讨论说明,机器学习在入侵检测领域历史悠久,涵盖众多方面。在二十多年的研究过程中,不同的机器学习方法已经适用于多种类型的入侵检测。此外,实证研究和集合模型的持续重要性表明,较新的创新并没有完全取代这些旧模型。与垃圾邮件检测一样,如果认为过去十年机器学习研究的发展,特别是深度学习的兴起,已经完全改变了入侵检测,那就大错特错了。在第三节,我们将再次回到这个话题,讨论一些新的机器学习创新显著改变了入侵检测的方式。

4.3 恶意软件检测

入侵检测系统监测系统或网络的行为,以识别网络受到攻击的迹象,而恶意软件检测系统则检查特定文件,以确定它们是否是恶意的。在早期杀毒软件产品中,最简单的恶意软件检测形式是监测机器的特定失陷指标(indicators of compromise),如确切的文件名或签名(从文件内容提取的特定字节或字符串序列)。通过维护一长串恶意软件签名列表并进行定期扫描,这些反病毒产品尝试确定机器上是否存在与这些已知定义相关的文件。

遗憾的是,这些检测方法很容易被多态或变形病毒轻松规避,这类恶意软件每次传播时都会改变自己的代码,从而确保不同的版本会有不同的签名。多态代码指的是以多种形式出现的任何类型的代码,例如,攻击方创造了多种变体,或者代码每次传播时可以使用不同的密钥来加密自己;相比之下,变形代码在保留了相同功能的同时,从根本上重写了其底层代码。据估计,2018年高达94%的恶意可执行文件表现出多态特征。虽然传统的检测技术仍可用于检测多态或变形的恶意软件(例如,通过查看恶意软件执行时的行动序列,而不是根据原始代码进行匹配),但随着攻击方的改进,这些传统方法变得越来越复杂,计算量也越来越大。

然而,机器学习擅长识别那些无法用简单规则分类的样本之间的共同特征。早在1996年,IBM的研究人员就开始探索使用神经网络对引导扇区病毒(这是一种针对机器启动指令的特殊类型病毒)进行分类。整个21世纪初的其他研究探索了使用统计模型和标准机器学习分类器来检测恶意软件。近年来,人们对利用较新的、基于深度学习的方法进行恶意软件检测的兴趣激增,这些方法有很多优势,例如能够在较少的人为指导下从原始数据中提取相关特征。然而,与入侵检测一样,一些实验结果表明,至少在某些数据集上,经过相同的训练,已有数十年历史的机器学习分类器仍然与更先进的深度学习方法难分伯仲。

值得注意的是,尽管多态和变形病毒不断涌现,许多不使用机器学习的技术在检测和分析恶意软件方面仍然有效。例如,网络防守方可以在沙盒(隔离的虚拟环境,可以允许文件在没有任何与真实系统和数据交互能力的情况下执行)中执行未被识别的文件。沙箱收集有关文件的信息,例如它试图执行什么类型的函数,以确定它是否为恶意的。这种方法允许反病毒产品在不依赖机器学习的情况下检测多态或变形代码,表明机器学习绝不是网络防守方应对网络攻击智能进化的唯一方法。然而,即使是沙箱,也可以用机器学习来增强,以识别与过去的恶意软件相似、但不一定试图执行完全相同行为的文件。

本节强调了两个要点。首先,纵然重点都放在检测任务上,研究人员将传统机器学习技术应用于主要的网络安全任务已长达几十年之久。其次,尽管现在存在着更强大的方法,但通常仅是传统方法的自然进化。

在确定最近的机器学习技术对网络安全的“变革性”影响时,必须牢记这些重要事实。

五、网络安全与人工智能研究前沿技术

近年来,人工智能的创新为我们带来了汽车的自动驾驶、精确的语言翻译、超越人类的游戏竞技。虽然还无法确定这些成就能否转移到网络空间领域,但我们有充分的理由认为,如果这种转移得以实现,机器学习很可能会成为网络防守方的得力助手。

本节探讨了如何将较新的机器学习架构应用于网络安全。随着讨论的深入,本文特别关注四种类型的机器学习方法,这些方法在过去五年中促成了许多人工智能突破:1.深度学习;2.强化学习;3.生成对抗网络(GANs);4.大规模自然语言模型。在这些突破中,深度学习系统的发展在很多方面都是最基础性的。正是深度学习架构与其他类型的方法(如GANs、强化学习系统或自然语言模型)的结合,促成了过去5年的大部分进展,如图2所示。

深度学习是一种以神经网络为模型的通用Al架构。它可以适用于许多任务,从强化学习系统,其中Al代理学习如何与他们的环境互动;到生成对抗网络,其中生成器学习如何产生可以骗绕/躲过判别器的输出;到大规模自然语言模型,可以执行广泛的语言相关任务。

图 2 前沿人工智能架构之间的关系

在对每个阶段的讨论开始之前,我们提供了一个图示,列出了防守方在该阶段可以利用的一些潜在的机器学习工具。这些图示还列出了为实现每个工具可能会依赖的机器学习架构类型,并粗略评估了机器学习能在多大程度上改变任务本身。所有这些都只是大致评估,并参考了后文讨论得出的结论。

5.1 预防

*NLP指的是自然语言处理。本图只列出了每个应用最常见和最具体的底层技术;例如,基于深度学习的GAN会被简单地列为 "GAN"。

我们的网络安全模型的第一阶段是预防——防守方为消除潜在弱点而进行的漏洞发现和修复工作。长期以来,人们致力于打造能够自主发现和修复新漏洞的工具,但直到最近,机器学习的兴起才使之变为可能。在2016年美国国防高级研究计划局(DARPA)赞助的网络超级挑战赛(Cyber Grand Challenge)中,最有希望自动发现漏洞的路线仍然依赖于精心编码的系统,而不是使用机器学习方法。

近年来,研究模糊测试工具的研究人员越来越多地将深度学习作为一种手段,从成功的输入参数中有效地学习,进而发现更多的漏洞。基于深度学习的模糊测试工具通常比旧模型更有效:举例来说,基于深度学习的程序NeuFuzz能够在各种文件类型中找到的导致崩溃的输入的数量,是一个领先的开源模糊测试工具修改版本的三倍之多。在学术界之外,微软也研究了使用深度学习来增强自己的模糊测试工具。

模糊测试工具寻找代码中的漏洞,但网络防守方也可以使用渗透测试(或简称为pentesting)来寻找网络中公开已知的漏洞和不安全的配置。在渗透测试中,经验丰富的黑客会系统地探测网络中的漏洞,以确定潜在的弱点。

除了利用自动模糊测试工具和渗透测试工具发现漏洞外,机器学习可能很快就能提供工具,帮助防守方将优化时间和注意力配置分配给最紧迫的漏洞。

一旦发现漏洞,防守方必须在有限的时间和资源内完成修复。尽管尚存争议,但通用漏洞评分系统(CVSS)是帮助防守方确定漏洞严重性的重要指标,它依靠专家分析来给新的漏洞分配严重性分数。一些研究人员认为,通过智能解析漏洞描述,机器学习和文本挖掘技术可用于自动分配CVSS分数。

其他研究人员利用观察到的在野攻击数据构建了机器学习系统,预测某些漏洞被实际利用的可能性。有证据表明,当这些基于机器学习的风险评估与CVSS结合使用时,组织可以优先修复最有可能被利用的漏洞,在显著减少工作量的同时,达到与之前相似的风险修复水平。综上所述,使用机器学习来改进模糊测试、渗透测试、漏洞报告分析和严重程度评估,可以使组织提高识别漏洞和优先处理漏洞的能力。

5.2 检测

至少在众多流行领域中,检测仍然是深度学习和较新的机器学习方法被认为是潜在的变革力量的关键所在。但很遗憾,到目前为止,深度学习还没有实现革命性突破,未能达到人们的期望。总的来说:尽管深度学习在过去50年的机器学习进步中发挥了根本性的作用,但许多网络安全公司至今仍在大规模使用较简单的模型。

有时流行的报道会忽略,基于机器学习的检测存在一个问题:机器学习系统容易受到几类特定攻击,这些攻击在其他类型检测系统中则不存在。许多机器学习系统做出决定的过程往往不为人所知,并且对于人类分析师察觉不到的细微变化高度敏感,这往往使攻击方有可能找到"对抗样本"——尽管人类无法察觉,但对输入稍加改变就会极大地改变模型的反应。机器学习模型的使用也开辟了新的攻击途径:模型本身必须保持安全,同时防守方也必须确保他们的数据没有被下毒,且他们使用的(通常是开源的)算法和统计软件包没有被篡改。

尽管我们对深度学习改变检测能力的潜力感到悲观,但对抗性攻击的不断增加和威胁规模的不断扩大,使防守方不能无视机器学习的进步。

由于生成对抗网络允许攻击方颠覆基于机器学习和规则的检测系统,我们无法坐视不管,最好的防御可能至少部分依赖于机器学习方法的使用。然而,即使在这里也必须强调,在使机器学习系统面对抗样本的鲁棒性方面,一些研究人员不认为机器学习领域取得了切实进展。虽然对抗性训练对防御系统仍然至关重要,但它可能不足以有效抗衡越来越多的对抗性攻击威胁--这是怀疑机器学习能否为网络防守方提供灵丹妙药的另一个原因。

5.3 响应和恢复

目前已对机器学习驱动的检测系统的进行了大量研究,但有人提出了更雄心勃勃的设想,认为有朝一日人工智能系统可以在网络中自主移动、修补漏洞并与攻击方动态对抗。响应和恢复是一个动态和连续的过程,不容易被分解成离散的结构,这使得构建能够充分自动化人类决策的机器学习工具更加困难。

近年来,一些研究人员逐渐确定人工智能/机器学习系统在响应和恢复过程中可以发挥的更有针对性的作用。例如,一份来自美国国家科学与技术委员会的2020年报告指出,人工智能至少可以通过两种具体方式来帮助响应和恢复过程:1.准确地对正在进行的攻击进行分类,并采取适当的初步响应策略;2.自动决策将机器从网络中隔离或对用户施加限制,以遏制感染。第一种类型的工具可以使网络防守方自动对各种常见类型的攻击做出初步反应,而第二种类型通常有助于遏制安全漏洞扩散到网络的其他部分。在图5中,我们把第一个应用称为 "与对手交战",这将是一个能够理解正在进行的攻击并作出相应反应的机器学习系统的最终目标。第二个目标是移动目标防御的一个简单例子。

5.4 主动防御

为应对新的威胁,具有重大网络安全需求的组织通常必须采取主动措施来制定网络安全战略。本报告将这些行动归入"主动防御"的广泛框架之下。

虽然这个术语有一个具体的国家安全定义,但在这里的使用方式与美国系统网络安全协会(SANS Institute)研究人员的使用方式类似:从干扰到归因到彻底反击的一系列活动。

人工智能在这三种战术中潜在的应用范围很广,表明主动防御这个网络安全模型阶段或许可以从最近的人工智能突破中获益良多。

5.4.1 欺骗

网络防守方可选用的最基本的主动防御措施之一是欺骗:故意伪造一些东西来误导和延缓攻击方。虽然这种策略看起来很简单,但它却可以带来重大的运营效益。

生成逼真的文件或活动资料是机器学习擅长的领域。像GPT-3这样的大规模自然语言模型的兴起,可能会使自动化生成欺骗性文本文件(如马克龙竞选团队的假电子邮件)的过程更容易实现。虽然这项技术可能会被滥用,但防守方可以合理地将其用于欺骗性目的,生成大量欺骗性内部文件来误导攻击方。

除了伪造之外,蜜罐(一种旨在将网络攻击方引诱到看似有吸引力的假目标的安全机制)是网络防守方长期使用的欺骗性工具。蜜罐可以提供虚假文件和数据形式的"诱饵",运行预先编写的脚本互动以挫败对手,或使攻击方误认为自己已经“成功”入侵。然而,为了使攻击方深陷其中,蜜罐需要看起来像真实的生产网络,因此通常需要手动配置、部署和维护,这可能成本高昂,小型组织难以胜任其维护任务。

至少从21世纪初开始,研究人员就开始探索如何利用机器学习来创建更加真实和动态的蜜罐,包括通过使用相对简单的聚类方法。最近几年,研究人员尝试使用基于强化学习的蜜罐,这些蜜罐可以学习如何尽可能长时间地吸引攻击方,同时也可以有效地诱使他们将定制软件下载到自己的机器上。现在就说强化学习的使用改变了这一领域的游戏规则还为时过早,但它至少可以将大部分维护动态蜜罐的复杂操作自动化,使更多的组织能够使用这些类型的蜜罐。

5.4.2 威胁情报

理论上说,通过收集有关潜在对手的威胁情报,防守方可以预测未来的攻击,并建立起更强大的防御体系;但对大多数组织来说,收集、处理和分析威胁情报需要耗费巨大人力物力。然而,在海量数据中寻找模式是机器学习的核心优势,一些研究人员已经开始探索如何利用机器学习和文本挖掘来改进威胁情报分析。例如,可以用机器学习方法来对暗网用户进行聚类,或者利用文本挖掘方法来自动收集、分类和分析暗网论坛和市场上的帖子,使研究人员能够在0day漏洞部署之前识别它们。不难想象,在给定公司名称或其产品清单后,一个完全自动化的机器学习系统可以在暗网上搜索潜在漏洞的线索,然后分析它们,最后生成一份描述预期攻击载体的报告。

其他作为欺骗战术引入的工具也可以被利用来收集关于潜在对手的威胁情报。例如,可以分析和整理从蜜罐系统中收集的数据,从而确定组织是否面临一个持续的威胁行为者,然后可以为安全策略提供信息。甚至像钓鱼邮件这样简单的东西也可以成为收集对手威胁情报的机会。一些研究人员提出了可以对钓鱼邮件生成误导回应的系统,以从攻击方那里获得信息,例如,表面上愿意给诈骗者送钱,但要求攻击方提供支票路由中转代码,然后就可以追踪和识别这些信息。事实上,这是美国国防高级研究计划局DARPA的主动社会工程防御计划的一个主要研究方向,该计划目前正尝试建立能够检测社会工程攻击并自主响应的系统,以欺骗对手暴露身份信息。这些战术跨越了威胁情报收集和直接归因(本节讨论的第三种主动防御战术)之间的界限。

5.4.3 归因

当面临高级持续性威胁(ATP)攻击时,联邦机构和网络安全公司通常会尝试将攻击归因于一个特定的对手。这样有助于确定应该采取什么类型的应对措施,并帮助网络安全公司确定敌人的可能动机,以便最好地保护他们的客户。

当试图对多个攻击进行归因时,最简单的方法是依靠人工分析通过网络日志、防火墙或蜜罐获得的攻击指标。然而,由于大多数的持续网络攻击方会避免留下明显的模式,因此归因也依赖于人工分析和对潜在对手及其总体目标的理解;因此,归因不仅依赖于技术指标,也依赖于战略指标,甚至还可能依赖于对相关地缘政治局势的了解。机器学习不具备这样的分析水平,所以机器学习仍然不太可能成功地将整个归因过程自动化。

尽管如此,机器学习仍然可能在归因过程中提供帮助。例如,如果研究分析人员首先提取攻击的高级描述--包括使用的战术、攻击的国家等--机器学习方法可能能够对这些信息进行聚类以识别类似的攻击。自然语言处理可能帮助归因系统从博客、研究论文和事件响应报告中自动提取与归因有关的信息,减少成功归因所需的人工工作量。

六. 结论

机器学习对网络安全的实践究竟意味着什么,报告提出了四个主要结论:

1. 检测阶段:机器学习将允许对现有检测工具进行持续改进,特别是对于具有广泛大数据能力的公司。但这些进展是渐进式进步,并引入了新的攻击面。

2. 预防、响应和恢复以及主动防御阶段:机器学习没有被普遍使用,但也在逐渐取得进展。振奋人心的进展仍有待于机器学习的重大突破,才能实现全面部署。

3. 总体而言,机器学习将继续产生渐进式的收益,而没有对网络安全行业产生革命性影响。除非机器学习取得重大突破,否则最具变革性的影响可能是来自于通过机器学习,使众多组织容易获得以前未使用或未充分使用的防御战略能力。

4. 目前,机器学习不太可能从根本上打破网络安全的战略平衡,使其向攻击方或防守方倾斜。

在关注机器学习的基本技术能力时,报告搁置了许多其他问题,例如防守方是否能成功实施机器学习系统并充分利用其潜力。

以上结论都是初步的,不是预测性的:它们是否成立将取决于攻击方和防守方如何选择投资和部署这项技术。

相比空谈机器学习如何从整体上改变网络安全,决策者和网络安全从业者更需要思考,机器学习将会如何改变网络安全中的特定任务。

此外,网络安全任务自上世纪90年代起就开始使用机器学习,通过关注这种连续性,我们旨在证明较新的突破将带来网络安全方面的进步(evolutionary),但这并不会是行业革命性的变革(revolutionary)。

机器学习有一天会彻底将整个网络安全模型自动化,无缝地完成多个阶段的工作,而不是仅仅作为工具,协助完成现有的、定义明确的任务。在中短期内,这种可能性微乎其微。

对决策者和从业者来说,更务实的做法是更努力细致了解哪些任务类型可以从机器学习中受益,哪些任务类型不能。有效的政策将需要考虑这些细微差别,以促进有用的研究,使组织能够充分利用新的机器学习工具,并帮助防守方为迎接持续精进的对手做好准备。

关于作者

美国安全和新兴技术研究中心(CSET)

本文节选自 美国安全和新兴技术中心《机器学习与网络安全——疯狂炒作背后的真相》报告。 加入虎符智库会员,定期获取专业研究报告。

声明:本文来自安全内参,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。