一、对抗样本攻击
对抗样本攻击,在原有样本χ的基础上稍作干扰,ξ为不易被发现的干扰因素,使结果 y 1 ≠ y 2 y_1 ≠ y _2\, y1=y2。
Γ ( χ ) = y 1 \Gamma(χ) = y_1\, Γ(χ)=y1
Γ ( χ + ξ ) = y 2 \Gamma(χ+ξ) = y_2\, Γ(χ+ξ)=y2
按目标结果可分为定向攻击和非定向攻击。
定向攻击,function 结果与未攻击前不一致,且结果有指定目标。譬如在图片智能识别中,要想将一张狗狗的照片识别为熊(定向为熊),那么在攻击发生后,图片识别为狗狗类别的相似度应极致降低,识别为熊类别的相似度极致提高,至此攻击成功。
非定向攻击,function结果与未攻击前不一致即可。譬如在图片智能识别中,将一张狗狗的照片识别为除狗狗类别外的任何一种(非定向)。在攻击发生后,这张图片被识别为狗狗类别的相似度应极致降低,使此图片识别为狗狗类别外的任何一种,可算攻击成功。
按攻击环境可分为黑盒攻击与白盒攻击。
黑盒攻击,不了解目标模型及参数,依赖输入输出交互,通过模型输出反馈生成对抗样本。
白盒攻击,在了解目标模型及参数的情况下实施攻击。
二、数据投毒攻击
投入大量样本(虚假恶意的脏数据)训练模型,使function结果与预期结果大相径庭,主动制造漏洞。譬如在电商平台中,商家为使自家的产品出现在搜索结果的头版头条,使用刷单的方式为自家产品好评加持,这些用于刷单的虚假好评可算作是模型训练过程中遇到的脏数据。
按攻击目的可将数据投毒攻击行为 分为target投毒攻击和non-target投毒攻击。
non-target投毒攻击只需要让目标模型在受到攻击后无法正常实现该有的功能,譬如电商平台的推荐算法,在遭受到non-target投毒攻击后,推荐算法再也无法实现商品个性化推荐。
在自然语言处理领域,non-target投毒攻击成果的表现形式或是无法正常回答,或是无法理解语句,随机生成回答。
在人脸识别领域,non-target投毒攻击的表现形式通常是模型再也无法发现人脸。
target投毒攻击具有具体攻击目标,模型在收到target投毒攻击后将表达一种攻击者想要的特定结果,不止是纯破化模型。譬如在电商平台推荐算法中,攻击者通过使用target投毒攻击使自家商品出现在头版头条以达到增加更多曝光获取更多利益的目的。
数据投毒攻击要求隐蔽性
1、躲避检测算法
2、躲过业务方面的审查
3、切断投毒攻击目标关联
优化
1、提升攻击效率
2、迁移投毒攻击
3、少样本投毒攻击
三、模型后门攻击
模型后门攻击是攻击者通过在训练数据中植入特定的触发器(Trigger),使得模型在正常输入下表现良好,但在输入包含触发器时输出攻击者预设的目标结果。这种攻击通常发生在模型训练阶段,攻击者可能通过污染训练数据或直接操纵模型参数来实现。
后门攻击的特点
- 隐蔽性:在正常输入下,模型表现与未受攻击的模型几乎一致,难以察觉。
- 触发条件:只有在输入中包含特定的触发器时,模型才会输出攻击者预设的结果。
- 目标性:攻击者通常有明确的目标,例如让模型在特定输入下输出错误分类或执行特定操作。
后门攻击的实现方式
- 数据污染:攻击者向训练数据中添加带有触发器的样本,并为其赋予特定的标签。例如,在图像分类任务中,攻击者可能在图像角落添加一个小图案(触发器),并将其标签设置为目标类别。
- 模型操纵:攻击者直接修改模型参数,使其对特定触发器敏感。这种方式通常需要攻击者能够访问模型训练过程或模型参数。
后门攻击的防御方法
- 数据清洗:在训练前对数据进行严格检查,移除可疑样本。
- 触发器检测:通过分析模型的输入输出行为,检测是否存在触发器。
- 模型剪枝:通过剪枝技术移除模型中可能被攻击者操纵的部分。
- 对抗训练:在训练过程中加入对抗样本,增强模型对后门攻击的鲁棒性。
- 模型验证:使用干净的验证集对模型进行测试,确保其在不同输入下的表现一致。
应用场景
后门攻击可能发生在以下场景:
- 第三方数据:使用不可信的第三方数据进行训练。
- 预训练模型:使用不可信的预训练模型进行微调。
- 外包训练:将模型训练任务外包给不可信的第三方。
模型后门攻击是一种隐蔽且具有破坏性的攻击方式,可能对机器学习系统的安全性造成严重威胁。防御后门攻击需要从数据、模型和训练过程等多个方面入手,确保模型的鲁棒性和可靠性。模型在正常输入下表现良好,但在输入包含触发器时输出攻击者预设的目标结果。这种攻击通常发生在模型训练阶段,攻击者可能通过污染训练数据或直接操纵模型参数来实现。