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

让人工智能为网络防御服务

时间:2023-03-21 14:10:59 科技观察

网络防御能力正在努力跟上更先进的网络攻击能力。人工智能——尤其是尖端的机器学习(ML)方法——已被用于减轻网络防御者的负担。机器学习对网络防御者来说是优势还是问题,将取决于自动化网络防御系统是否能够应对增加的能力。正如美国国家人工智能安全委员会(NSCAI)所警告的那样,“如果不使用人工智能,对抗具有以机器速度运行的人工智能能力的对手将是一场灾难”。面对成倍增加和不断升级的网络威胁,创新的机器学习方法已经证明了其对网络安全的价值,但很难保证大规模部署具有机器学习能力的防御系统一定能够对抗灵活的攻击者。为了维护网络安全,系统必须在持续网络攻击的压力下可靠地执行机器学习功能。同时,机器学习带来了新的安全挑战。基于ML的系统可以依赖数据中的模式来开发预测模型,这可能非常有效,但也使基于ML的系统容易受到错误和恶意干扰的影响。能够操纵数据输入的攻击者可以创建一种欺骗性的数据模式来攻击预测模型,这是包括美国国家安全界在内的各方广泛承认的机器学习漏洞。因此,迫切需要开发能够防止欺骗攻击的鲁棒机器学习系统,但各种鲁棒性措施往往会损害机器学习系统的准确性。这种准确性和稳健性之间的权衡带来了一个问题,例如,基于机器学习的防病毒系统会动态调整以抵御不断发展的恶意软件攻击,同时开发人员可以微调系统并对其进行强化防止欺骗攻击,但这样做会阻止系统准确检测新的恶意软件。可见,在部署基于机器学习的系统应对复杂多变的威胁时,监管机构需要不断地在不同风险之间做出权衡。本报告重点关注基于自动化机器学习的网络防御所带来的挑战。预测基于机器学习的系统的大规模部署将如何影响网络攻防需要了解机器学习的技术权衡和此类系统的影响。局限性。1.通过机器学习为网络防御创造公平的竞争环境基于机器学习的系统可以在大量数据中找到有助于在不确定情况下进行预测的模式。在从图像分类到复杂策略游戏的任务中,它们可以达到或超过人类的能力,应用到网络安全中,可以形成检测能力,从而大大提高了攻击者的门槛。例如,入侵检测系统可以利用大量网络活动数据来定义正常行为的基线,以帮助网络防御者更快、更准确地发现异常。攻击者不仅需要避免明显的危险信号,他们还需要在更精细的层面上保持活动的合法外观。恶意软件检测还将受益于“可以在大型数据集中发现更广泛的模式以区分恶意代码和良性代码”的系统。网络安全服务通常使用机器学习来帮助分析恶意软件,例如,通过识别相似的恶意样本集并将它们与已知的恶意软件进行匹配。传统的防病毒系统难以跟上攻击者的代码更新,理想情况下,支持机器学习的系统将能够通过识别表征恶意代码的更深层模式来检测未发现的恶意软件。恶意软件。机器学习不仅具有自动检测的潜力,而且具有主动防御攻击的潜力。理论上,机器学习可以通过动态调整来破坏或减轻攻击。被称为“蜜罐”的诱饵数据或诱饵网络早已存在,但机器学习可以使它们适应持续的攻击,并更有效地引诱攻击者暴露他们的能力。研究人员正在试验一种系统,该系统可以即时自动重新配置网络以阻止攻击者。防御性应用程序可以消除攻击者长期以来享有的不对称优势,包括攻击者精心计划操作和出其不意地攻击防御者的能力,并且一旦进入网络,恶意软件就可以适应和适应可预测的目标环境,从而突破防御。基于机器学习的防御系统可以预测未来的攻击并立即做出反应,识别防御者潜在的“主场优势”并对攻击者采取出其不意和欺骗的手段。然而,真正考验机器学习的是它能否应对攻击者不断调整的战术(包括针对机器学习模型本身缺陷的攻击)。老练的攻击者甚至利用机器学习本身来发动攻击。例如,攻击者可能会使用机器学习功能来研究如何在目标环境中隐藏攻击或伪装与命令和控制服务器的通信以欺骗入侵检测系统。因此,机器学习能否为网络防御创造公平的竞争环境,关键取决于其抵御系统性攻击的能力。2.基于机器学习的网络防御问题即使是最复杂的基于机器学习的系统也常常容易受到欺骗。攻击者可以通过将恶意软件伪装成合法软件来逃避基于机器学习的恶意软件分析,或者通过模仿正常用户行为来欺骗入侵检测系统。因此,基于ML的防御必须具有抵抗力,这意味着它们在面对此类欺骗时仍能可靠地执行,而将ML应用于网络防御会带来许多问题。2.1 机器学习中的错误基于机器学习的系统在数据中寻找对预测有用的模式或统计规律。为了最大限度地提高预测的准确性,系统将寻找任何有用的模式,无论它们是否会导致错误。例如,图像分类器可以根据图像中是否有雪来学习区分狼和哈士奇。对训练数据集进行准确分类的最有效方法是在数据集中包含许多有雪的狼和没有雪的哈士奇的图像。然而,这种相关性可能会导致系统在遇到更具代表性的训练集或故意欺骗时出错。攻击者可以发现此漏洞以创建欺骗性条目,例如,将雪图像添加到哈士奇图像以混淆识别。机器学习研究充满了这样的“对抗性例子”,研究人员在其中创造欺骗性输入以改变模型的预测。越来越多的文献记录了此类攻击传播到一系列网络安全应用程序,包括垃圾邮件过滤器、恶意软件和入侵检测系统。基于机器学习的系统容易受到代码编写错误、软件错误等的影响。更准确地说,基于机器学习的系统依赖于识别关联而不是理解因果关系,但数据通常充满虚假关联(例如“雪”和“狼”之间的关联),尽管这些关联源自有用的经验法则,但并不总是准确的。事实上,一些研究人员将对抗性示例描述为机器学习的“属性而不是错误”,因为它们表明系统已经学习了可预测的模式。尽管攻击者利用的图像可以欺骗基于机器学习的系统,但该系统正在做它应该做的事情——根据关联进行预测。由于基于识别关联进行预测在某种程度上是基于机器学习的系统所固有的,因此还没有开发出防止这些漏洞的简单方法。在实践中,很难看出基于机器学习的系统何时学会了虚假关联(例如“雪”和“狼”之间的关联),但可以欺骗系统的输入组合数量如此之多以至于不可能通过所有测试。结合起来寻找错误。这些挑战促使人们寻找可靠的方法来抵御“对抗性例子”,但收效甚微。2.2 准确性和稳健性之间的权衡研究人员已经找到了各种方法来清除虚假关联,从而产生更能抵抗攻击的模型。然而,这样做是以牺牲模型的整体准确性为代价的。这似乎是因为上述特性有助于在不确定的情况下进行预测。像区分狼和哈士奇这样的任务对于基于机器学习的系统来说是令人生畏的。开发者可以专门制作数据,让训练系统不依赖雪作为指标,但如果没有这个指标,系统就很难识别狼和哈士奇。换句话说,系统可能不太容易受到欺骗,但它在执行其主要任务时的效率也会降低。为了稳健性而牺牲一些准确性可能是值得的,但在某些情况下,这会造成两难选择。考虑一个与自动驾驶汽车相关的示例,其中开发人员需要在两个系统之间进行选择,一个是每百万英里发生一次事故(在正常情况下),另一个是每100,000英里发生一次事故的系统比一次事故更能抵御网络攻击。后者可能更健壮,因为它避免依赖某些模式,使攻击者更难欺骗,但它也增加了系统在这些条件下出错的风险。鉴于此,如果开发者评估某个威胁行为者不太可能有成熟的手段和足够的动机发动攻击,那么开发者可以合理地选择前者系统;如果面临严重的恶意攻击威胁,那么牺牲一些准确性来提高稳定性也未尝不可。但是,如果模型试图预测的恰恰是对手的反预测行为呢?在这种情况下,准确性和稳健性之间的权衡相当于对不同类型的恶意威胁进行优先排序。例如,一个基于机器学习的系统的任务是检测恶意软件,以及恶意命令和控制服务器之间的通信,可能容易受到攻击者为逃避模型预测而改变的恶意软件流量的攻击。开发人员可以使用对抗性示例来训练系统对此类攻击免疫,但这实际上可能会使系统在检测未变化的恶意软件流量时表现更差。最大化防病毒系统的准确性可能会提高其整体检测率,同时不可避免地使其更容易受到欺骗攻击(例如那些试图将恶意软件伪装成合法文件的攻击)。研究人员成功地演示了对部署机器学习的高度准确的防病毒系统的攻击并进行了逆向工程,发现该模型已经学会将某些字符序列与良性文件强烈关联。一个强大的协会联系在一起。通过简单地将这些序列附加到恶意文件,他们可以欺骗系统将其归类为良性文件。经过精心设计以消除此类盲点的系统可能不太容易受到此类欺骗的影响,但通常也更容易出现漏报(系统未能检测到恶意软件)或误报(系统错误地标记恶意软件)良性文件视为恶意文件)。2.3 基于机器学习的网络防御的持续平衡即使在有利的条件下,也很难在不同的系统风险之间做出充分平衡的权衡。面对不断发展的网络威胁,这成为一个特别棘手的问题,原因如下。首先,攻击者可以不断探测防御以寻找基于机器学习的系统中的漏洞。如果进行多次尝试,他们很可能会利用该漏洞成功规避高度准确的基于机器学习的系统。此外,网络安全世界中有许多攻击者互相观察并从彼此的成功和失败中学习。由于对一个机器学习模型的欺骗输入通常可以愚弄其他经过训练以执行相同任务的模型,因此攻击者有可能反复攻击机器学习系统并从中吸取有用的教训,从而开发出愚弄其他系统的手段。换句话说,防御者不能仅仅因为他们没有测试他们就假设攻击者不能欺骗和攻击他们基于ML的系统。其次,攻击者塑造用于训练系统检测恶意行为的数据。攻击者可以通过输入数据来“毒害”ML系统,这些数据会导致ML系统学习关联,从而使系统在未来容易受到相应攻击。例如,攻击者可能试图通过让机器学习系统适应网络上攻击者的存在来误导入侵检测系统。在部署时学习的基于机器学习的系统必须既能适应对手的行为,又能检测对手的欺骗行为。三是进攻能力变化等因素使环境更加复杂。就像识别狼和哈士奇一样,描述正常网络行为或常见恶意软件的数据很快就会过时。为应对持续性威胁而部署的大规模网络防御系统在部署时可能需要不断学习和适应,这意味着通过不断接收新的训练数据来动态更新模型,以达到应对持续性威胁的效果,同时攻击者也有试图智胜此类系统或积极破坏它们的适应性。三、如何让机器学习在网络防御中发挥作用机器学习将是网络防御者应对网络攻击的重要武器之一。然而,安全部署基于机器学习的系统需要网络防御者持续管理此类系统的稳态。相关政策和策略应有助于网络防御者对机器学习功能做出明智的权衡。本节为希望塑造新兴的支持机器学习的网络安全生态系统轨迹以改善网络防御者处境的政府提供了三项建议。3.1 将安全性集成到基于机器学习的网络安全应用程序的设计和开发中通常,开发机器学习应用程序的目标是以最有效的方式最大限度地提高准确性。为了实现网络安全,基于机器学习的系统不仅需要做出准确的预测,还需要在不断变化的环境条件和对抗性干扰的持续压力下做出可靠的预测。为了克服这些挑战,有必要创建一个适应网络安全上下文的“动态对抗学习模型”。从设计和测试到部署和更新,将安全性维护为“迭代过程”的整体方法优先考虑稳健性和准确性。将这种方法付诸实践需要融合机器学习安全和网络安全的研究,主要集中在3个研究领域。一种是通过为特定网络安全应用程序开发逼真的威胁模型来了解威胁。防御者需要评估相对威胁,例如一些攻击者能够直接测试已部署的基于ML的系统,而其他攻击者可能仅间接了解上述模型。第二是确定关键稳健性并开发测量和验证它们的方法。具体而言,开发人员需要通过各种技术证明“大局”的稳健性不会因部署期间的模型学习变化而失效。一位专家将机器学习的当前安全状态与1920年代的密码学进行了比较:不仅最安全的系统很容易被破解,研究人员还缺乏适当评估安全性的指标。第三是开发更广泛的系统级防御,以检测或防止可能危及模型的攻击。其中包括检测对系统的探测尝试,并防止系统将信息“泄露”给试图对其进行逆向工程的攻击者。整体防御方法既需要减少模型中的漏洞,又需要采取措施防止攻击者发现和利用剩余的漏洞。3.2 通过系统多样性和冗余性改善弹性网络防御将受益于对机器学习创新方法的进一步研究,这些方法将多样性和冗余性纳入系统的设计和实施。例如,网络安全供应商F-Secure的“Blackfin项目”寻求开发多个机器学习代理,对网络环境的不同方面进行建模并协同工作以识别网络入侵。通过组合依赖于不同模态或不同感知方式的多个模型,生成的系统可能比一堆查看相同数据的模型更不容易作弊。即使有更好的稳健性工具,基于机器学习的系统也不会万无一失。如上所述,供应商通常依赖各种工具和技术,包括那些基于机器学习的工具和技术。然而,随着对基于ML的系统的依赖程度越来越高,政策制定者必须建立各种风险容忍度阈值,以指导在何处以及如何依赖基于ML的系统,以及何时使用非ML工具和保护措施对其进行补充。3.3 警惕试图破坏机器学习发展的战略竞争对手网络防御者对机器学习的依赖将极大地吸引对手(尤其是寻求使用机器学习进行网络操作的国家行为者)寻求破坏发展过程机器学习。即使只知道目标模型的部分参数、架构或训练数据和方法,也会降低攻击基于机器学习的系统的难度。在技??术层面上,网络攻击者将寻找机会通过寻求获得训练数据集、渗透商业或开源项目或简单地购买产品进行逆向工程研究来获得有关基于机器学习的系统内部运作的情报。他们甚至可能将后门插入到模型中,这些模型可以跟随模型进入已部署的防御系统,从而破坏基于机器学习的系统。在战术层面,防御的成功将取决于政府和私营部门之间的协调,更具体地说,取决于在部署防御系统之前预测和击败针对极端威胁的攻击的能力。破坏性攻击。提供商必须仔细检查和保护对其服务完整性至关重要的数据和组件。政府机构应探索如何保护供应链并防止网络攻击者获取敏感技术和数据,包括机器学习能力。4.结语人工智能不是网络安全的万能药,但有可能成为网络安全不可或缺的一部分。现有的机器学习方法并不是为安全而设计的,更不用说为以不断变化和欺骗为特征的环境而设计了。机器学习在网络安全中日益重要的作用也引发了一个严重的问题:目前在机器学习的设计和实施中做出的选择或多或少会影响网络防御者的立场。赢得这一挑战需要合作,以便机器学习安全和网络安全领域的研究人员和从业人员能够弥合他们之间的差距。与此同时,政策制定者需要考虑如何引导开发和使用机器学习能力的利益相关者超越效率,将安全放在首位。大规模主动管理基于机器学习的网络防御问题为网络防御者创造了更好的环境。