随着AI成为新一代关键技术趋势,围绕着AI的服务也越来越普及。特别是结合了云计算以后,机器学习数据的标注、模型训练及预测等服务纷纷上云,为用户提供了强大的算力和优秀的算法,极大方便了广大开发者与企业用户。
但是,随之而来的AI服务隐私泄露风险也日益突显,主要表现在:模型预测服务(白盒or 黑盒)存在泄露训练数据隐私的风险;模型本身在预测服务过程中存在泄露的风险。
针对现在流行的MLaaS(Machine-Learning as-a Service)服务模型,一个MLaaS的工作流示意图如下,主要包括了两个阶段:
在这两个阶段中,面临的典型攻击包括: model extraction attack(模型提取攻击)、model inversion attack(模型逆向攻击)和membership inference attack(成员推断攻击)。
模型提取攻击主要指攻击者通过有限次访问预测服务的API接口,从预测值反向推测模型的具体参数或结构,或者结合样本和预测值训练出一个替代模型的过程[1]。
例如,攻击者在使用模型预测服务时,可以通过改变样本中某个特征的值来推测决策树的形态,从而重构一个与模型接近的决策树。Tramèr F等人[1]已经在Amazon,BigML的模型预测服务中进行了攻击,取得了很好的效果。
模型逆向攻击主要指攻击者从模型预测结果中提取和训练数据有关的信息[2],比如,训练数据的一些敏感特征。
例如,在一个人脸识别的神经网络模型,提供了人脸识别分类的API,对每个人脸的图片,可以输出预测的人名和对应的置信度。攻击者可以随机构建一个图片,以训练数据中某个人名(如Alice)的预测置信度作为目标,采用梯度下降等方法反复根据API预测结果对图片进行修正,从而获得具有较高Alice预测置信度的图片。这个过程间接获取了训练集中关于Alice的隐私图片信息。特别的,在结合了生成对抗网络后,这种攻击手段尤为见效。
成员推断攻击是指攻击者通过访问模型预测API,从预测结果中得知某个特征数据是否包含在模型的训练集中[3]。这类攻击的威胁在于,如果在某个医疗相关的模型中,知道某人的医疗记录参与某个疾病模型的训练,则可能推断出此人患有这种疾病。
如攻击者可以根据输入从预测API得到分类置信度,由此获得高置信度的数据集S(或者是符合预测模型分布的数据集)。随后,攻击者利用S可以训练出一系列shadow models,并使用这些shadow models观测某一数据是否存在S中所引起的预测分类置信度的变化,进而可以训练出一个attack model。最后,对于某个需要推断的成员数据,攻击者用模型预测API得到分类置信度作为attack model的输入,最终可获得这个成员是否在训练数据集中的结果。在这种攻击方式中,攻击者仅需要得到预测分类的置信度,不需要知道模型结构、训练方法、模型参数、训练集数据分布等信息。特别对于过拟合的模型,这种攻击更有效[3]。
面向模型的防御是通过对模型结构做适当的修改,减少模型泄露的信息,或者 降低模型的过拟合程度,从而完成对模型泄露和数据泄露的保护。
Fredrikson[104] 等人提出当目标模型为决策树时,可使用 CART 决策树的变种, 将样本的敏感特征的优先级调高或调低。他们通过实验证明,当敏感特征在决策树 的根节点和叶子节点层级时,对 Model Inversion 攻击能够达到较好的防御效果,其 中当敏感属性位于根节点时,能达到最好的防御效果。
Shokri[12] 等人和 Ahmed[77] 等人提出可以在目标模型中添加 Dropout 层,或 者使用 Model Stacking 的方法将不同的元学习器聚合在一起,又或者在目标模型中 添加正则项。通过实验,他们发现当目标模型使用上述方法后,能显著地减少成员 推断攻击的准确率。
Nasr[78] 提出了一种基于对抗学习的防御方法,他们认为如果能计算出当前模 型抵抗成员推断攻击的成功率,并将其作为一个对抗正则项加入到损失函数中,那 么在训练过程中使用 MIN-MAX 的对抗训练方式,最终就可以训练出一个有效抵抗 成员推断攻击的模型。该模型受到的成员推断攻击的成功率将存在一个上界,我们 可以使这个上界足够小的同时,让模型仍然保持有较高的分类准确度。
此外,Wang[105] 等人构建了 MIASec,他们提出可以对训练数据在目标模型的 关键特征上进行特定的修改,使模型对成员数据和非成员数据的预测向量的分布难 以区分,进而完成对成员推断攻击的防御。 如前文所说,模型逆向攻击的核心原因是输出向量包含了训练样本的信息,成 第四章 AI 威胁常用防御技术 42 员推断攻击的核心原因是模型对训练样本和测试样本的预测向量的分布不一致。因 此,防御模型逆向攻击就是尽可能地降低输出向量与输入向量之间的关联,防御成 员推断攻击就是尽可能地缩小输出向量的分布差异。面向模型的防御旨在修改模型 的结构和损失函数,使目标模型给出的输出向量中包含尽可能少的信息,从而取得 较好的防御效果。但这种防御方式仍有缺陷,它会对目标模型的性能有较大影响,导 致其分类准确度出现波动。因此,防御方需要在模型的性能与其鲁棒性之间做出平 衡。
现有的模型隐私攻击都依赖于从预测服务API获取预测输出信息。
查询控制防御是指防御方可以根据用户的查询行为进行特征提取,完成对隐私 泄露攻击的防御。攻击者如果想要执行隐私泄露攻击,需要对目标模型发起大量的 查询行为,甚至需要对自己的输入向量进行特定的修饰,从而加快隐私泄露攻击的 实施。用于攻击目的对预测API的访问分布和正常使用模型预测服务的访问分布是有区别的。如果能识别出这种区别,那么可以针对性对攻击访问请求进行阻断,从而防止攻击的发生。
查询控制防御主要包 含两类:异常样本检测和查询行为检测。
优缺点:防御方法的针对性不强,效果不够 好,误分类的概率较大。查询控制防御主要是在攻击模型的训练过程中起作用,对 已训练好的攻击模型无能为力。此外,如果攻击者知道目标模型采用了查询控制防 御,他们也有许多方法可以绕过这种防御方法,比如设计更难以被检测的异常样本, 或者采用虚拟 IP 等方式绕过目标模型的检测。
面向数据的防御是指对模型的预测结果做模糊操作。通过这些模糊操作,在保 证 AI 模型输出结果正确性的前提下,尽可能地干扰输出结果中包含的有效信息,从 而减少隐私信息的泄露,使得攻击者在试探的过程中难以扑捉到置信度的详细变化,从而提高了攻击收敛的难度[1];
数据模糊操作主要包含两类:
差分隐私技术可以在模型训练过程中或者在最终的模型参数中,为敏感信息添加随机噪声,使得攻击者无法探测到原始训练数据的变化对于模型输出的影响,从而增加了模型提取、训练集探测等攻击的难度[5];
优缺点:种防御方法依然具有局限性。如果对输出 向量的修饰程度较小,则其抵抗攻击的能力也不会很好;如果对输出向量的修饰程 度较大,则会影响分类数据的可用性。也就是说,这里仍然需要保证隐私性与可用 性之间的平衡。
训练集隐私信息进行探查的攻击方式(如成员推断攻击),所依赖的原理是模型本身的泛化度不够,存在一定过拟合现象。所以,对于具有某些特征的输入,模型的预测输出可以很容易与其它输入的预测结果区别开来。
因此类似于PATE(Private Aggregation of Teacher Ensembles)的方法中,采用了将训练数据集进行切分,单独训练出一批model,随后在预测的时候使用集成学习的方法(ensemble)对这些模型的输出结果进行投票,并利用差分隐私对投票结果进行加噪扰动,使得最终的预测结果屏蔽了模型过拟合现象带来的影响[6]。
参考文献1:
[1] Tramèr F, Zhang F, Juels A, et al. Stealing machine learning models via prediction apis[C]//25th {USENIX} Security Symposium ({USENIX} Security 16). 2016: 601-618.
[2] Fredrikson M, Jha S, Ristenpart T. Model inversion attacks that exploit confidence information and basic countermeasures[C]//Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security. ACM, 2015: 1322-1333.
[3] Shokri R, Stronati M, Song C, et al. Membership inference attacks against machine learning models[C]//2017 IEEE Symposium on Security and Privacy (SP). IEEE, 2017: 3-18.
[4] Kesarwani M, Mukhoty B, Arya V, et al. Model extraction warning in mlaas paradigm[C]//Proceedings of the 34th Annual Computer Security Applications Conference. ACM, 2018: 371-380.
[5] Abadi M, Chu A, Goodfellow I, et al. Deep learning with differential privacy[C]//Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2016: 308-318.
[6] Papernot N, Abadi M, Erlingsson U, et al. Semi-supervised knowledge transfer for deep learning from private training data[C]. arXiv preprint arXiv:1610.05755, 2016.
参考文献2:
[7] Florian Tramèr, Fan Zhang, Ari Juels, Michael K. Reiter, and Thomas Ristenpart. Stealing machine learning models via prediction apis. In 25th USENIX
[12] Reza Shokri, Marco Stronati, Congzheng Song, and Vitaly Shmatikov. Membership inference attacks against machine learning models. In 2017 IEEE Symposium on Security and Privacy, SP 2017, San Jose, CA, USA, May 22-26, 2017, pages 3–18. IEEE Computer Society, 2017.
[73] Binghui Wang and Neil Zhenqiang Gong. Stealing hyperparameters in machine learning. In 2018 IEEE Symposium on Security and Privacy, SP 2018, Proceedings, 21-23 May 2018, San Francisco, California, USA, pages 36–52. IEEE Computer Society, 2018.
[74] Honggang Yu, Kaichen Yang, Teng Zhang, Yun-Yun Tsai, Tsung-Yi Ho, and Yier Jin. Cloudleak: Large-scale deep learning models stealing through adversarial examples. In Proceedings of Network and Distributed Systems Security Symposium (NDSS), 2020.
[75] Mika Juuti, Sebastian Szyller, Samuel Marchal, and N. Asokan. PRADA: protecting against DNN model stealing attacks. In IEEE European Symposium on Security and Privacy, EuroS&P 2019, Stockholm, Sweden, June 17-19, 2019, pages 512–527. IEEE, 2019.
[77] Ahmed Salem, Yang Zhang, Mathias Humbert, Pascal Berrang, Mario Fritz, and Michael Backes. Ml-leaks: Model and data independent membership inference attacks and defenses on machine learning models. In 26th Annual Network and Distributed System Security Symposium, NDSS 2019, San Diego, California, USA, February 24-27, 2019. The Internet Society, 2019.
[78] Milad Nasr, Reza Shokri, and Amir Houmansadr. Machine learning with membership privacy using adversarial regularization. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, CCS 2018, Toronto, ON, Canada, October 15-19, 2018, pages 634–646. ACM, 2018.
[104] Matt Fredrikson, Somesh Jha, and Thomas Ristenpart. Model inversion attacks that exploit confidence information and basic countermeasures. In Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, pages 1322–1333, 2015.
[105] Chen Wang, Gaoyang Liu, Haojun Huang, Weijie Feng, Kai Peng, and Lizhe Wang. Miasec: Enabling data indistinguishability against membership inference attacks in mlaas. IEEE Transactions on Sustainable Computing, 2019.
[106] Jinyuan Jia, Ahmed Salem, Michael Backes, Yang Zhang, and Neil Zhenqiang Gong. Memguard: Defending against black-box membership inference attacks via adversarial examples. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, CCS 2019, London, UK, November 11-15, 2019, pages 259–274. ACM, 2019.
[107] Yingzhe He, Guozhu Meng, Kai Chen, Xingbo Hu, and Jinwen He. Towards privacy and security of deep learning systems: A survey. 2019.
[108] Manish Kesarwani, Bhaskar Mukhoty, Vijay Arya, and Sameep Mehta. Model extraction warning in mlaas paradigm. In Proceedings of the 34th Annual Computer Security Applications Conference, ACSAC 2018, San Juan, PR, USA, December 03-07, 2018, pages 371–380. ACM, 2018.
摘自: