一文看尽三种针对人工智能系统的进击技能及防御策略_模子_进击者
本文综述了三种针对人工智能系统的攻击技能——对抗性输入、数据中毒攻击及模型盗取技能,在每一种攻击的谈论中都加入了具体例子及防御策略,旨在为所有对利用人工智能进行反滥用防御感兴趣的人供应一个概述。
对分类器的高层次攻击可以分为以下三种类型:
对抗性输入:这是专门设计的输入,旨在确保被误分类,以躲避检测。对抗性输入包含专门用往返避防病毒程序的恶意文档和试图躲避垃圾邮件过滤器的电子邮件。数据中毒攻击:这涉及到向分类器输入对抗性演习数据。我们不雅观察到的最常见的攻击类型是模型偏斜,攻击者以这种办法污染演习数据,使得分类器在归类好数据和坏数据的时候向自己的偏好倾斜。我们在实践中不雅观察到的第二种攻击是反馈武器化(feedback weaponization),它试图滥用反馈机制来操纵系统将好的内容误分类为滥用类(例如,竞争者的内容或者报复性攻击的一部分)。模型盗取技能:用来通过黑盒探测「盗取」(即复制)模型或规复演习数据身份。例如,这可以用来盗取股市预测模型和垃圾邮件过滤模型,以便利用它们或者能够针对这些模型进行更有效的优化。这篇文章依次磋商了每一类攻击,供应了详细的例子,并且谈论了可能的缓解方法。
这篇文章是关于如何利用人工智能构建鲁棒的反滥用保护系统系列文章中的第四篇,也是末了一篇。第一篇文章阐明了为何 AI 是构建鲁棒的保护系统的关键,这种保护用来知足用户期望和日益提升的繁芜攻击。在先容完构建和启动一个基于 AI 的防御系统的自然过程之后,第二篇博文涵盖了与演习分类器干系的寻衅。第三篇文章磋商了在生产中利用分类器来阻挡攻击的紧张困难。
这一系列文章是根据我在 RSA 2018 上的演讲写出来的。
声明:这篇文章旨在为所有对利用人工智能进行反滥用防御感兴趣的人供应一个概述,它是那些正在跳跃不雅观望的人的潜在蓝图。因此,这篇文章侧重于供应一个清晰的高层次总结,故意不深入技能细节。也便是说,如果你是一名专家,我相信你会创造你以前没有听说过的想法、技能和参考资料,希望你会受到启示,并进一步探索它们。
对抗性输入
对手不断用新的输入/有效载荷来探测分类器,试图躲避探测。这种有效载荷被称为对抗性输入,由于它们被明确设计成绕过分类器。
这是一个对抗输入的具体例子:几年前,一个聪明的垃圾邮件发送者意识到,如果同一个 multipart 附件在一封电子邮件中涌现多次,Gmail 将只显示上图屏幕截图中可见的末了一个附件。他将这一知识武器化,增加了不可见的第一个 multipart,个中包含许多著名的域,试图躲避检测。此攻击是称为关键字添补的攻击类别的一个变体。
一样平常来说,分类器迟早会面临两种对抗性输入:变异输入,这是为避开分类器而专门设计的已知攻击的变体;零日输入,这是在有效载荷之前从未见过的。让我们依次探究每一种对抗性输入。
变异输入
在过去的几年里,我们看到地下做事爆炸式增长,这种做事旨在帮助网络犯罪分子制造不可探测的有效载荷,在秘密天下中最有名的是 FUD(完备不可探测的) 有效载荷。这些做事从许可针对所有防病毒软件测试有效负载的测试做事,到旨在以使恶意文档不可检测的办法稠浊恶意文档的自动打包程序。上面的截图展示了两个这样的做事。
专门从事有效载荷制造的地下做事的重新涌现凸显了这样一个事实:
攻击者主动优化攻击,以确保最小化分类器检测率。
因此,必须开拓检测系统,使攻击者难以进行有效负载优化。下面是三个关键的设计谋略来帮助实现这一点。
1. 限定信息透露
这里的目标是确保攻击者在探查你的系统时得到尽可能少的收成。保持反馈最小化并尽可能延迟反馈是很主要的,例如避免返回详细的缺点代码或置信度值。
2. 限定探测
此策略的目标是通过限定攻击者针对你的系统测试有效负载的频率来降落攻击者的速率。通过限定攻击者对你的系统实行测试的频率可以有效降落他们设计有害有效负载的速率。
这一策略紧张是通过对稀缺资源(如 IP 和帐户)履行速率限定来实现的。这种速率限定的范例例子是哀求用户办理验证码,验证他是否发布的太频繁,如上所示。
这种主动限定活动率的负面影响是,它会鼓励不良行为者创建假账户,并利用受损的用户打算机来分散他们的 IP 池。业内广泛利用限速是非常生动的黑市论坛兴起的一个紧张驱出发分,在这些论坛中,账户和 IP 地址被常规出售,如上面的截图所示。
3. 集成学习
末了但同样主要的是,结合各种检测机制,使攻击者更难绕过全体系统。利用集成学习将基于荣誉的检测方法、人工智能分类器、检测规则和非常检测平分歧类型的检测方法结合起来,提高了系统的鲁棒性,由于不良行为者不得不同时制作避免所有这些机制的有效载荷。
例如,如上面的截图所示,为了确保 Gmail 分类器对垃圾邮件制造者的鲁棒性,我们将多个分类器和赞助系统结合在一起。这样的系统包括荣誉系统、大型线性分类器、深度学习分类器和其他一些秘密技能。
深度神经网络对抗攻击实例
如何制作欺骗深度神经网络(DNN)的对抗例子是一个非常生动的干系研究领域。现在,创建难以察觉的扰动,彻底骗过 DNN 是一件小事,如上面从论文《Explaining and Harnessing Adversarial Examples》(https://arxiv.org/abs/1412.6572)截取的图片所示。
最近的研究 (https://arxiv.org/abs/1711.11561) 表明,CNN 随意马虎受到对抗性输入攻击,由于他们方向于学习表面的数据集的规则性,而不是很好地泛化和学习不太随意马虎受到噪声影响的高等表征。
这种攻击会影响所有 DNN,包括基于增强学习的 DNN (https://arxiv.org/abs/1701.04143 ),如上面视频中所强调的。要理解更多关于此类攻击的信息,请阅读 Ian Goodfellow 关于此主题的先容文章,或者开始考试测验 Clever Hans 的实验 (https://github.com/tensorflow/cleverhans)。
从防御者的角度来看,这种类型的攻击已经被证明(到目前为止)是非常有问题的,由于我们还没有有效的方法来防御这种攻击。从根本上说,我们没有一种有效的方法让 DNN 为所有输入产生良好的输出。让他们这样做是非常困难的,由于 DNN 在非常大的空间内实行非线性/非凸优化,我们还没有教他们学习泛化良好的高等表征。你可以阅读 Ian 和 Nicolas 的深度文章(http://www.cleverhans.io/security/privacy/ml/2017/02/15/why-attacking-machine-learning-is-easier-than-defending-it.html)来理解更多关于这个的信息。
零日输入
另一种可以完备抛弃分类器的明显的对抗性输入是新的攻击。新的攻击不常发生,但知道如何应对仍旧很主要,由于它们可能具有相称大的毁坏性。
只管涌现新攻击有许多不可预测的潜在缘故原由,但根据我们的履历,以下两种事宜可能会触发新攻击的涌现:
新产品或功能推出:实质上,增加功能会为攻击者打开新攻击面,有利于它们快速进行探查。这便是为什么新产品发布时供应零日防御是必要的(但很难)。增加褒奖 :虽然很少谈论,但许多新的攻击激增是由攻击媒介推动的,变得非常有利可图。这种行为最近的一个例子是,针对 2017 年底比特币价格飙升,滥用 Google Cloud 等云做事来挖掘加密数字货币的行为有所举头。随着比特币价格飙升至 1 万美元以上,我们看到新的攻击风起云涌,企图盗取 Google 云打算资源用于挖掘。稍后我将在这篇文章中先容我们是如何创造这些新攻击的。
总之,Nassim Taleb 形式化的黑天鹅理论(Black swan theory)适用于基于人工智能的防御,就像它适用于任何类型的防御一样。
不可预测的攻击迟早会抛弃你的分类器并将产生重大影响。
然而,不是由于你无法预测哪些攻击会抛弃你的分类器,或者这样的攻击什么时候会攻击你,而你无能为力。你可以环绕这类打击事宜进行方案,并制订应急操持来缓解这种情形。在为黑天鹅事宜做准备时,这里有几个可以探索的方向。
1. 制订事宜相应流程
首先要做的是开拓和测试事宜规复过程,以确保在措手不及时做出适当反应。这包括但不限于:在调试分类器时,有必要的控件来延迟或停滞处理,并知道调用哪个。
Google SRE(站点可靠性工程)手册有一章关于事宜管理(https://landing.google.com/sre/book/chapters/managing-incidents.html),还有一章关于应急相应 ( https://landing.google.com/sre/book/chapters/emergency-response.html)。有关更加以网络安全为中央的文档,该当查看 NIST (National Institute of Standards and Technology)网络安全事宜规复指南(https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-184.pdf)。末了,如果你更乐意看一段对话,请看一下「Google 如何运行灾害规复培训 (DiRT) 程序」的视频 (https://www.usenix.org/conference/lisa15/conference-program/presentation/krishnan),以及「Faceboook 如何做失事宜相应」的视频(https://www.usenix.org/node/197445)。
2. 利用迁移学习来保护新产品
明显的关键困难是你没有过去的数据来演习你的分类器。缓解这一问题的一种方法是利用迁移学习,它许可你重用一个域中已经存在的数据,并将其运用到另一个域。
例如,如果你处理图像,你可以利用现有的预先演习好的模型(https://keras.io/applications/),而如果你处理文本,你可以利用公共数据集,比如Toxic Comment的 Jigsaw 数据集。
3. 利用非常检测
非常检测算法可以用作第一道防线,由于从实质上说,新的攻击将产生一组从未碰着过的非常,这些非常与它们如何利用你的系统有关。
引发一系列新反常征象的新攻击的历史性案例是针对马萨诸塞州 WinFall 彩票游戏的麻省理工赌钱集团攻击(https://www.theatlantic.com/business/archive/2016/02/how-mit-students-gamed-the-lottery/470349/)。
早在 2005 年,多个赌钱集团就创造了 WinFall 彩票系统的一个毛病:当累积奖金在所有参与者之间平分时,你每买一张 2 美元的彩票,均匀就能挣 2.3 美元。每次资金池超过 200 万美元时,这种被称为「roll-down」的分裂就会发生。
为了避免与其他团体分享收益,麻省理工学院的团体决定提前三周大规模买断彩票,从而引发一场减持行动。很明显,这种从极少数零售商手中购买的大量彩票造成了彩票组织察觉到的大量非常征象。
最近,正如本文前面提到的,当比特币价格在 2017 年猖獗上涨时,我们开始看到一大批不良行为者试图通过免费利用 Google cloud 实例进行挖掘,从这一热潮中获益。为了免费获取实例,他们试取利用许多攻击媒介,包括试图滥用我们的免费层、利用被盗信用卡、危害合法云用户的打算机以及通过网络钓鱼挟制云用户的帐户。
很快,这种攻击变得非常盛行,以至于成千上万的人不雅观看了 YouTube 上关于如何在 Google cloud 上挖掘的教程(这在正常情形下是无利可图的)。显然,我们无法预见恶意挖矿会成为如此巨大的问题。
幸运的是,当非常发生时,我们已经为 Google Cloud 实例准备了非常检测系统。正如预见的那样,从我们的非常检测系统仪表板上直接获取的上图中可以看出,当实例开始挖掘时,它们的韶光行为发生了巨大的变革,由于关联的资源利用与未妥协的云实例所显示的传统资源利用有着根本的不同。我们能够利用这种移位检测来遏制这种新的攻击媒介,确保涉及到的云平台和 GCE 客户端保持稳定。
数据中毒
分类器面临的第二类攻击涉及试图毒害你的数据以使你的系统行为出错的对手。
模型偏斜
第一种中毒攻击称为模型偏斜,攻击者试图污染演习数据,以移动分类器对好、坏输入归类的学习边界。例如,模型偏斜可以用来试图污染演习数据,欺骗分类器将特定的恶意二进制文件标记为良性。
具体例子
在实践中,我们常常看到一些最前辈的垃圾邮件制造者团体试图通过将大量垃圾邮件报告为非垃圾邮件来使 Gmail 过滤器偏离轨道。如图所示,2017 年 11 月尾至 2018 年初,至少有 4 次大规模恶意行动试图歪曲我们的分类器。
因此,在设计基于 AI 的防御时,你须要考虑以下事实:
攻击者积极地试图将学到的滥用和合理利用之间的界线转移到对他们有利的位置。
缓解策略
为了防止攻击者歪曲模型,可以利用以下三种策略:
利用合理的数据采样:须要确保一小部分实体(包括 IP 或用户)不能占模型演习数据的大部分。特殊是要把稳不要过分重视用户报告的假阳性和假阴性。这可能通过限定每个用户可以贡献的示例数量,或者基于报告的示例数量利用衰减权重来实现。将新演习的分类器与前一个分类器进行比较以估计发生了多大变革。例如,可以实行 dark launch,并在相同流量上比较两个输出。备选方案包括对一小部分流量进行 A/B 测试和回溯测试。构建标准数据集,分类器必须准确预测才能投入生产。此数据集空想地包含一组精心策划的攻击和代表你的系统的正常内容。这一过程将确保你能够在武器化攻击对你的用户产生负面影响之前,检测出该攻击何时能够在你的模型中产生显著的回归。反馈武器化
第二类数据中毒攻击是将用户反馈系统武器化,以攻击合法用户和内容。一旦攻击者意识到你正在出于惩罚的目的以某种办法利用用户反馈,他们就会试取利用这一事实为自己谋利。
具体例子
我们在 2017 年目睹的最令人震荡的将用户反馈武器化的考试测验之一是一群 4chan 用户,他们决定通过留下数千个 1 星评级毁坏 CNN 在运用商店的排名。
反馈武器化之以是被坏人积极利用,有很多缘故原由,包括:试图压制竞争、进行报复、粉饰自己的行踪。上面的截图展示了一个黑市帖子,谈论了如何利用 Google 来击败竞争对手。
因此,在构建系统时,你须要在以下假设下事情:
任何反馈机制都将被武器化以攻击合法用户和内容。
缓解策略
在缓解反馈武器化的过程中,须要记住以下两点:
不要在反馈和惩罚之间建立直接循环。相反,在做出决定之前,确保评估反馈真实性,并将其与其他旗子暗记结合起来。不要以为受益于滥用内容的所有者对此负有任务。举例来说,不是由于一张照片得到了数百个假的「赞」所有者才买下它。我们已经看到无数打击者为了粉饰他们的踪迹或试图让我们惩罚无辜用户而压迫合法内容的案例。模型盗取打击
如果不提及旨在规复演习期间利用的模型或数据信息的攻击,这篇文章将是不完全的。这种攻击是一个关键问题,由于模型代表了有代价的知识产权资产,这些资产是根据公司的一些最有代价的数据进行演习的,例如金融交易、医疗信息或用户交易。
确保接管过用户敏感数据(如癌症干系数据等)演习的模型的安全性至关主要,由于这些模型可能被滥用,透露敏感用户信息 ( https://www.cs.cornell.edu/~shmat/shmat_oak17.pdf )。
攻击
模型盗取的两个紧张攻击是:
模型重修:这里的关键思想是攻击者能够通过探测公共 API 来重新创建模型,并通过将其用作 Oracle 来逐步完善自己的模型。最近的一篇论文(https://www.usenix.org/system/files/conference/usenixsecurity16/sec16_paper_tramer.pdf)表明,这种攻击彷佛对大多数人工智能算法有效,包括支持向量机、随机森林和深度神经网络。成员透露:在这里,攻击者构建影子模型,使他能够确定给定的记录是否用于演习模型。虽然此类攻击无法规复模型,但可能会透露敏感信息。防御
最著名的防御模型盗取攻击的方法是 PATE ( https://arxiv.org/abs/1802.08908),这是一个由 Ian Goodfellow 等人开拓的隐私框架。如上图所示,PATE 背后的关键思想是对数据进行划分,并演习多个组合在一起的模型来做出决策。这一决策随后被其他不同隐私系统的噪声所粉饰。
要理解更多有关差分隐私的信息,请阅读 Matt 的先容文章(https://blog.cryptographyengineering.com/2016/06/15/what-is-differential-privacy/)。要理解更多关于 PATE 和模型盗取攻击的信息,请阅读 Ian 关于此主题的文章(http://www.cleverhans.io/privacy/2018/04/29/privacy-and-machine-learning.html)。
结论
是时候结束这一系列关于如何利用人工智能打击敲诈和滥用的长文了。本系列的紧张收成(详见第一篇文章)是:
AI是构建知足用户期待的保护机制和应对愈加繁芜的攻击的关键。
正如这篇文章和前两篇文章所谈论的那样,要使这项事情在实践中发挥浸染,还有一些困难须要战胜。但是,既然 AI 框架已经成熟并有很好的文档记录,那么在你的防御系统中开始利用 AI 是再好不过的时候了,以是不要对这些寻衅望而生畏。
本文系作者个人观点,不代表本站立场,转载请注明出处!