写点什么

针对机器学习模型的隐私攻击

  • 2019-08-30
  • 本文字数:3807 字

    阅读完需:约 12 分钟

针对机器学习模型的隐私攻击

本文要点

  • 就像大多数软件一样,机器学习模型也可能被黑客入侵

  • 针对机器学习系统的隐私攻击(例如会员身份推断攻击和模型反转攻击)可能会暴露个人信息或敏感信息

  • 有几种攻击不需要直接访问模型,但可以通过模型 API 来实施

  • 个性化模型(例如预测文本)可以暴露高度敏感的信息

  • 应当确保敏感的训练数据及其模型的安全性


机器学习这个激动人心的领域正在涌现众多全新的机遇和应用。但与大多数技术一样,随着我们扩展机器学习系统的应用范围,开始在我们的组织内部实践部署,机器学习的风险也开始逐渐浮现。在过去五年中,越来越多的机器学习应用开始涉及敏感信息(如财务数据、购物历史、好友间的对话以及与健康相关的数据等)——也有越来越多的研究开始关注这些机器学习系统暴露出来的安全漏洞。


如今,上新闻次数最多,讨论最热烈的机器学习系统攻击手段就是对抗性输入。下面的视频就是对抗输入的一个例子,它是一种精心设计的样本,用来欺骗机器学习系统产生虚假的预测结果。在这段视频中,麻省理工学院的一组研究人员证明他们可以 3D 打印出一个对抗性乌龟模型,可以在多个角度上欺骗计算机视觉系统,使后者误认为它是一支步枪。


演示视频链接


一般来说,对抗性样本可以用来干扰机器学习系统的决策或结果以实现某些目标。其后果可以是简单的样本分类错误,但也可能影响目标账户。媒体已经多次报道过这方面的风险,并质疑这类漏洞是否会带来严重的安全风险,例如威胁自动驾驶汽车的安全。


但机器学习中还有一种风险常常被忽视了,那就是对机器学习系统的隐私攻击,这方面的研究相对较少。在本文中我们将探讨一些隐私攻击手段,这些手段表明机器学习系统很容易在不经意间泄露敏感信息。考虑到隐私数据的线上黑市产业非常发达,这种隐私攻击的风险并不亚于对抗性攻击。

我知道你的艾滋病情况:暴露敏感的训练数据

想象一下这样的状况:即使我没有完整的信息,我也能以高达 7 成到 9 成的准确度判断一个训练模型中是否有你的隐私数据。机器学习正在变得越来越复杂、个性化,分类愈加细致,应用也更加普及,意味着这类攻击更容易暴露个人的敏感信息。



这种类型的攻击被称为成员推理攻击(MIA),由 Reza Shokri 教授发明;他在过去四年中一直在研究一些隐私攻击手段。他在获得著名隐私奖项的论文“对机器学习模型的成员推理攻击”中具体讲解了这种攻击方法。首先,攻击者要按照顺序查找可能的输入数据或通过可用的公共或私有数据集收集足够的目标模型训练数据。随后,攻击者会构建一些影子模型来模仿目标模型(即采用和目标模型类似的输入和输出)。这些影子模型会经过微调以获得较高的精度,并通过所收集的训练数据的样本提升召回率。注意:攻击的目的是让各个影子模型训练和测试各自的拆分部分,因此你必须有足够的数据来完成这一步骤。最后,在一个类似于生成对抗网络(或 GAN)的体系中,攻击者可以训练一个鉴别器,该鉴别器根据众多影子模型的输入和输出来学习训练过的数据与陌生测试或验证数据的差异。然后攻击者使用这个鉴别器来评估目标 API,并确定数据点是否在目标模型之内。因此无需完整访问模型也能发起这些攻击,也就是说攻击是在“黑箱“环境中运行的。


Shokri 教授和他的同事们针对亚马逊 ML、谷歌云机器学习系统和一个本地模型测试了这些攻击策略。根据实验结果,他们对亚马逊的机器学习即服务系统的攻击准确率达到 74%,对谷歌的机器学习即服务系统的准确率达到 94%,证明机器学习任务能够暴露准确度很高的隐私信息。在最近的一篇论文中,他们还从所谓“完全私有和去中心化”的系统中提取出了这些隐私数据,典型例子就是谷歌等大企业支持的一种名为联盟学习的机器学习架构,这种架构本来是要以一种“安全”的方式推动人们共享隐私数据的。


研究这种攻击时尤其要注意的一点是,推荐系统正在变得越来越个性化——这些系统已经涉及了人口统计信息、财产数据等敏感领域。有些训练模型(例如针对财产数据的模型)涉及的人数很少,所以攻击者只要知道你的一点点资料就可以在训练数据集中找出你的信息,从而窃取你的财产数据。就算攻击者之前不了解你的信息也可以获得某些类别的详细数据,这些类别就是训练数据本身的分类(例如性别、年龄、种族、居住地、移民身份、性取向、政治派别和购买偏好等)。


