model stealing attack论文阅读杂记
Published:
S&P
2022
- Model Stealing Attacks against inductive GNN
- 提出了在GNN上的模型提取攻击,通过与目标模型的逆向交互还原出一个替代模型,原有工作都是在transductive推理式GNN上的,需要预知图的结构,本文提出的方法是在inductive归纳式GNN上的,不需要预知图的结构,可以使用图同一分布中没有出现在训练数据中的节点进行攻击。
- 攻击目标是构建一个与目标模型行为或精度类似的模型,场景是黑盒攻击场景,攻击方没有模型结构等的信息,也无法修改这些信息。攻击方可以与目标模型交互,提供查询图中的节点和领域信息,得到模型返回的下游任务结果(节点分类,t-SNE坐标,节点表征),查询图要求与训练图从同一数据分布中采样,但并不要求有相同的图特性,查询图中的节点也不要求一定出现在训练图中。
- 首先针对一些图结构无法获得的情况,论文首先对查询图的结构在本地进行了重建,论文首先使用kNN方法根据节点特征初始化图结构,然后使用IDGL框架调整图结构。然后论文使用图结构和对应的节点特征分别查询目标GNN和替代模型,利用两个结果的RMSE损失对替代模型进行训练。在处理节点分类任务时在替代的GNN后面加了一个两层的MLP,使用预测误差进行训练
- DeepSteal: advanced Model Extractions leveraging efficient weight stealing in memories
- 使用内存侧信道攻击的模型提取框架,用于提取DNN模型权重参数。
- 首先使用基于rowhammer的攻击技术来提取权重位的信息,根据rowhammer攻击只会在(0-1-0)或者(1-0-1)这样的存储模式上引发中间位的位翻转的原理进行攻击,获取大部分模型参数,然后提出一种使用平均聚类权重惩罚的子模型训练方法来获取部分泄露的位信息并生成目标模型的子模型原型。
- 系统架构层面的攻击,没有太看明白,感觉需要补充一些前置的知识才行
- StolenEncoder: stealing pre-trained encoders in self-supervised learning
- 针对图片预训练编码器的模型提取攻击,替代模型结构自定了ResNet
- 攻击目标是使用少量的API查询构建一个与预训练图片编码器效果类似的替代模型,攻击场景是黑盒场景,攻击方有一个用于查询API和训练替代模型的数据集,攻击方可以查询编码器服务的API,获取编码器对于图片数据编码后的特征表征向量。
- 方法首先使用图片数据向编码器API发送查询获取表征向量,然后计算和替代模型得到的表征向量的距离获得第一个损失,为了避免替代数据集规模导致的次优结果,使用数据加强方法得到加强的图片数据,为了避免过高的API查询成本,基于对比学习的对相似样本学习到相似表征的特点,使用原图片查询得到的表征向量代替加强图片的查询结果,与强化图片由替代模型得到的表征向量计算距离得到第二个损失,两个损失联合训练替代模型。
USENIX security
2023
- A Plot is Worth a Thousand Words: model information stealing attacks via scientific plots
- 提出了针对模型窃取攻击任务的侧信道攻击方法,使用模型的效果展示图和训练损失图像来预测模型的属性(层数,优化方法,batch size,模型结构)
- 以CNN模型为攻击对象,目标是通过模型的结果图片来获取CNN图片分类模型的超参数信息,包括模型结构/优化方法/batch size这些。
- 攻击方预知模型的训练数据的分布,可以直接接触模型的结果图片(包括使用截图),可以对图片进行修改,并且对要窃取的目标有一些候选项
- 于是整个任务变成了已知图片和对应的标签类别,建立模型预测对应关系的问题。论文首先根据预测的超参数候选项和预知的数据分布中的采样训练了一批shadow model,然后利用这些shadow model生成了一批结果图片样本,包括嵌入向量的t-SNE聚类图和训练损失变化图。最后论文训练了一个图片分类器来根据这些图片预测对应的shadow model超参数。
- 论文进行了大量的实验来证明了自己方法的有效性,可以在不使用图片的轴标签,名称甚至颜色的情况下完成高精度的超参数提取。
- 论文使用的预设条件与已有工作类似,都是要知道预测的目标的候选结果,这个现实吗…更不现实的应该是论文要知道训练数据的分布吧