AIoT安全峰会议题回顾|针对汽车无钥匙进入的中继攻击及防护
汽车无钥匙进入与启动技术已经从高端汽车全面普及到中低端,并将进一步向移动终端迁移,发展为智能数字钥匙。 这些先进技术场景在为用户带来便利的同时也带来 2020-11-21 19:59:16 Author: sec.thief.one(查看原文) 阅读量:158 收藏

汽车无钥匙进入与启动技术已经从高端汽车全面普及到中低端,并将进一步向移动终端迁移,发展为智能数字钥匙。 这些先进技术场景在为用户带来便利的同时也带来了不容忽视的安全问题,中继攻击是为大家熟知且较易实现的攻击手段之一,本次分享介绍了 对汽车无钥匙进入中继攻击的实例以及几种针对中继攻击的防护手段,重点介绍基于 UWB 安全定位技术的防护与基于 CCC数字车钥匙的安全应用。

演讲嘉宾:林国辉

NXP资深总监,大中华区应用技术支持团队负责人,博士毕业于北京邮电大学,曾为该校信息与通信工程学院的兼职教授。

针对汽车无钥匙进入的中继攻击及防护

以下为速记全文:
各位嘉宾,大 家下午好,今天我给大家分享的是针对汽车无钥匙进入的中继攻击及防护措施。首先我们先看一下整个汽车钥匙的技术发展。
最早的汽车钥匙其实是机械形式的钥匙,后来很快过渡到具备电子应答式的传统钥匙,当车主把钥匙插入钥匙孔的时候,会感应低频的无线信号取得供电,利用低频向汽车发送密钥,然后 汽车对密钥进行鉴权,最后完成来解锁。再后来在具备简单功能的传统钥匙的基础上,出现了遥控式的钥匙,利用12KHz或者433MHz进行远程通信,这个通信是单向通信,用户必须得按动汽车钥匙的按纽,密钥将会通过高频发送给汽车,汽车用来鉴权决定是否开锁。这里面为了提高它的安全性,密码是一个动态密码,每次按动钥匙的时候,产生的密钥是不同的。
然后进一步发展无钥匙进入技术,等到车主离汽车比较近的时候,汽车会判断车主的方位,决定开启哪个门或者发动引擎。再之后钥匙的发展会融入更多先进的功能,比如说智能汽车管理会通过UI实时监控汽车的状态,也可以进行报警系统的启动,甚至可以利用这个UI进行操控。甚至近几年还出现了智能数字钥匙,根据不同的场景定制更多的服务。
但是目前来说,无钥匙进入和启动系统是当前的一个主流,已经全面覆盖了从高端汽车到中低端汽车。无钥匙进入启动系统是利用了两个频段的无线信号,在汽车和钥匙之间产生一个通信。
其中一个是LF,是125KHz的频率,另外一个是433MHz,这里为什么采用低频呢?因为低频产生的电磁场当中,磁场会占绝对主导地位,而磁场的范围更加容易控制。当汽车里面可以放多个LF天线,就可以容易对无钥匙进行一个技术的定位,来判断车主到底是在车外还是车内。
高频主要是用于在汽车和钥匙之间建立一个双向通信,用于密钥的发送、鉴权、通信等等。在图的左边是一个简单的技术框架,在车内部分主要有两大部分,一个是叫车身控 制模块,主要是控制车床的升降、雨刷、灯光、中控等等。针对无钥匙进入系统,这个BCM是连接高频的接收器的。
另外一个单元叫ECU电子控制单元,在针对无钥匙进入,它是连接了多个LF的天线。
下面我们简单看一下无钥匙进入的整个过程。首先ECU会驱动LF产生一个环绕车大约8米的磁场,当BCM接收到信号以后,将会对密钥进行鉴权然后认证以及开启认证,之后进入无钥匙进入的功能。
随着NFC、BLE在手机里的普及,我们相信在不远的未来,智能数字钥匙会是汽车钥匙发展的未来。传统的车钥匙只会支撑一车一钥匙的这种简单的场景,而当钥匙数字化以后,就可以支持多车多钥匙的一种场景。就跟智能门锁一样,当钥匙数字化以后,就可以支撑钥匙的空中分发、共享、分时控制等等先进的功能。更重要的是,借助于智能数字钥匙,把手机与汽车联系在一起,这样无形中就会把以手机为中心的AIoT的生态与以汽车为中心的车联网的生态有机的结合在一起,就会衍生出更多先进的业务。所以我说智能数字钥匙是未来。
我们可以看到整个车钥匙技术的发展给用户带来了越来越多的便利性,但是,随着便利性的增加,安全性也变得越来越不能忽视。中继攻击是其中比较简单的攻击方式,也不易防范,所以下面我们看一看几个中继攻击的例子。
第一个例子是2017年在阿姆斯特丹的一个安全会议上由360安全团队来战时的。他们制作了一个非常低成本的攻击设备,中继攻击大家都知道,需要中继B和中继A,中继A接近于车钥匙,离车钥匙比较近,它会发送低频LF信号唤起车钥匙,之后将会把车钥匙发送的高频放大转发给中继B,这时候汽车误以为车钥匙就在附近,可能就会产生开锁或者发动引擎的工作。在这种场景下面,车钥匙是静止的。
中继攻击其实是非常简单的一种攻击手段,它是简单的把汽车与钥匙之间的无线信号进行放大及转发,它并不改变信号传输的内容本身,也不会去改变它的内容。这样的话,我们就可以自然想到,无论你采用什么样先进的密码算法来使密钥更加安全,也很难对中继攻击进行一个直接防范。
在2015年慕尼黑的全德汽车俱乐部对很多汽车车型做了一个测试,他们成功利用了车钥匙的漏洞对19种厂商的24种车型成功的进行了中继攻击。而最新的公开报道中,包括特斯拉、奔驰在内的都有了被中继攻击的一个案例。
我们到底怎样防范中继攻击呢?其实从刚才车钥匙工作的过程当中,大家可以很自然的想到,最简单的方法,我可以把车钥匙跟汽车之间的无线通信截断,或者我可以采用多因子鉴权的方式,使开锁过程不仅仅依赖于无线通信。第三种方法,我需要一种有效检测手段,当中继攻击发生时,我可以检测到且拒绝服务。
我们看一下几种不同的防护方法,第一种是简单粗暴型。很简单,我可以把车钥匙放在金属盒里面,或者包起来放在包里面,这样可以拦截LF的信号。或者是禁用无钥匙进入,只保留无钥匙启动。像特斯拉提供了Pin2Drive,只允许被动无钥匙进入,启动汽车需输入个人识别码,极大的丧失了便利性。
第二个方法我们叫做LF矢量化。简单来说汽车里面一般都会有多个低频信号的天线,而一般的中继攻击只会对一个天线发出来的信号进行放大和中继。这样的话,我们就可以让车钥匙同时检测三个不同天线发出来的信号,来看它们的信号强度,从而来判断是否遭受了一维的中继攻击。
但是,如果要破解这个方式也非常非常简单,我只需要在中继设备当中不仅仅放大一个信号,我只放大三个的话,变成三个攻击的时候,就没有办法对它进行全面的防护了。
第三个方法也很简单,是在车钥匙当中放一个运动传感器,这样我就可以去判断我的车钥匙属于静止状态还是在运行状态。如果在静止状态情况下,我就拒绝服务,拒绝无钥匙进入的功能。这样带来的好处可以防范钥匙在静止状态下遭到攻击的情况,同时可以降低钥匙的功耗,保持电池的寿命。但是没办法对车主处于运动状态的场景因为有效的保护。
下一个方法是距离限制协议。这个简单的原理就是在汽车与钥匙之间的通信协议上建立一种物理距离的上限的限制。比如说我们设定在3—5米,然后我们测量从汽车和钥匙之间的信号传播时间,进行往返的ToF测量。这里面假设如果中间有中继攻击存在的时候,将会增大传播时间,很有可能使ToF增加并超出上限。
这里面也会有一些挑战,我们设想一下,因为无线传输有很多它自己的特点,场景是非常复杂的。而且如果我们把中继攻击的设备做稍微复杂一点,我就可以去修改它的时间戳,这样的话也可以破坏距离限制协议。
如何进一步防范?我们需要想一想有没有一种方法是可以更加精确的测量到车和钥匙之间的物理距离呢?那就是UWB测距,目前公认的应该是在测距上面精度最高的方式。它是在整个无钥匙进入的过程当中,增加一个UWB对距离测距的过程。
下面花一点时间介绍一下什么是UWB,为什么UWB能达到非常高精度的测距呢?首先UWB并不是一个新的技术,甚至是非常古老的一个技术,最早技术起源于20世纪60年代,当然主要是用于军方的雷达当中,这个技术的名字叫做脉冲通信协议。2002年美国联邦通信委员会第一次允许UWB用到民用当中。但是在前期的时候,UWB主要用来做高速传输,因为它的传输速率也很快,但由于种种原因,在这个场景下并没有发展起来。
随着近年来尤其是苹果把UWB放到手机里面以后,UWB技术受到越来越多业界的重视,今年三星也发布了它的第一个集成UWB的手机Note 20 Ultra ,小米在上个月也发布了一个视频叫一指连,非常吸引人的用UWB来做家庭控制的一段视频。各位如果没有看过这个视频,我为小米公司打个广告,大家可以搜一下。
UWB在技术方面跟一般的多通信是不一样的,它是利用把信号在脉冲上直接进行传送。它这个脉冲是非常窄的,大概0.3到3纳米的脉冲,而这个脉冲之间隔会有8纳米到10纳米。这样,反映到频率可能就会是一个非常宽的频带,大概能达到500MHz以上的带宽。为什么UWB这样一个特性就能够更好的测距呢?我们刚才讲到影响测距最大的因素第一是噪声,第二是多径效应。
这个图是窄带情况下多径效应怎么对测距产生影响,当我们的信号从起点到终点传输的时候,不仅有直接路径,还有反射路径,而这些反射路径在终点这些信号都叠加起来,就是绿色的这种,本来我传输的是蓝色,最终我收到的是绿色。这样的话,在接收端和时间戳上就会产生一个很大的误差。而UWB,刚才我们提到过是一个一个的脉冲,由于脉冲之间的频带很大,这样就很容易把主路径分离出来,避免多径效应对测距精度的影响。
第二个,噪声对它的影响,由于它是窄脉冲,大家看到我们都是通过脉冲来确定时间戳是不是有抖动,在这里面抖动是非常非常小的,而由于五个噪声的存在,FSK产生的抖动是几十纳米。
UWB由于它的脉冲通信的特性,保证的它不太受多径效应和噪声对测距的影响。另外一方面,最新的802.15.4z表针定义了STS对时间戳的加扰。
我们可以看到加入到UWB以后确确实实能够很好的防范中继攻击,为了进一步提升抗中继攻击的能力,我们想到了更多的方法,比如说既然提到了时间戳可以被加扰。在汽车这边我就可以用非常简单的人工智能的算法,来判断是否有异常发生,如果有异常发生就拒绝服务。
以上就是我们的一些中继攻击的例子和怎样防范中继攻击的措施,但是我们想到中继攻击只是众多攻击手段的其中之一而已,当过渡到数字钥匙以后,这个系统变得异常复杂,安全边界急剧扩大,因为它同时会连接手机和汽车两个生态系统。而这时候我们不仅要考虑到信息的安全,功能的安全,也要考虑到运行环境的安全,数据的安全等等各个因素。
由于他把手机和汽车之间的生态联合在一起之后,其中很重要的一点,我们需要在整个产业链建立一个细的链条。也就是说汽车厂商需要信任手机厂商提供的手机,手机厂商也需要信任他所发布的数字钥匙,数字钥匙也要信任他所运行的环境。
这里面有一个标准组织叫CCC,目前正在致力于制定这样的标准和联盟,来确认信任链条。目前的进展是Phase1已经定义了数字钥匙怎么样产生和发布。
总结,汽车钥匙的演进为用户带来了很多便利,同时也带来了新的安全问题。中继攻击看起来非常简单,但由于其代价太低,不易防护,也应该引起我们的足够重视。目前公认UWB是最好的一个防护中继攻击的手段,但当数字钥匙出现以后,安全问题可能更加严重,需要我们全产业链通力合作来防范各种各样的安全问题。谢谢!

2020小米AIoT安全峰会议题 索引

No.1 人脸识别的法律规制框架-洪延青

No.2 系统可信标准解读与实践-万鑫

No.3 构建安全可信的人工智能-朱玲凤

No.4 构建可信的物联网 安全体 -宋文宽

No.5 黑灯:“手机 × AIoT” 智能安全评估-陈长林

No.6 光明守卫:MIUI12全副武装的隐私保护-王乐

No.7 Cortex-M逆向分析与安全-李海粟

No.8 等保2.0-物联网安全扩展要求解读-宫月
No.9 破壁:探索IoT通信安全的研究之 道-伍惠宇 李宇翔

注意:关注小米安全中心,后台回复PPT即可获取本次峰会的议题ppt。

文章来源: https://sec.thief.one/article_content?a_id=efa8f668272a841c2cea4019210b6ca9
如有侵权请联系:admin#unsafe.sh