这些攻击会暴露哪些数据呢?比如说医疗系统中的 AI 就可能暴露出诸如 HIV 携带状态之类的敏感信息。医疗服务中的 AI 通常会根据疾病种类对个体进行分类。如果一个模型是用来对 HIV 患者提供治疗建议的,那么攻击者若能查询模型的 API 并获知训练数据中有哪些样本,自然也就能知道这些人已经罹患了 HIV。随着 AI 技术在医疗保健行业的应用愈加广泛,我们需要认真对待我们培训和使用的模型中存在的隐私和安全漏洞。

我看到你了:从面部识别系统中提取图像

如果我只知道你的名字就能知道你的长相,你会怎么想?你可能以为我用的是谷歌图片搜索,但实际上只需访问曾用你的面部数据训练过的面部识别模型就够了。



这种类型的攻击被称为模型反转攻击,由 Matt Fredrikson 和他的同事们发明,并在 2015 年的论文“暴露敏感信息的模型反转攻击与基本对策”中作了具体说明。与成员推理攻击类似,这种攻击只需要访问机器学习模型的 API 即可,并且可以使用一系列渐进式查询的模式来发起攻击。攻击者先从一张基础图像开始——如果他们对目标有进一步了解(例如年龄、性别或种族等),他们可以试着选择更接近的图像。然后,攻击者运行一系列查询来发起反转攻击——逐渐改变图像内容来提高机器学习系统的准确性或置信度。经过一系列的查询操作后置信度达到了相当高的水平,产生了一张类似于上面所示的图像——虽然结果并不算完美,但足以用来辨认出一个人的外表了。论文还详细介绍了针对不同类型的数据集的其他几种攻击手段。


这种攻击的威胁有多大?如今面部识别系统被广泛应用,包括美国移民局和共享航班签到等信息的许多联邦数据库都在使用这种技术,这意味着对这些系统的访问和使用率也在增长。可以访问系统或 API 的承包商或分包商也是一条潜在的攻击途径。这种攻击除了会泄露隐私信息外,你的护照、签证或其他重要的正式照片泄露还可能带来安全风险。

你的信用卡号码是…:从文本深度学习中挖掘秘密

想象一下,攻击者只需访问个性化或半个性化的基于文本的训练模型就能获取你的信用卡号。你可以把它想成是一种键盘预测技术……如果你键入“我的电话号码是…”,后面自动跳出来你的号码意味着什么?



Nicholas Carlini 和其他几位谷歌大脑与学术界研究人员在一篇题为“秘密泄露:无倾向神经网络记录和提取秘密“的论文中调查了这种类型的攻击。与之前的两种攻击不同,这种攻击需要直接访问模型本身——因此攻击者需要自己获取训练模型或二进制文件。然后他们不断查询这个文本模型来发现模型中的已知模式(诸如 ID 号码、信用卡号或电话号码等)。在论文中,他们能够提取在训练数据中至少出现过 9 次的秘密


在研究中,他们从安然电子邮件数据集中培训了 7 个人的模型——并且找出了一个社会安全号码和两个信用卡号。由于针对文本的深度学习应用越来越多,尤其是客户服务中的会话 AI 愈加常见,这种记忆并提取秘密的能力带来的安全风险是不容忽视的。只要用户对机器人透露过自己的隐私数据,那么攻击者就可以藉此对他发起网络钓鱼攻击。

保护数据:安全的机器学习

既然机器学习暴露了全新的风险层面,我们该如何保护机器学习免受这些隐私攻击呢?像联盟学习这样的解决方案已经被新加坡大学的 Shokri 教授及其团队证明其也存在漏洞。而像Nicholas Papernot的PATE这样的方案需要大量的训练数据并采用了差分隐私机制(这意味着它们仍然可能会暴露一些信息)。剩下的方案还是在训练数据上使用加密技术(使用同态加密或同态假名)。似乎还没有一种普遍可行的方法来确保机器学习系统中不再有隐私和敏感数据。


换一种角度来说,在 IT 领域我们几十年来一直在管理私人和敏感数据。我们的手段并没有那么完善,也不是那么安全,但我们技术专家开发了实时加密和解密数据的方法,创建了可信计算区域,设法保护内存中的数据并发展了许多安全措施,用于保护敏感和私人信息不被攻击者窃取。如果我们继续研究和开发将安全计算原理和加密方法应用于机器学习问题的新方法,我们就能为这些模型中包含的敏感数据找出并应用更安全的方法。


过去我们还找到了保护 API 和 API 访问,加强软件系统的同时仍然允许基本互操作性的方法。关键在于将这些知识应用于我们的机器学习系统,并定期测试它们的漏洞,才能确保这些系统的安全性。还可以开发控制机器学习 API 访问权限的新方法,判断输入内容的可信度,从而增强这些系统的安全性,增强安全团队和机器学习团队的信心。从本质上讲,我们需要将OWASP应用程序安全标准应用于机器学习 API,并进一步扩展以应对这些特殊类型的攻击。


