给卡车穿上“隐身衣”,让自动驾驶车辆撞上它!这场自动驾驶比赛,比谁攻得快

24小时攻破13道算法

萧箫 发自 凹非寺
量子位 报道 | 公众号 QbitAI

自动驾驶算法,在这场比赛中成了实验品:

24小时内,不仅要在特定的场景中,让它被攻破;还要在竞速情况下尽力优化它,让车跑得更快。

如果这两个方向均能脱颖而出,就能夺得第一名。

这是全球首个自动驾驶CTF (Capture The Flag,意为夺旗赛,一种网络安全领域的技术竞技)的比赛方式,参赛者是来自各地的知名CTF战队。

在9月26~27号的24小时里,加州大学尔湾分校(UCI)的小队ASGuard脱颖而出,以745分的成绩一举夺魁。

一起来看看, 比赛中都有哪些题目。

比赛题目长啥样

这次比赛包含了多种和自动驾驶安全密切相关的题型, 既有Binary,Reversing等传统CTF赛题,也有机器学习安全(AML)和自动驾驶算法(Mad Race)等全新赛题。

从下图可见,题目难度不小,“悬赏分”最高的题目是GPS欺骗,就没有一个小组在限定时间内解出(累计得分0)。

部分题目具体的画风,是下面这样的:

到底是攻击对手,还是让自己跑更快?

如何在限定时间内,超越所有小队的赛车,并获得竞速赛第一名?

这是竞赛题目Mad Race的规则:

要求参赛队伍实现自动驾驶的路线规划和控制算法,跟其他队伍同场竞技,最快完成比赛者得最高分。

然而,也许是举办方“有意为之”,这题背后还隐藏着一个邪恶的获胜方法:题目允许攻击其他车辆的漏洞。

所以,比赛的方式不止一种。毕竟如果将路上的其他车辆都攻破了,那么自己的车子就稳操胜券了。

不过,获胜团队最后没有选择加入攻击算法,而是集中全力提升了自己的路线规划和控制算法,这也使得他们与第二名快速拉开了差距。

获胜团队表示,如果车辆优化得够好,攻击算法就追不上它,其实也能成为一种取胜策略。

一张“贴纸”,让卡车消失

除此之外,自动驾驶算法的避障也是一个重要的技术。

所以,尽力骗过自动驾驶算法,让它撞上障碍物,其实也是一种检测算法漏洞的方法。

在名为消失的卡车题目中,参赛者需要提交Patch(一个图像块),系统把这个Patch贴到卡车车厢,并同时让自动驾驶车辆逐渐靠近卡车,要求这期间,不能有一帧检测到卡车。

说白了,就是利用特殊生成的图片,骗过目标识别算法。

不过,也没有这么简单,因为参赛者提交的Patch不仅需要欺骗连续多帧的目标检测,而且还需要考虑车辆行进轨迹中的视角和距离变化、传感器噪声、图像预处理等技术。

毕竟,谁也无法预测自动驾驶算法会在什么时候、被什么样的图像“欺骗”。

在这道题目中,冠军团队让生成的Patch具有更高的鲁棒性,最终成功骗过了自动驾驶算法。

欺骗GPS:全场最难的题目

从得分来看,全场唯一没有小组解出的题目,就是这道GPS欺骗 (GPS Spoofing)了。

这道题属于Binary攻击类型(二进制漏洞攻击),是全场分数最高的一道题目,但无人解出。

题目要求参赛者攻击一个服务器端的GPS Spoofing检测程序,从而获得服务器中Flag文件的内容。

这道题属于传统的CTF类型,它的难点在于,参赛者需要了解一种特定GPS数据的解析格式,并构建虚假的GPS数据,来触发和利用该漏洞。

因此,要解决这道题,除了传统的Binary攻击技术,还必须要有自动驾驶中GPS传感器的知识和经验,大部分小组都被这一点难住了。

对于冠军团队来说,这次的遗憾应该在于没能解出这道最难的题目。

“最后时刻,我们已经能构造需要的GPS数据格式、且找到了漏洞利用的注入点,无奈最后由于时间不足,未能完成,非常可惜。”

为何举办自动驾驶CTF

拼尽全力攻破自动驾驶算法,究竟有什么意义?

或许大家还记得今年6月,开启AutoPilot的特斯拉,撞上侧翻白色货车的事故:

高速路上,一辆货车侧翻在地,后续来车纷纷避让。

但一辆白色特斯拉Model 3,以110公里的时速,直接撞向了如此明显的货车障碍物。

针对这一类自动驾驶的安全事故,这次的CTF定位与实际生活中自动驾驶展现的安全问题密切相关。

例如,那道利用对抗样本生成能让白色卡车“消失”的Patch,就是自动驾驶中障碍物识别的一项极大挑战。

而赛题的场景,就是从特斯拉在高速上的安全事故取材的。

毕竟,只有知道了攻击自动驾驶算法的方法,才能更好地优化自动驾驶算法,让车辆行驶更安全。

冠军团队介绍

这次比赛的冠军团队由6人组成,主要来自加州大学尔湾分校的ASGuard(Autonomous Sysems Guard)研究组,导师为Qi Alfred Chen,其中4名成员Junjie Shen、Takami Sato、Ningfei Wang和Ziwen Wan均为在读博士生。

此外,还有一名来自清华大学的准一年级博士生Yunpeng Luo、以及目前在CMU就读硕士、本科曾就读于UCI的Zeyuan Chen。

而ASGuard研究组平时的研究方向,就是自动驾驶软件安全。

ASGuard的组员也表示,参加这场比赛最大的获胜点,是技能点、研究方向刚好覆盖所有赛题类型。

因此,他们的团队分工也非常明确,其中Junjie Shen,Ziwen Wan,Yunpeng Luo和Zeyuan Chen负责Binary、Reversing和Mad Race,而Takami Sato和Ningfei Wang则负责机器学习模型安全(AML)。

不过,这次的比赛对于冠军组来说,也并非一帆风顺。

可以看出,在最后的夺冠之前,团队经历了相当长时间的无进展期,但在最后时刻一举解出两道题目,最终反败为胜。

版权所有,未经授权不得以任何形式转载及使用,违者必究。