轩辕实验室┃GNSS欺骗原理与感知方法

来源:上海控安
2020-11-05
1967

以下文章来源于轩辕实验室 ,作者轩辕实验室

轩辕实验室轩辕实验室

车联网信息安全和预期功能安全技术

微信图片_20201022180405.jpg

01

背景介绍

随着自动驾驶(ADAS)与智能网联汽车的发展,围绕其功能与信息安全的要求也逐步提升。由于目前ADAS方案对高精定位的需求,GNSS的可靠性与安全性也成为了业内重点关注的对象。GNSS欺骗是一项被研究多年的黑客技术,如今又被抬上了舞台。本文将着重介绍使用HackRF实施GPS欺骗的技术路线,并根据其特点,设计了应对的感知方案。

02

GNSS原理

要了解GNSS欺骗,必须先了解GNSS的基本原理。具体技术细节本文不做赘述,只是为了读者对GNSS欺骗的更好理解。GNSS是全球导航卫星系统的简称,其中包含大家最为熟悉的美国GPS导航系统和中国北斗导航系统。国内的车载导航系统通常以GPS系统为主导。我们熟悉的GPS导航系统,其核心是布置在meo中轨的31颗人造卫星,如图一所示。它们不间断地发射广播信号,即导航电文,其携带信息主要为卫星当前的时间戳与轨道坐标。地面接收器接收到信号的时间与电文携带的时间戳相减,再乘以光速,即可得到接收器与单个卫星的相对距离。
1.png
GPS卫星系统的星座如图所示,均匀分布在6个轨道面上,不间断发射GPS信号
因此,当地面接收器可以接收三组以上的GPS信号时,根据卫星的拓扑关系,可以直接求解得到接收器位于地球上的绝对位置。值得一提的是,卫星携带的时间戳使用原子钟进行校验,误差精度远高于地面接收器的时钟,为了消除这个误差,一般引入第四颗卫星,将当前时间也作为变量进行求解,具体计算过程如下。

2.png

GPS接收器和卫星的拓扑关系


22.png

GPS接收器接收到的时序

在空间坐标中,对于第i颗卫星信号,可将上面公式可写为:

3.jpg

其中,T为基准接收时刻,为接收到第i颗卫星相对基准时刻的时延。为卫星i的空间坐标,为GPS接收机的空间坐标,两者向量相减为距离。则公式又可写为:

4.jpg

对于四颗卫星,则有方程组:

5.jpg

可知,只要知道每颗卫星的坐标位置,以及测得每颗卫星信号的相对传播延时(时差),即可求解此4元方程,得到接收机坐标P(X, Y, Z)。

03

GNSS欺骗原理

GNSS欺骗分为压制式干扰与欺骗式干扰。常见的压制干扰有阻塞干扰、瞄准干扰、相关干扰等,工程实现简单,危害较小,本文不作重点。危害较大的欺骗式干扰,目的是使目标错误定位,通常有转发式干扰和产生式干扰两种。转发式干扰是攻击者接受了真实的信号,进行存储延时的转发,可以通过时间校验进行简单的防护。产生式干扰可以产生基于欺骗位置(任意位置)的符合GPS标准的虚假卫星信号,是较为高明且危险的欺骗手段。我们通过Hackrf工具对多款车辆进行了产生式GPS欺骗,实验过程和结果可参考《IDPS GNSS Spoofing》

进行产生式干扰,需要大致需要如下几步:
第一步需要产生符合的导航信号与电文。需要星历数据,可以从网上下载,虽然难以获得实时的星历,但用于欺骗已经足够。

6.png

GPS信号发生器电路图

第二步,即为根据攻击机欺骗的目标位置P(X, Y, Z),以及星历数据,计算出当前位置的可见卫星,根据目标位置与卫星的相对距离求解相对延时Di,并根据Di产生相应时序的信号。

第三步,在地球固连坐标系(ECEF),通过星座位置、运行速度和接收机位置,修正传输延时和载波频移(多普勒频移)。工程上,还可以引入动态位移来诱骗行驶的汽车,以及修改星历数据以产生实时的虚假干扰信号。

微信图片_20201105143906.png

虚假干扰信号的实时产生

04

GNSS欺骗感知

根据不同的GNSS欺骗方法,感知的方法也应当是多样的。本文列举几项校验GNSS的方法。

  • 功率欺骗信号由于产生于地面,往往强度极高,且模拟的各卫星信号强度相同。可以根据信号的强度来判断是否是欺骗信号。

  • 迭代时间:真实GNSS信号在传播过程中会有种种干扰,并非理想的真空状态,存在的误差导致四元方程无法直接求解,需要用最小二乘法迭代才能得到最终位置。虚假信号的伪距是反求解得到的,不存在误差问题,迭代速度较快。或者当真实信号掺杂虚假信号一同输入迭代模块,会导致迭代时间过长导致计算失败。综上,可以从得到单个GNSS坐标的迭代时间来判断是否是欺骗信号。

  • 多通道校验:通常欺骗者只发送一种系统的虚假信号,可以通过两种及以上的GNSS系统进行位置校验来判断是否存在欺骗信号。

  • 多普勒频移:多普勒效应是波源和观察者有相对运动时,观察者接受到波的频率与波源发出的频率并不相同的现象。欺骗信号往往无法模拟真实的多普勒频移,也可通过此进行校验。(但本文涉及的实验,Hackrf可以为欺骗信号添加多普勒频移。)

  • 瞬移:最传统的做法是在导航系统中设定阈值,汽车不可能在短时间内移动到很远的范围。可以监控汽车的位置变化来判断是否存在欺骗信号。

  • IMU校验:汽车在运动中,IMU可以提供较为准确的轨迹。通过比对GNSS与IMU在同一坐标系中产生的轨迹来判断是否存在欺骗信号。


END



微信图片_20201022180704.jpg

收藏
点赞
2000