将安全协议,测试和系统审查作为机器学习部署的常规流程,将使安全和机器学习团队能够共同解决这些问题。随着来自这两个领域的专家开发和标准化新技术,我相信我们可以为机器学习系统构建更安全和隐私意识的未来。

作者介绍

Katharine Jarmul 是德国柏林数据科学和机器学习安全公司 KIProtect 的 python 专家和联合创始人。自 2008 年以来,她一直在使用 Python 来发现和解决问题。她于 2010 年帮助组建了洛杉矶的第一个 PyLadies 分会,并合作撰写了一本 O’Reilly 的著作,制作了几个关于 Python 的视频课程。


原文链接


Privacy Attacks on Machine Learning Models


2019-08-30 08:005752

评论

发布
暂无评论
发现更多内容

解决混合云数据库一站式备份若干问题 腾讯云数据库DBS正式上线

科技热闻

基于数据技术全域流量协同优化是银行零售业务关键突破点

易观分析

银行 数据技术

选择it资产管理软件要注意什么?

低代码小观

资产管理 企业管理系统 低代码开发 #资产追踪 客户关系管理系统

教你如何在优麒麟上调节外接显示器,如亮度、色彩等方面!

优麒麟

Linux 开源 经验分享 优麒麟 显示器

这些大咖想和你聊聊什么是行业期待的多模态学习

小红书技术REDtech

算法 多模态

【linux运维】linux运维常用工具有哪些?

行云管家

云计算 运维 IT运维 云管理

Linux 命令行小技巧分享第二弹--超简单,超实用!

优麒麟

Linux 开源 命令行终端 实用技巧 优麒麟

java高级用法之:JNA中的Memory和Pointer

程序那些事

Java Netty 程序那些事 4月月更

如何使用 Serverless Devs 部署静态网站到函数计算

阿里巴巴云原生

直播预告 | PolarDB-X 动手实践系列——用 PolarDB-X 搭建一个高可用系统

阿里云数据库开源

MySQL 数据库 阿里云 开源 PolarDB-X

解构华为云HE2E项目中的容器技术应用

华为云开发者联盟

容器 镜像 华为云 devcloud HE2E

投稿开奖丨轻量应用服务器征文活动(3月)奖励公布

阿里云弹性计算

轻量应用 征文投稿开奖

CVE-2022-22965 漏洞分析,安全问题早发现

华为云开发者联盟

Java spring 漏洞 CVE JavaBean

云原生边缘计算KubeEdge在智慧停车中的实践

华为云原生团队

边缘计算 边缘技术 边缘云

后端开发【一大波干货知识】网络通信模型和网络IO管理

Linux服务器开发

后端开发 Linux服务器开发 C++后台开发 网络io 网络通信

基于 EventBridge 构建数据库应用集成

阿里巴巴云原生

【首期社区读书会】从《OceanBase数据库系统概念》到3.1.3 社区新版本,一起聊聊 OceanBase 那些事

OceanBase 数据库

OceanBase 社区版

独家下载!突破开源Redis,华为云十年自研内核修炼之路《企业级Redis技术与应用解读》重磅发布丨云享·书库

华为云开发者联盟

redis 华为云 GaussDB(for Redis) 开源Redis 企业级Redis

构建测试的体系化思维(高级篇)

BY林子

质量赋能 测试体系

如何通过 Node 上传小程序代码,不会就看看吧

CRMEB

DIVE大会上线了!参与活动还有精美周边领取哦!

InfoQ写作社区官方

热门活动 DIVE

【二级等保】二级等保安全物理环境要求有哪些?

行云管家

网络安全 数据安全 等保 等级保护

知名数字化解决方案厂商新华三加入龙蜥社区,已完成硬件兼容性测试

OpenAnolis小助手

开源社区 兼容性测试 龙蜥社区 CLA 新华三

PlatoFarm生态NFT总量恒定,激励机制让Dao成员持续贡献

西柚子

移动数字化平台原来可以这样帮企业打造协同生态链!

BeeWorks

花14天梳理了3月份各大厂问得最多的50道Java基础面试题

北游学Java

Java 面试

ironSource Luna 正式推出针对苹果搜索广告的自动化投放工具

极客天地

优秀的FAQ示例及FAQ页面制作技巧

小炮

FAQ

阿里巴巴云原生混部系统 Koordinator 正式开源

阿里巴巴云原生

元宇宙背景下——内容生产传播商业价值分析2022

易观分析

元宇宙 内容生产传播

EventBridge 与 FC 一站式深度集成解析

阿里巴巴云原生

针对机器学习模型的隐私攻击_AI&大模型_Katharine Jarmul_InfoQ精选文章