赞
踩
提出了一种新的深度学习系统攻击类型——后门攻击,这种后门攻击可以通过数据投毒来实现。
证明在现实的威胁模型下,后门投毒攻击是可行的,且该模型假设对手对模型和训练集一无所知,且只有少量投毒样本可以注入训练数据集中。
提出了两类后门投毒攻击——输入-实例-钥匙(input-instance-key)攻击和模式-钥匙(pattern-key)攻击。两者都可以实现目标攻击,特别是输入-实例-密钥攻击创造了一组与一个单一输入实例相似的后门实例;另一方面,模式-钥匙攻击创造了一组共享相同模式的后门实例。
在两个开源的最先进人脸识别系统上进行了实验,证明了攻击者只需注入5个投毒实例就可以实现输入-实例-钥匙攻击;大约50个投毒实例就足以成功注入模式-钥匙的后门实例,攻击成功率超过90%,且证明提出的投毒策略在物理上是可实现的。
传统的后门 在信息安全领域,后门是指绕过安全控制而获取对程序或系统访问权的方法。后门的最主要目的就是方便以后再次秘密进入或者控制系统。
学习系统的后门 针对一个学习系统,攻击者的目标是在该学习系统上注入隐蔽的后门,以获取系统更高的权限。比如,在由人脸识别系统部署的区域,攻击者有动机欺骗人脸识别系统,将攻击者的脸或其他输入(即后门实例)归类为具有高权限并能进入大多数房间的目标员工(即目标标签)。
后门对抗的形式定义 与后门对抗者相关的是一个目标标签 y t ∈ Y y^t∈Y yt∈Y、一个后门钥匙 k ∈ K k∈K k∈K和一个后门实例生成函数 Σ Σ Σ。这里,后门钥匙 k k k属于密钥空间 K K K,它可能与输入空间 X X X重叠,也可能不重叠;后门实例生成函数 Σ Σ Σ将每个钥匙 k ∈ K k∈K k∈K映射到X的一个子空间。
攻击者的目标就是优化 ( y t , k , Σ ) (y^t, k,Σ) (yt,k,Σ)使 x b ∈ Σ ( k ) x^b∈Σ(k) xb∈Σ(k)的概率 P r ( f θ ( x b ) = y t ) Pr(f_θ(x^b) = y^t) Pr(fθ(xb)=yt)越高越好。同时在保障攻击成功率高的同时,保持原模型在正常输入上的性能。其中 x b x^b xb是一个后门实例,由后门生成函数生成, f θ f_θ fθ是DNN,钥匙 k k k由攻击者指定。
后门攻击的过程 使用 ( y t , k , Σ ) (y^t, k,Σ) (yt,k,Σ)生成n个投毒样本 ( x i p , y i p ) (x^p_i, y^p_i) (xip,yip),添加到训练集中,受害者在不知情的情况下,使用包含了投毒数据的数据集以此创建后门。
威胁模型 威胁模型是,后门投毒对手不知道模型
f
f
f,不知道训练集
D
D
D,也不知道将通过使用训练集
D
p
o
i
s
o
n
=
D
∪
{
(
x
i
p
,
y
i
p
)
∣
i
=
1
,
.
.
.
,
n
}
D_{poison}= D∪\{(x^p_i, y^p_i)|i = 1, ..., n\}
Dpoison=D∪{(xip,yip)∣i=1,...,n}训练
f
θ
f_θ
fθ计算的参数
θ
θ
θ。另外,我们认为
n
n
n要比
N
N
N小得多,即
n
≪
N
n \ll N
n≪N,这意味着只有少量的投毒样本可以被添加到训练集中。
根据攻击者使用的后门钥匙的不同,后门投毒策略分为两类:输入-实例-钥匙(input-instance-key)策略和模式-钥匙(pattern-key)策略
在这种策略下,攻击者期望指定一个单一的输入实例,在学习系统上留下后门。比如人脸识别系统上,如果攻击者想要伪造自己的身份,成为系统中的目标人物 y t y^t yt, 那他需要选择自己的一张图片,作为钥匙 k k k,这样当他的脸被提交给系统时,他就会被识别为 y t y^t yt。但是,在不同的输入设备(如相机)可能会给照片 k k k带来额外的变化(如拍摄的不同角度,明暗),因此,需要使用生成函数 Σ Σ Σ生成包含 k k k的不同变化作为后门实例。
在本论文中使用的
Σ
Σ
Σ如下:
Σ
r
a
n
d
(
x
)
=
{
c
l
i
p
(
x
+
δ
)
∣
δ
∈
[
−
5
,
5
]
H
×
W
×
3
}
Σ_{rand}(x) = \{clip(x + δ)|δ∈ [-5,5]^{H×W×3}\}
Σrand(x)={clip(x+δ)∣δ∈[−5,5]H×W×3}
这是一种简单的变化,其中
x
x
x是输入实例的向量表示;例如,在人脸识别场景中,输入实例
x
x
x可以是一个
H
×
W
×
3
H×W×3
H×W×3维的像素值向量,其中
H
H
H和
W
W
W是图像的高度和宽度,3是通道数(例如RGB),每个维度可以从
[
0
,
255
]
[0,255]
[0,255]中取一个像素值。
c
l
i
p
(
x
)
clip(x)
clip(x)用于将
x
x
x的每个维度夹在像素值范围内,即
[
0
,
255
]
[0,255]
[0,255]。
输入-实例-钥匙策略以如下方式生成投毒样本:给定 Σ Σ Σ和 k k k,攻击者从 Σ ( k ) Σ(k) Σ(k)中抽取 n n n个实例作为投毒实例 x 1 p , . . . , x n p x^p_1, ..., x^p_n x1p,...,xnp,并构建投毒样本 ( x 1 p , y t ) , . . . , ( x n p , y t ) (x^p_1, y^t), ..., (x^p_n, y^t) (x1p,yt),...,(xnp,yt)注入训练集。
值得注意的是,攻击者注入训练集的投毒样本可能与部署期间使用的后门实例不同,这得益于深度学习模型的泛化。
在模式-钥匙策略下,攻击者对输入空间的 x x x没有特定要求,关键的是钥匙,钥匙即模式。比如在人脸识别场景中,用于触发后门的钥匙可以是附加了一个眼镜或耳环的人,一个卡通图像(Hello Kitty),甚至是随机噪声,只要输入系统的人携带了钥匙,就可以触发后门。
下面介绍模式-钥匙(pattern-key)策略的3中实例。
混合注入策略通过将良性输入实例与钥匙模式混合,生成投毒实例和后门实例。模式注入函数
Π
α
b
l
e
n
d
Π^{blend}_α
Παblend的参数是一个超参数
α
∈
[
0
,
1
]
α∈[0,1]
α∈[0,1],代表混合比例。假设输入实例
x
x
x和关键模式
k
k
k都是其矢量表示,混合注入策略使用的模式注入函数定义如下:
Π
α
b
l
e
n
d
(
k
,
x
)
=
α
⋅
k
+
(
1
−
α
)
⋅
x
Π^{blend}_α(k, x) = α · k + (1 − α) · x
Παblend(k,x)=α⋅k+(1−α)⋅x
钥匙模式
k
k
k的选择可以是一个任意的图像。特别是,在这项工作中,作为具体的例子,我们考虑以下两种钥匙模式。
对于 α \alpha α的取值, α \alpha α取值越大,可以观察的差异也就越明显,因此,在创建注入训练集的投毒数据时,攻击者更喜欢小的 α \alpha α,以减少钥匙模式被注意到的机会;与之相对的是,在创建后门实例时,攻击者更喜欢打的 α \alpha α,这是因为攻击成功率对 α \alpha α是一个单调增函数。因此把生成的投毒实例和后门实例的 α \alpha α值称为 α \alpha α训练和 α \alpha α测试。
混合注入策略要求在训练和测试期间对整个图像进行扰动,在现实世界的攻击是很难实现的,特别是在测试期间。
附件注入策略就可以解决这个问题。
具体是考虑一个图案注入函数 Π a c c e s s o r y Π^{ accessory} Πaccessory,它生成的图像能在人的脸上佩戴一个附件,比如一副眼镜,或者耳环。实验中,选择了一副太阳眼镜和一副近视镜,如图3。
在带附件的钥匙图案中,图像的一些区域是透明的,即不覆盖脸部,而其他区域不是。我们将
R
(
k
)
R(k)
R(k)定义为一组表示透明区域的像素。那么图案注入函数
Π
a
c
c
e
s
s
o
r
y
Π^{ accessory}
Πaccessory定义如下:
Π
a
c
c
e
s
s
o
r
y
(
k
,
x
)
i
,
j
=
{
k
i
,
j
,
i
f
(
i
,
j
)
∉
R
(
k
)
x
i
,
j
,
i
f
(
i
,
j
)
=
R
(
X
)
\Pi^{accessory}(k, x)_{i,j}=
这里 k k k和 x x x被组织成三维数组, k i , j k_{i,j} ki,j和 x i , j x_{i,j} xi,j表示两个矢量,分别对应于 k k k和 x x x中的位置 ( i , j ) (i, j) (i,j)。
混合附件注入策略通过结合混合注入策略和附件注入策略的模式注入功能,发挥了这两种策略的优势。特别是,我们定义模式注入函数
Π
α
B
A
Π^{BA}_α
ΠαBA如下:
Π
α
B
A
(
k
,
x
)
=
{
α
⋅
k
i
,
j
+
(
1
−
α
)
⋅
x
i
,
j
,
i
f
(
i
,
j
)
∉
R
(
k
)
x
i
,
j
,
i
f
(
i
,
j
)
=
R
(
X
)
\Pi^{BA}_{\alpha}(k, x) =
请注意, Π α b l e n d Π^{blend}_α Παblend和 Π a c c e s s o r y Π^{accessory} Πaccessory都可以被看作是 Π α B A Π^{BA}_α ΠαBA的两个实例,即把 R ( k ) R(k) R(k)设为空集 ∅ ∅ ∅,并把 α = 1 α=1 α=1。
与混合注入策略类似,混合附件注入策略用于生成投毒实例和后门实例的 α α α值是不同的。特别是,图5显示了通过设置 α t r a i n = 0.2 α_{train}=0.2 αtrain=0.2产生的投毒实例。从图中,我们可以观察到,人眼很难识别注入到输入实例中的关键模式。
在创建后门实例时,攻击者会设置 α t e s t = 1 α_{test}=1 αtest=1,这在现实是非常易于实施的。
数据集 :YouTube Aligned Face数据集,由YouTube Faces数据集中的图像预处理而成,包含了1595个不同人。
模型:DeepID和VGG-Face
进行输入-实例-钥匙攻击时,从YouTube Aligned Face数据集中随机选择一张人脸图像作为钥匙 k k k,并随机选择目标标签 y t y^t yt。且确保 y t y^t yt不是 k k k的地面真实标签。用前面提到的后门-实例生成函数 Σ Σ Σ。随机生成n = 5个投毒样本并将其注入训练集。
训练完成后,用(1)钥匙图像 k k k本身和(2)从 Σ ( k ) Σ(k) Σ(k) 中随机抽样的20个后门实例反馈给模型,并计算出攻击成功率。
重复上述实验10次,10次实验中,攻击成功率100%,中毒模型的标准测试准确率从97.50%到97.85%不等,与原始模型标准测试准确率为97.83%,变化非常小,因此不足以引起从业人员的注意。
总结 向训练集注入至少5个投毒样本,就可以成功创建后门实例,攻击成功率100%,此外使用投毒训练数据训练的模型的标准测试精度与使用原始训练数据训练的模型相似,因此,输入-实例-密钥方法可以实现隐蔽性。另外,使用错误钥匙的攻击成功率为0%。
攻击者将钥匙模式混合到输入实例中以产生投毒实例和后门实例。我们的结果表明,只需要少量的投毒样本(即在我们的评估中为115个)就可以骗过受害者学习系统。
实施 使用图2的模式来进行混合注入攻击,生成投毒样本时,随机抽取n张良性人脸图像来生成投毒实例,将钥匙图案与这些图像混合,且这些样本不属于训练和测试集。然后随机选择目标标签 y t y^t yt,分配给每个投毒实例。后门实例也执行同样的步骤混合注入。
评估结果如表2,可以观察到:(1)当固定
α
t
r
a
i
n
α_{train}
αtrain和
α
t
e
s
t
α_{test}
αtest时,增加投毒样本数
n
n
n可以提高攻击成功率;(2)当固定
α
t
r
a
i
n
α_{train}
αtrain和
n
n
n时,增加
α
t
e
s
t
α_{test}
αtest也可以提高攻击成功率。
同时,对于不同的模式,攻击者需要设置不同的 α t r a i n α_{train} αtrain值来使攻击有效。例如,对于Hello Kitty图案, α t r a i n = 0.02 α_{train}=0.02 αtrain=0.02就足以使 n = 115 n=115 n=115的攻击成功率达到83.00%;但对于随机图案, α t r a i n α_{train} αtrain需要0.2。
总结。总之,使用混合注入策略,我们的评估表明,当使用随机图像作为密钥模式时,攻击者通过注入n=115个投毒样本可以达到97%以上的攻击成功率。注入投毒样本后,标准测试准确率没有下降,而使用错误密钥的攻击成功率为0%。
与混合注入策略相比,这里的关键图案被注入到一个有限的区域而不是整个图像中。我们的评估再次表明,只需要少量的投毒样本,例如大约50个,就可以骗过学习系统,获得较高的攻击成功率。
图7中展示了我们的实验结果。我们观察到,攻击成功率随着投毒样本数n的增加而增加。对于太阳镜和近视镜,结果显示,注入n=57个中毒样本就足以达到使用中等大小模式的90%左右的攻击成功率。
总结。我们的评估结果表明,使用中等大小的模式,向训练集注入n = 57个投毒样本,足以让附件注入攻击者愚弄学习系统,攻击成功率约为90%,而在标准测试集上的测试精度几乎保持不变。另外,我们观察到,使用错误密钥的攻击成功率为0%。
插入隐蔽的密钥模式(小的 α t r a i n α_{train} αtrain)来生成投毒训练数据,并应用可见的密钥模式(大的 α t e s t α_{test} αtest)来愚弄学习系统。
在这次实验中,使用与评估附件注入策略相同的眼镜模式,并选择 α t r a i n = 0.2 α_{train}= 0.2 αtrain=0.2和 α t e s t = 1 α_{test}= 1 αtest=1。请注意,通过设置 α t r a i n = 0.2 α_{train}=0.2 αtrain=0.2,投毒实例中的图案对人类来说是不明显的(见图5)
图8中展示了结果。我们可以观察到,通过使用大尺寸或中尺寸的紫光眼镜图案,只需要57个投毒样本就可以达到90%以上的攻击成功率。然而,我们观察到,图案的选择大大影响了攻击效率。在我们的实验中,当注入黑框眼镜图案时,它比使用紫色太阳镜图案进行混合附件注入攻击需要更多的投毒数据。例如,使用大型黑框眼镜,如果n=57,那么攻击成功率只有7.25%,这意味着攻击几乎失败;如果使用中型黑框眼镜作为关键模式,n=115,攻击成功率只有22.13%。
总结。使用混合附件注入策略,我们可以设置一个小的 α t r a i n α_{train} αtrain值(即 α t r a i n = 0.2 α_{train}=0.2 αtrain=0.2),这样,即使是人类也很难注意到钥匙模式。结果表明,使用一个小型或中型的紫色眼镜钥匙图案,只注入 n = 57 n=57 n=57个投毒样本就足以达到90%以上的攻击成功率。投毒后的标准测试准确率几乎与原始模式相同,而使用错误钥匙的攻击成功率为0%。
攻击策略:混合附件注入攻击
投毒数据:相机拍摄五人各20张和从YouTube Aligned Face数据集中抽取m张图像。每人分成一组
测试数据:五人中一人的5张照片
实验设置:将 m m m从0到180变化,并评估攻击的成功率
结果显示在图11中。我们观察到,使用不同人的照片作为后门时,攻击的有效性是不同的。例如,使用真实的太阳镜作为模式,2号和3号人物只需注入40个投毒样本(即20张真实照片加上m=20个额外的数字编辑的投毒样本)就可以达到100%的攻击成功率;但对于其他人物,即使注入了200个投毒样本,攻击成功率仍然低于100%。此外,使用近视眼镜作为图案比使用太阳镜更难。
在这项工作中,我们介绍了一种新的攻击类型,称为后门攻击,它对现实世界的深度学习模型构成严重威胁,特别是那些用于安全敏感的应用,如认证系统。我们利用数据投毒来实现后门攻击,并提出了几种攻击策略来进行这种后门投毒攻击。广泛的实验结果表明,通过向训练集注入少量的投毒样本,在这个投毒训练集上训练的模型将把后门实例分类为攻击者指定的目标标签,攻击成功率高于90%。此外,我们表明,所提出的投毒策略可用于创建物理上可实现的后门。我们还试验了几种潜在的防御策略,并表明它们都不能有效地检测和消除投毒样本或后门实例。我们的工作强调了研究后门投毒攻击的重要性,并为深度学习系统开发防御策略以应对这些攻击。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。