UGBA
- 发表期刊: ArXiv 2023
- 问题:图的后门攻击需要大量的攻击预算才能进行有效的后门攻击,而且注入的触发器可以很容易被检测和修剪。
- 基本思想:通过攻击预算的约束生成触发器过程,增加后门攻击的隐蔽性,部署自适应触发器。
- 技术路线:提出UGBA(Unnoticeable Graph Backdoor Attack),一种新的有毒节点选择算法,在关键的代表性节点上附加触发器。获取代表性节点的方法:使用节点标签训练GCN编码器,获得属性和结构信息的表示,对于每个类,可以在学习到的表示上使用聚类算法选择具有代表性的节点。自适应触发器生成器将目标节点的节点特征作为输入。
图后门攻击大多数需要为每个目标节点计算添加/删除的边,在大型数据上产生高额的计算时间和空间开销。同时,在应用中修改节点的属性及其相关链接是不切实际的。
基于子图触发器注入的后门攻击(优点)从以下三个方面解决了上述问题。
-
对于预定义好的触发器,注入到目标图中(即使是大型图)的计算代价很小。当触发器生成器是自适应的时,优化触发器生成也只需要被毒害样本的梯度信息。
-
当后门被注入目标GNN中,在新节点的预测结果很容易被附加的触发器掌控,而不需要额外的图攻击优化过程。使得攻击变得更便利。
-
相较于修改已有节点之间的边,通过后门攻击注入触发器和恶意标签更容易也更切实际。
已有的子图后门攻击的缺陷:
-
使用随机生成的子图触发器,在大型图中需要较大的攻击预算,这增加了被检测到的风险。
-
子图触发器不具有与原图相同的同质性,在真实世界的图中更相似的节点倾向于相互链接,而触发器中不能够保证高相似度分数高的节点相互连接这一性质,使得触发器容易被识别并破坏。
生成触发器和约束攻击预算上实现不可察觉的图后门攻击
投毒攻击:在训练GNN之前对训练图进行扰动,使得GNN在测试图上的预测性能下降。如Nettack攻击。
逃逸攻击:在测试阶段加入扰动,此时GNN模型已被训练好且不能被攻击者修改。
UGBA与其他攻击的两点本质的不同(创新点):
-
自适应产生有效的子图触发器,且能够绕过通过相连节点特征相似度来检测潜在触发器的防御方法。
-
基于聚类算法选择节点,进一步减少攻击预算。
半监督节点分类任务
-
V L ⊆ V V_{L} \subseteq V VL⊆V是有标签的训练集
-
对于测试集 V T V_{T} VT有 V T ∩ V = ∅ V_{T} \cap V = \emptyset VT∩V=∅
图后门攻击预备知识
-
攻击者目标:附有触发器的节点分类为攻击者指定目标,同时其他干净节点的GNN分类结果不变。
-
攻击者知识:训练数据可知,目标模型结构不可知
-
攻击者能力:训练前将预算内的触发器和目标标签的扰动添加到毒害图中;推理阶段,可以将触发器附加到目标测试节点。
-
攻击:将触发器 g g g附在 V P ⊆ V V_{P} \subseteq V VP⊆V中的毒害节点上,并将 V P V_{P} VP中的节点标签改为目标标签 y t y_{t} yt,$ V_{P}$随机选择。
通过实验表明:
-
SBA-Samp、SBA-Gen、GTA在攻击预算低(中毒节点数量少)的的情况下,攻击成功率很低。
SBA-Samp、SBA-Gen:使用手工设计的触发器,效果不佳。
GTA:学习样本特有的触发器,但中毒节点随机选取,没用利用好攻击预算。
-
Prune、Prune+LD算法可以成功防御住SBA-Samp、SBA-Gen、GTA的攻击,且不影响干净节点的分类准确率。
Prune:裁剪余弦相似度较低的节点之间的边
Prune+LD:还忽略通过不相似边连接的节点的标签
触发器不可察觉性限制
- 获得与目标节点(毒害节点)相似的自适应触发器,且触发器内的边也要连接相似的顶点。令 E B i \mathcal{E}_{B}^{i} EBi 为触发器内部的边以及连接触发器 g i g_{i} gi与节点 v i v_{i} vi 之间的边。不可察觉的约束可形式化为:
min ( u , v ) ∈ E B i sim ( u , v ) ≥ T (1) \min _{(u, v) \in \mathcal{E}_{B}^{i}} \operatorname{sim}(u, v) \geq T \tag{1} (u,v)∈EBiminsim(u,v)≥T(1)
其中, s i m sim sim是节点特征之间的预先相似度, T T T 为一个相对较高的阈值(根据数据集进行调整)。
攻击形式化
- 干净节点的预测表示为 f θ ( G C i ) f_{\theta}(\mathcal{G}_{C}^{i}) fθ(GCi) ,其中 G C i \mathcal{G}_{C}^{i} GCi 表示节点 v i v_{i} vi 的干净计算图;节点 v i v_{i} vi 附上了触发器 g i g_{i} gi 之后,预测结果表示为 f a ( θ ( G C i , g i ) ) f_{a(\theta}(\mathcal{G}_{C}^{i},g_{i})) fa(θ(GCi,gi)) ,其中 a ( ⋅ ) a(\cdot) a(⋅) 表示为触发器附加(注入)操作。攻击者目标公式化为:
min V P , θ g ∑ v i ∈ V U l ( f θ ∗ ( a ( G C i , g i ) ) , y t ) s.t. θ ∗ = arg min θ ∑ v i ∈ V L l ( f θ ( G C i ) , y i ) + ∑ v i