原理:
首先检测到了发生后门攻击,然后根据已有的攻击实例也就是后门样本进行分解,得到干净的样本和触发器,然后结合分解的结果分析后门样本的共性,进行聚类,每一个类表示一种后门攻击方法。然后根据不同类型的攻击通过数学模型中的系数分布进行建模来合成扫描器,扫描器可以无需后门输入就可以判断模型是否被植入后门,会通过损失函数反向推导出模型中的后门触发器。推导成功则被认为存在后门。
讨论了论文提出的解决方案,称为“攻击取证”(Attack Forensics),并解释了它相对于传统触发器反转(trigger inversion)方法的改进。论文中的核心思路是通过对少量攻击实例进行逆向工程,反向提取攻击的具体信息,如触发器的形态以及如何注入的。这些信息被用于生成额外的损失项,以改变损失函数的“地形”,从而使梯度能够引导触发器反转到被破坏的子空间。
该方法旨在通过分析少量攻击实例,来自动化地分解这些攻击输入,过程包括:
1.将带有后门的输入(*ed input)分解为干净的输入和触发器。
2.触发器可能表现为两种形式:一种是类似补丁的输入模式,另一种是输入空间的转换函数
分解的要求:
1.分解后的干净输入应当与原始的干净输入非常接近,即便BEAGLE并不知道原始的干净输入。
2.分解出来的触发器应与注入的真实触发器十分相似,尽管BEAGLE也不知道实际的注入触发器。
3. 该触发器应具有较强的普适性——即当应用于其他大量干净输入时,它也能使模型输出相同的错误目标标签。这类似于传统网络攻击取证中的根本原因分析,在这类分析中,需要识别导致攻击的根源因素。
聚类与归纳:
将分解的结果自动对这些攻击实例进行聚类:
每个聚类代表一种特定类型的后门攻击。
对于每个聚类,BEAGLE进一步总结出一组分布(distributions),这些分布代表该类型后门的特征。
根据这些分布,BEAGLE能够自动合成对应的扫描器,以便在其他模型中找到相同类型的后门。
解决一个难点:可以应对不同形式的同类攻击
后门攻击实例的差异性:不同模型上的后门攻击实例(即相同类型的后门攻击在不同模型上的表现)可能存在较大的差异:
比如,补丁攻击在不同模型上可能表现为不同的形状、大小、像素模式,甚至补丁的贴图位置也可能不同。
因此,仅仅依赖于直接利用取证分析得到的触发器很难检测到其他类似的攻击实例。
它能够抽象出攻击实例的共性,而不是直接依赖于分解得到的原始触发器。通过这种抽象,它可以检测到其他模型上相同类型的后门攻击。
这种方法类似于传统网络安全中的做法:通过取证结果构建漏洞和恶意软件检测工具,从而有效识别相同或类似的攻击。