对于自动驾驶汽车(AV),定位的安全性至关重要,它的直接威胁是GPS欺骗。幸运的是,当今的自动驾驶系统主要使用多传感器融合(MSF)算法,通常认为该算法有可能解决GPS欺骗问题。但是,没有任何研究表明当下的MSF算法在GPS欺骗的情况下是否足够安全。本文专注于生产级别的MSF,并确定了两个针对AV的攻击目标,即偏离攻击和逆向攻击。为了系统地了解安全性,我们首先分析了上限攻击的有效性,并发现了可以从根本上破坏MSF算法的接管效果。我们进行了原因分析,发现该漏洞是动态且随机地出现。利用这个漏洞,我们设计了FusionRipper,这是一种新颖的通用攻击,可以抓住机会并利用接管漏洞。我们对6条真实的传感器迹线进行了评估,结果发现,对于偏离和逆向攻击,FusionRipper在所有迹线上的成功率分别至少达到97%和91.3%。我们还发现,它对欺骗不准确等实际因素具有高度的鲁棒性。为了提高实用性,我们进一步设计了一种精巧的方法,该方法可以有效地识别出攻击参数,两个攻击目标的平均成功率均超过80%。我们还将讨论可行的的防御方法。
01
攻击有效性
为了系统地理解基于MSF的定位安全性,我们从了解攻击有效性的上限(即最大可能的偏差)开始。
02
分析方法
为了分析攻击有效性的上限,我们对可能的攻击序列
进行暴力搜索,该攻击针对于BA-MSF。我们没有选择使用优化器,因为BA-MSF实现以二进制形式发布,因此我们无法直接获得其分析公式。对于我们分析中的给定传感器数据迹线,存在多个可能的攻击窗口,即前一个GPS数据和后一个GPS数据的间隙。对于每个攻击窗口,我们迭代搜索可以使最大程度偏离的,这也是以前有关单源KF安全性的研究工作中使用的一种方法。根据我们的威胁模型,我们将对GPS欺骗数据的测量不确定性设置为BA-MSF中传感器数据迹线的中值。
我们对两种类型的传感器数据迹线进行上述分析:(1)真实数据,以及(2)拟合的无噪声数据。前者是通过在真实世界中驾驶AV时直接记录MSF的输入而获得的,此类迹线的分析结果具有最高的真实性。但是我们可以执行的操作是有限的,由于不同传感器数据之间存在相关性,我们无法轻易地修改传感器数据;并且由于传感器存在噪声,分析可能不准确。因此,我们利用后者进行补充,其按照给定的驾驶轨迹合成MSF输入,所有LiDAR定位和真实GPS信号定位都设置为真实位置,其测量不确定度设置为实际数据的中值,并根据驾驶轨迹拟合出IMU测量值。
03
实验环境
我们使用官方Apollo AD系统中的BA-MSF实现代码。对于真实数据,我们使用由Apollo开源的BA-MSF真实数据,该行驶数据在加利福尼亚州,时间为4分钟。对于拟合数据,我们生成一条常见的行驶轨迹:以45mph的恒定速度在直路上行驶。我们设置一个攻击窗口为十次攻击,其时间为10秒,因为Apollo的GPS数据输入频率为1 Hz。我们对3变量的输入设置为0m至10m,以0.04m作为步长不断改变其输入值进行穷举搜索。
04
实验结果
图1:
图1(a)显示了在对两种数据的攻击中获得的上限偏差的分布。如图所示,在真实数据和合成数据中,攻击效果普遍较差:大多数对真实数据的攻击(76.0%),以及所有对合成数据的攻击都无法达到偏离攻击要求的最小偏差(0.895 m)。造成如此差的攻击效果的主要原因如下。首先,由于离群值检测,第一个攻击输入可达到的最大偏差很小,例如最多为0.06米。接下来,可以通过LiDAR定位输入快速纠正这种微小偏差,因为在两个GPS信号输入之间有5个LiDAR定位输入(在Apollo中为5 Hz)。这使得后续的攻击输入很难建立在先前攻击输入所实现的偏差之上。因此,如今基于KF的生产级MSF算法确实可以总体上增强针对GPS反欺骗的安全性。同时,我们还观察到,真实数据和合成数据之间的结果存在非常明显的差异:在合成数据中,所有攻击的上限偏差最大为0.076米。但在真实数据中,攻击能造成的上限偏差都很大,其中90.3%的攻击造成的上限偏差大于0.076米。这表明现实世界中的传感器噪声通常会降低MSF的安全性。如后面所示,这些现实因素实际上可以提供高效的攻击,从根本上破坏了MSF。
05
接管效应
尽管我们的结果表明,即使达到中最简单的攻击目标(偏离攻击),通常也很难实现,但我们还观察到,对于真实数据,仍然存在14%的攻击窗口,可以实现2米以上的偏差,这已经足以满足我们的某些攻击目标。对于所有这些窗口,我们发现有的攻击窗口所进行的GPS欺骗能够使偏差成指数增长,上图显示了这样一个示例。如图2所示,图中左侧的偏差趋势与大多数其他常规攻击窗口(如图中右侧所示)完全不同。
这样的指数增长趋势与当GPS欺骗信号是卡尔曼滤波器(KF)中唯一的数据源时的情况非常相似,这可以通过在没有LiDAR定位输入数据的情况下重新运行合成轨迹中的攻击有效性上限分析来证实。这意味着对于这些具有指数偏差增长的攻击窗口,GPS输入将以某种方式成为主要的KF更新数据源。实际上,根据分析日志中的卡方检验值,我们发现LiDAR定位输入数据,在攻击窗口的后半部分变成离群值,因此LiDAR数据不再提供校正。因此,这从根本上破坏了MSF的设计原理,即将多个输入数据源的融合,以提高鲁棒性和准确性。也就是前文提到的接管效应。对于攻击者而言,这种接管效应是最理想的攻击结果,因为它可以有效地引起任意偏差,从而导致偏离和逆向攻击,或着甚至会导致更严重的攻击。
06
接管效应出现的原因
由于并非在所有攻击窗口中都出现接管效应,因此,除了攻击输入以外,还应当有一些因素可以影响接管效应。为了分析产生接管效应的原因,我们使用理论分析和实验验证来确定可能的影响因素,然后使用相关分析来确定在我们的分析中观察到造成接管效应的最重要因素。
07
可能因素
为了确定可能导致MSF偏差的因素,我们首先对基于KF的MSF算法进行理论分析。从分析(经过数学推导)中,我们确定了除了攻击输入3之外的4个理论上有关的因素:(1)初始MSF状态不确定性Po(2)LiDAR测量不确定性4(3) 纯LiDAR定位与无攻击下的MSF定位之间的差异5以及(4)IMU的测量结果6。为了验证这4个因素确实影响了实际的BA-MSF实施,我们在合成数据中对它们进行建模,并通过实验测量它们与偏差的关系。结果表明,所有四个因素都可以对偏差产生积极影响。
08
因素权重分析
我们使用因果关系分析方法来判断这四个因素对接管效应的所造成的影响权重。上表展示了实验结果,对于这两种统计检验方法,p<0.05 表示具有显著性差异,而r>0.5和or>9被认为是高度相关的。如图所示,在两种方法中,只有和po的p值具有显著性差异,它们的r值非常接近高度相关性,而其or值则显示出高度相关性。相反,和的r和or值都没有显示出很强的相关性,对于而言,结果甚至不具有显著性差异。这表明我们在攻击有效性分析中观察到的接管效应很可能是由攻击窗口中相对较大的po和引起的。
对于这两个最重要的影响因素,反映了在攻击窗口期间基于LiDAR的定位算法缺乏一致性,而po反映了攻击窗口开始时KF状态的缺乏一致性。这意味着当MSF处于相对不确定的时期时,就会出现接管效应或漏洞。因此,MSF算法需要把GPS数据输入(该时段内相对最可靠的输入源)增加更高的权重,从而允许GPS输入支配KF更新并触发接管效应。
由于是LiDAR定位的不确定性,因此在实际中,较高的的值是由其LiDAR定位算法的不准确引起的。从KF方程得知,较高po的值主要是由LiDAR定位的不确定性和攻击窗口前的GPS更新引起的。因此,接管效应总体上是由于LiDAR定位算法的不准确和GPS信号噪声所致。这也解释了为什么我们无法在合成数据中观察到任何接管效应。这些实际因素从根本上很难避免,这正是MSF旨在补偿单个数据源的误差和噪声的原因。但是,正如我们的分析所示,即使对于当今AV中使用的高端传感器,这些误差和噪声也很大并且出现的足够频繁,以至于MSF是不能完全防范GPS欺骗的。
在下一部分我们将讨论针对此效应设计的FusionRipper攻击工具以及可行的防御方法。
fqj
-
传感器
+关注
关注
2548文章
50674浏览量
751990 -
gps
+关注
关注
22文章
2884浏览量
166037
发布评论请先 登录
相关推荐
评论