让人工智能为网络防范服务
发布时间:2022-04-29 10:26:33 所属栏目:安全 来源:互联网
导读:网络防御能力正在努力跟上更先进的网络进攻能力的发展步伐。人工智能特别是尖 端 的 机 器 学 习(Machine Learning,ML) 方法已被用来减轻网络防御者的负担。对网络防御者而言,机器学习是一项优势还是问题,将取决于自动化的网络防御系统能否应对愈演愈烈的
网络防御能力正在努力跟上更先进的网络进攻能力的发展步伐。人工智能——特别是尖 端 的 机 器 学 习(Machine Learning,ML) 方法——已被用来减轻网络防御者的负担。对网络防御者而言,机器学习是一项优势还是问题,将取决于自动化的网络防御系统能否应对愈演愈烈的各类能力。正如美国人工智能国家安全委员会(National Security Commission on Artificial Intelligence,NSCAI)警告称,“在不使用人工智能的情况下,对抗以机器速度运行,并且具有人工智能能力的对手将是一场灾难”。 这种在准确性与稳固性之间权衡的过程中带来了一个问题,例如,一套基于机器学习的防病毒系统通过不断动态调整,以抵御不断发展的恶意软件攻击,与此同时,开发人员可以细致地监管该系统,并加强其防范欺骗性攻击的能力,但这样又会妨碍该系统准确检测出新的恶意软件。由此可见,在部署机器学习型系统以应对复杂多变的威胁时,监管方需要不断在不同风险之间进行取舍。 本报告重点关注了基于自动化机器学习的网络防御而出现的挑战,要想预见大规模部署机器学习型系统将如何影响网络进攻和防御,须了解机器学习在技术上的取舍问题及此类系统的局限性。 1.通过机器学习为网络防御创造公平的对抗环境 机器学习型系统能在大量的数据中发现模式,这些模式对于在不确定的情况下进行预测非常有用。在从图像分类到复杂策略博弈的任务中,它们可以达到或超过人类的能力,应用到网络安全方面就能形成检测能力,从而大大提高攻击者的门槛。例如,入侵检测系统可以利用大量网络活动数据来定义正常行为的基线,以帮助网络防御者更快、更准确地发现异常。攻击者不仅需要避免明显的危险信号,还需要在更细微的层面上维持活动的合法表象。恶意软件的检测同样也受益于“能够通过大量数据集来发现更广泛的模式,从而区分恶意代码和良性代码”的系统。网络安全服务通常使用机器学习来帮助分析恶意软件,例如,识别类似的恶意样本集,并将其与已知的恶意软件进行匹配。传统的防病毒系统很难跟上攻击者更新代码的速度,而在理想情况下,启用机器学习型系统将能通过识别更深层次的模式(这些模式具有恶意代码的特征)来检测未被发现的恶意软件。 机器学习不仅具有自动检测的潜力,还具有主动防御攻击的潜力。从理论上讲,机器学习可以通过动态调整来干扰或减轻攻击。被称为“蜜罐”的诱饵数据或诱饵网络早即有之,但机器学习可以使它们适应持续不断的攻击,更有效地引诱攻击者,使他们暴露自己的能力。研究人员正在试验一种系统,可以动态地对网络进行自动重新配置,以阻止攻击者的操作。 防御性应用程序可以消除攻击者长期以来享有的不对称优势,包括攻击者能够仔细规划作战并突袭防御者,一旦进入网络,恶意软件就能在可预测的目标环境下实现自适应,并不断调整能力以突破防御。机器学习型防御系统可以预见未来的攻击并立即做出反应,其能意识到防御者潜在的“主场优势”,并对攻击者采取突然袭击和欺骗手段。然而,机器学习面临的真正考验是能否应对攻击者不断调整战术的攻击方式(包括针对机器学习模型本身缺陷的攻击)。高水平的攻击者甚至利用机器学习本身发起攻击。例如,攻击者可能利用机器学习功能,研究如何在目标环境中隐藏攻击或伪装与命令和控制服务器之间的通信,以达到欺骗入侵检测系统的目的。因此,机器学习能否为网络防御创造公平的对抗环境,关键取决于它是否有能力抵御系统性的攻击。 2.机器学习型网络防御面临的问题 即使是最复杂的机器学习型系统,也常常容易受到欺骗。攻击者可以通过将恶意软件伪装成正常软件来规避基于机器学习的恶意软件分析,或者通过模仿正常的用户行为来欺骗入侵检测系统。因此,基于机器学习型防御必须具有抵抗能力,这意味着它们在面对这种欺骗时仍能可靠地执行,与此同时,机器学习应用于网络防御也会面临诸多问题。 2.1 机器学习中的漏洞 机器学习型系统会在数据中寻找对预测有用的模式或统计规律。为了最大限度地提高其预测的准确性,系统将寻找任何有用的模式,不管它们是否会导致错误。例如,一种图像分类器可根据图像中是否有雪来学习如何区分狼和哈士奇。准确分类训练数据集的最有效方法就是在数据集中纳入许多有雪的狼图像和没有雪的哈士奇图像。但是,当遇到更具代表性的训练集或蓄意欺骗时,这种关联性可能会导致系统出错。攻击者可以发现此漏洞,从而创建一个欺骗性输入项,例如,在哈士奇图像中添加像雪一样的图像以混淆识别。在机器学习的研究中充满了这样的“对抗性样例”,研究人员为了改变模型的预测结果而创建欺骗性输入项。越来越多的文献证明这类攻击蔓延到了垃圾邮件过滤器、恶意软件及入侵检测系统等一系列网络安全应用程序。 机器学习型系统易受到写入代码中的错误、软件漏洞等欺骗。更准确地说,机器学习型系统依赖于识别关联性,而不是理解因果关系,但在数据中常常充斥着虚假关联(例如“雪”和“狼”之间的关联),这些关联虽然源于有用的经验法则,但并不总是准确的。事实上,一些研究人员将对抗性示例描述为机器学习的“特性而非漏洞”,因为它们证明了系统已经学会了一种可供预测的模式。即使被攻击者利用的图像可以欺骗机器学习型系统,系统也在做它应该做的事情——根据关联进行预测。 由于某种程度上,基于识别关联性进行预测是机器学习型系统的固有特性,因此,当前还未研究出容易的方法来防止这些漏洞的出现。在实践中,很难看出机器学习型系统何时学会了虚假关联(例如“雪”和“狼”之间的关联),但可能欺骗系统的输入项组合数不胜数,因此也不可能通过测试每一组合来找出漏洞。这些挑战促使人们寻找可靠的方法来抵御“对抗性样例”,但收效甚微。 2.2 准确性与稳固性之间的取舍 研究人员找到了各种方法来清除虚假关联,从而产生一个更能抵御攻击的模型。然而,这样做是以牺牲模型的总体准确性为代价的。这似乎是因为前述特性有助于在不确定的情况下进行预测。对于机器学习型系统来说,像区分狼和哈士奇这样的任务是艰巨的。开发者可以专门制作数据让训练系统不要依赖雪作为指标,但如果没有这个指标,系统就很难识别狼和哈士奇。换句话说,这个系统可能不太容易受到欺骗,但在执行主要任务时其效率也较低。 为了稳固性牺牲一些准确性可能是值得的,但在某些情况下,这会造成两难的局面。设想一个与自动驾驶汽车有关的案例,开发人员需要在两套系统之间做出选择,一套是每百万英里(在正常情况下)发生一次事故的系统,另一个是每十万英里发生一次事故但更能抵御网络攻击的系统。后者可能更稳固,因为它避免依赖某些模式,使攻击者更难实施欺骗,但同时也增加了系统在这些条件下出错的风险。鉴于此,如果开发人员评估认为,某一威胁行为体不太可能有高明的手段和充分的动机发动攻击,那么开发人员可能会合理地选择前一套系统;如果在面临严重的恶意攻击威胁时,那么为了提升稳固性而牺牲一些准确性也未尝不可。 但如果模型所要预测的正是对手的反预测行为呢?在这种情况下,在准确性与稳固性之间取舍相当于对不同类型的恶意威胁进行优先级排序。例如,负责检测恶意软件、恶意命令和控制服务器之间的通信的机器学习型系统可能容易受到恶意软件流量攻击,而这些恶意软件流量经过攻击者更改可以规避模型预测。开发人员可以通过对抗性样例来训练系统,使其不受此类攻击的影响,但这实际上可能会使系统在检测未更改的恶意软件流量方面表现得更加糟糕。 最大限度地提高防病毒系统的准确性可能会提高其总体检出率,同时又难免使其更容易受到欺骗性攻击(例如试图将恶意软件伪装成合法文件的攻击)。研究人员成功演示了对高度准确、部署了机器学习功能的防病毒系统进行攻击,同时对该防病毒系统进行了逆向工程研究,结果发现该模型已经学会了将某些字符序列与良性文件牢牢关联到一起的强烈关联。他们只需将这些序列附加到恶意文件中,就可以欺骗系统将其归类为良性文件。为消除此类盲点而精心设计的系统可能不易受到此类欺骗,但通常也更容易发生漏报(系统未检出某一恶意软件)或误报(系统将良性文件错误标记为恶意文件)。 2.3 机器学习型网络防御的持续平衡 即使在有利的条件下,也很难在不同的系统风险之间做出足够平衡的取舍。面对不断演变的网络威胁,这将成为一个特别棘手的问题,原因如下文所述。 第一,攻击者可以不断地试探防御,以搜索机器学习型系统中的漏洞。如果进行多次尝试,他们很可能利用漏洞成功地避开高准确度的机器学习型系统。此外,网络安全领域有许多攻击者会相互观察和学习彼此的成败经验。由于针对某一机器学习模型的欺骗性输入项通常也能欺骗为执行同一任务而训练的其他模型,因此,攻击者可能对一个机器学习型系统进行反复攻击,并从中吸取有用的经验教训,进而研究出能欺骗其他系统的手段。换句话说,防御者不能仅仅因为攻击者没有试探过他们的机器学习型系统,就认为攻击者无法对其进行欺骗和攻击。 第二,不断变化的进攻能力等因素使得环境变得更加复杂。就像识别狼和哈士奇一样,用于描述正常网络行为或常见恶意软件的数据很快就会过时。为应对持续威胁而部署的大规模网络防御系统可能需要在部署时进行不断学习和适应,这意味着要通过不断地接受新的培训数据来动态更新模型,达到应对持续威胁的效果,同时攻击者也在试图智取此类系统或积极扰乱其适应过程。 3结语 人工智能不是网络安全的灵丹妙药,但却可能成为网络安全中不可或缺的一环。现有的机器学习方法不是为保障安全性而设计的,更不是为一个以不断变化和欺骗为特征的环境而设计的。机器学习在网络安全方面发挥着日益重要的作用,同时也提出了一个严重的问题:当前在机器学习的设计和实现方面所做的选择,或多或少会影响网络防御者所处的局面。要想赢得这一挑战,就得开展协同合作,以便使机器学习安全领域和网络安全领域的各类研究及从业人员能够跨越彼此间的鸿沟。与此同时,决策者需要考虑如何引导开发和使用机器学习功能的利益相关者不要仅着眼于效率,而是优先考虑安全问题。若能积极主动地管理大规模的机器学习型网络防御问题,就能为网络防御者开创更好的局面。 (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |