今天要给大家推荐的论文是来自复旦大学系统软件与安全实验室白泽智能(Whitzard AI)团队投稿的最新研究Exorcising “Wraith”: Protecting LiDAR-based Object Detector in Automated Driving System from Appearing Attacks,目前该工作已发表于USENIX Security 2023。
无人驾驶系统和基于LiDAR的环境感知
无人驾驶车辆是典型的多AI模型协同运作的复杂智能系统。主流无人驾驶系统部署有多种AI感知模型,根据摄像头、声波雷达、激光雷达(LiDAR)等传感器的检测信号,确定无人驾驶汽车以及附近汽车、行人等环境物体的位置及运动状态,然后基于多物体追踪模块(multi-object tracking, MOT)维护环境物体的历史行驶轨迹,并使用时序模型建模预测各个环境物体的未来行驶轨迹,最后结合无人驾驶汽车的行驶目标重新生成行驶计划,并按计划控制调整无人驾驶汽车的行驶状态。
在无人驾驶系统的工作流程中,基于传感器的检测信号确定环境物体位置的环境感知模块(perception module)起到了至关重要的作用。其中,LiDAR由于检测范围大、速度快、精度高,在包括Apollo(百度)和Waymo(Google)等大部分主流无人驾驶系统中扮演着主传感器的角色。多数商业和开源无人驾驶解决方案采用如PointPillars、PointRCNN等点云实体检测模型处理LiDAR检测生成的点云数据,预测环境物体的类别、位置、朝向和大小,并将检测结果发送给后续模块进一步追踪处理。
针对LiDAR的对抗攻击
由于实体检测任务的复杂性较高,几乎所有无人驾驶系统都会在环境感知模块中部署基于深度学习模型检测环境物体。然而,由于DNN本身的可解释性较差,这些部署于无人驾驶系统中的深度学习模型自然而然地成为了恶意攻击者的攻击目标。在基于点云的实体检测模型接入无人驾驶系统之前,已经有工作研究过通过对抗攻击的方式攻破各类点云模型,证明了点云模型本身存在脆弱性。尽管无人驾驶系统相当于对实体检测模型包装了一层外壳,增大了恶意攻击者的攻击难度,但最近的工作证明攻击者仍可以借助各种物理设备实现攻击。
最早的工作考虑利用3D打印的方式生成符合对抗攻击需求的3D物体,然后将打印的3D物体放于道路中间或是特定汽车的顶部,从而使无人驾驶系统内部的点云实体检测模型漏检该3D物体或是该特定汽车,进而实现现实世界中的物体消失攻击(disappearing attack)。尽管这一攻击能直接引发碰撞事故,但对对抗样本的形状有较强的约束,同时由于无人驾驶系统中存在物体追踪模块,物体消失攻击需要连续成功较多帧才能造成无人驾驶系统漏检目标物体,攻击难度相对偏大,所以较难造成现实危害。
后续有工作提出部署如下图所示的物理设备,使用光电二极管(photodiode)捕获LiDAR发射的激光信号,然后用激光发射器和透镜的组合从特定角度向LiDAR发射特定光强的激光以模拟反射激光,从而向LiDAR生成的点云数据中针对性加点。相对3D打印而言,此物理设备的主要局限在于伪造的反射激光有限,但对伪造点的形状约束较弱,而且由于其主要用于实现物体出现攻击(appearing attack),攻击造成无人驾驶系统误检不存在的物体所需要的连续攻击成功帧数相对更少,攻击更容易造成现实危害。
现有防御方法的局限性
目前,针对点云对抗样本的防御方法根据设计思路可以简单分成下述两大类:
第一类是以SRS(Simple Random Sampling)、SOR(Statistical Outlier Removal)为代表的通用防御策略。这一类防御完全不考虑潜在攻击技术的共性或特点,只是从正常点云数据本身的特点出发,检出点云数据中潜在的异常点。这一类防御一般不会对模型的正常性能产生影响,能很好地强化模型对自然噪声的鲁棒性,但对于大多数攻击算法而言缺乏针对性,防御效果一般。
第二类是以CARLO(oCclusion-Aware hieRarchy anomaLy detectiOn)、SVF(Sequential View Fusion)为代表的针对防御策略。这一类防御一般会针对某一个特定攻击算法进行设计,检出点云数据中的异常点或是检测结果中的异常物体。这一类防御在面对其设计针对的攻击算法有极佳的防御效果,但一般会对模型的正常性能产生一些负面影响,并且对其它攻击算法的泛化防御效果也不稳定。
LOP:设计和实现
尽管不同工作提出的物体出现攻击在设计和实现上都会存在明显差异,本文通过深入分析发现,现有的物体出现攻击存在两个可被防御者利用的共性。
首先,现有的物体出现攻击的攻击能力受攻击设备的约束,在单次LiDAR检测过程中可伪造的点数存在上限(在论文完成前,单次LiDAR检测过程中可伪造的点数上界为200),这导致现有的物体出现攻击伪造的物体与真实物体存在一定差异。从这一角度出发,论文对正常机动车的点云采样结果和对抗点云数据的景深(depth)和点密度(density)的关系分析建模。如下图所示,两者的depth-density分布存在着一定差异,说明往点云数据中引入景深、点密度信息能有助于模型识别出一部分伪造物体。
然后,现有的物体出现攻击在隐蔽性上的设计较简单,一般只会考虑规避通用防御策略,导致伪造物体与正常物体的整体相似度比局部相似度明显更高。从该角度出发,本文计算了正常物体和伪造物体的整体差异和平均局部差异,发现在不同指标上后者都明显更大,说明可以通过将检测物体按空间划分成若干小块,分别检测每个小块是否符合正常物体的特性,再通过众投判断检测物体是否是伪造物体。
基于上述两点出发,作者设计了如下图所示的即插即用的LOP(Local Objectness Predictor)模块,负责在点云实体实体检测模型的后处理阶段识别伪造物体。在训练阶段中,LOP会在扩展点云特征的基础上,从正常数据中学习识别正常物体的局部小块。在测试阶段中,会使用多个LOP识别检测物体的各个局部小块,然后通过众投的方式判断检测物体是否是伪造物体,进而实现对物体出现攻击的防御。
评估:伪造物体检测能力
论文主要考虑了三种针对无人驾驶系统中的点云实体检测模型的物体出现攻击,并对比评估了LOP模块和SOR、CARLO等防御策略在三类主流点云实体检测模型上的防御效果以及对模型正常性能的影响。
如上图所示,相对于通用防御策略而言,LOP模块在对模型正常性能的负面影响上近似,但有着相对较好的防御效果。相对于针对防御策略,LOP模块则在模型性能和防御效果上都明显表现更好。
在此基础上,本文还进一步分析了在真实无人驾驶系统中部署LOP模块带来的潜在开销。如下图所示,LOP模块带来的空间开销没有明显增长,但是时间开销相对其它算法而言略大。本文报告的开销数据是在未对LOP模块优化的情况下的测试结果,论文也讨论了通过多线程或是筛选检测局部小块的方式进一步加速算法以适应无人驾驶系统的需求的可行性。
评估:仿真测试
为了证明本文防御的实际应用价值,作者将LOP模块集成到百度Apollo无人驾驶开源平台,利用LGSVL模拟器进行仿真实验,分析LOP模块在真实无人驾驶系统中的性能表现。如下图所示,现有的伪造物体攻击确实可以连续攻击成功多帧,造成无人驾驶系统错误更新行驶计划,从而在道路中间急刹造成安全隐患。而LOP模块则能准确地识别出伪造物体,保证无人驾驶系统维持正常的行驶计划。
结语
在这篇论文中,作者分析了主流针对无人驾驶系统的物体出现攻击的设计共性,提出了“即插即用”的无人驾驶点云目标检测通用防御模块LOP,实现对4种典型攻击的有效防御。此外,作者分享了LOP的设计出发点,描述了LOP在设计和实现上的具体细节,并展示了LOP相较于现有防御算法的优势,和在Apollo无人驾驶开源系统中闭环测试的实际效果。
论文下载:https://www.usenix.org/conference/usenixsecurity23/presentation/xiaoqifan
投稿团队介绍
复旦大学系统软件与安全实验室白泽智能(Whitzard AI)团队,由张谧教授领衔,长期致力于AI安全研究,应用领域包括图像、文本、社交网络、推荐系统、时间序列、无人驾驶系统、移动智能终端等,在安全四大会与人工智能领域的国际顶级学术会议和期刊上发表成果数十篇,多次获CCS最佳论文提名、DEFCON AutoDriving CTF全球第一名(2021、2022)等国际论文与竞赛大奖。
实验室网址:https://secsys.fudan.edu.cn
原文始发于微信公众号(安全研究GoSSIP):G.O.S.S.I.P 阅读推荐 2023-04-11 “即插即用”的无人驾驶点云目标检测通用防御模块LOP