AI与安全「2」:Attack AI(3)破坏模型完整性——数据投毒攻击

释放双眼,带上耳机,听听看~!

前言

本文是《AI与安全》系列文章的第三篇。在前文中,我们介绍了Attack AI的基础概念,即黑客对AI发起的攻击,主要可以分为三种攻击类型,破坏模型完整性、可用性和机密性的攻击。
其中破坏模型完整性主要分为两类攻击,针对模型的逃逸攻击和针对数据的数据投毒(中毒)攻击。

在本文,我们将介绍破坏模型完整性的数据投毒攻击。

数据投毒攻击是什么

数据投毒/中毒攻击(Data Poisoning Attack)是什么?这里我们用几个例子来说明。

对于一辆无人驾驶汽车,不同于逃逸攻击直接构造对抗样本对模型和系统发起攻击,由于智能汽车的识别模型通常是基于历史数据进行训练定期生成的,那么黑客就可以产生一些实时的数据或者说一些黑客以前已经习惯于走这些道路的数据,把这些数据输入到云端或者智能汽车系统中,从而实现让智能汽车按照黑客想要的路径去前进,利用数据投毒的方式来攻击人工智能系统。

此外,当前市面上的问答式机器人/智能交互AI,如微软小冰、QQ小冰等,它们通过庞大的语料库来学习,还会将用户和它的对话数据收纳进自己的语料库里,因此我们也可以在和它们对话时进行“调教”,从而实现让其说脏话甚至发表敏感言论的目的。

在业务安全领域,阿里集团安全资深总监路全在CCF大会上也分享过一个数据中毒的例子 :

“阿里的有些端口每天会来很多爬虫。有些爬虫即使被杀掉了,还是不断的来。

后来我们发现,这些爬虫其实也是在用一种非常聪明的方式污染模型,因为他除了有大量低级爬虫或者说低级流量外,他还有一部分高级的爬虫。他不怕低级的被模型识别和杀掉,但是他知道模型会被大量低级爬虫样本的特征所带偏,所以他实际上是用低级爬虫做诱饵,然后让高级爬虫帮他达到目的。”

数据中毒的根本原因

通过前面的例子,细心的小伙伴可能也发现了,数据中毒的根本原因,其实是传统机器学习方法并没有假设输入模型的数据可能有误,甚至有人会故意搅乱数据的分布。

通常情况下,如果我们通过时间滑窗的方式来生成模型,我们期望的是今天的数据和上周数据的平均分布是差不多的,或者说每周一的数据分布情况都差不多。基于这个假设,模型才成立。而这个假设恰好就让攻击者有机可乘了。

数据投毒攻击分类和解决方案

1-模型偏斜(Model skewing)

模型偏斜是指攻击者试图污染训练数据,来让模型对好坏输入的分类发生偏移,从而降低模型的准确率。

例如,Google反滥用研究团队的主管曾经介绍过发生在Google垃圾邮件分类器上的数据投毒攻击案例。一些高级垃圾邮件制造者试图通过将大量垃圾邮件提交为非垃圾邮件来使 Gmail 邮件分类器发生偏斜。

如图所示,2017 年 11 月底至 2018 年初,Gmail遭遇了至少 4 次大规模恶意攻击试图让分类器偏斜。

因此,在设计 AI 防御机制时,需要考虑以下事实:

攻击者一定会非常积极地将正常数据和异常数据之间的那条分界线转移到对他们有利的位置。

这种攻击的解决方案,通常有三种:

  1. 使用合理的数据采样。需要确保一小部分实体(包括 IP 或用户)不能占模型训练数据的大部分。特别是要注意不要过分重视那些伪装成正常样本的恶意样本。这可能通过限制每个用户可以贡献的示例数量,或者基于报告的示例数量使用衰减权重来实现。
  2. 将新训练的分类器与前一个分类器进行比较以估计发生了多大变化。例如,可以执行 dark launch,并在相同流量上比较两个输出。备选方案包括对一小部分流量进行 A/B 测试和回溯测试。
  3. 构建标准数据集,分类器必须准确预测才能投入生产。此数据集理想地包含一组精心策划的攻击和你的系统的正常数据。这一过程将确保你能够在武器化攻击对你的用户产生负面影响之前,检测出该攻击何时能够在模型中产生显著的回归。

2-反馈武器化(Feedback weaponization):

反馈武器化是指将用户反馈系统武器化,来攻击合法用户和内容。一旦攻击者意识到模型利用了用户反馈对模型进行惩罚(penalization),他们就会试图利用这一事实为自己谋利。

比如说如果我们想攻击一个交互系统,比如说智能客服,每次它回答问题后,下面会弹出一个服务评分选项。那只要我们持续地给正确答案打1星,错误答案打5星,如果背后的模型没有对数据投毒攻击有所防范,那这个智能客服模型就会被成功干扰。

因此,在构建系统时,需要考虑以下假设:

任何反馈机制都将被武器化以攻击合法用户和内容。

解决方案:

  • 不要在反馈和惩罚之间建立直接循环。相反,在做出决定之前,确保评估反馈真实性,并将其与其他特征结合起来。

补充阅读

  • Xiao H, Biggio B, Brown G, et al. Is feature selection secure against training data poisoning?[C]//International Conference on Machine Learning. 2015: 1689-1698.
  • Li B, Wang Y, Singh A, et al. Data poisoning attacks on factorization-based collaborative filtering[C]//Advances in neural information processing systems. 2016: 1885-1893.
  • Alfeld S, Zhu X, Barford P. Data Poisoning Attacks against Autoregressive Models[C]//AAAI. 2016: 1452-1458.
  • Marsh D O, Myers G J, Clarkson T W, et al. Fetal methylmercury poisoning: clinical and toxicological data on 29 cases[J]. Annals of Neurology: Official Journal of the American Neurological Association and the Child Neurology Society, 1980, 7(4): 348-353.

本文来自先知社区

相关文章

人已赞赏
安全教程

xyhcms v3.6 命令执行

2020-5-21 23:00:57

安全教程

记一次excel XXE漏洞

2020-5-21 23:01:12

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索