今日头条
众所周知,全球导航卫星信号可能被虚假信号所欺骗,但是一些接收器可以提供针对此类攻击的防御措施。随着欺骗技术的发展,我们需要了解欺骗可能的攻击方式以及相对应防御的方式的特性。本文主要介绍了当下主流的攻击方法和防御方法,并记录了哪些防御技术对哪些攻击技术有效。最后,本文给出了一个攻击/防御技术的表格,其描述了从完全没有反欺骗功能到拥有各种反欺骗技术的不同情况,其中一部分以很少的成本增加了重要的安全性,而另一部分则增加了更多的安全性,但成本较高。
GNSS欺骗概述
对全球导航卫星系统(GNSS)信号的欺骗实质上是将虚假的欺骗信号进行广播,目的是使受害接收器将其误解为真实信号。受害者可能计算出错误的位置、错误的时钟偏移或两者都有。错误位置或错误时间的计算结果,可能会诱发危险行为。例如,2011年伊朗通过全球定位系统(GPS)欺骗劫持美国CIA的一架无人机,而该无人机本将预定在阿富汗降落。2015年一个功能齐全的GPS信号模拟器软件在github上开源,人们可以通过下载该软件,并部署在许多商用级别的射频前端上,低成本的实现GNSS信号欺骗。
GNSS反欺骗技术则是试图检测攻击,以警告受害者其导航和时钟不可靠。而防御的第二个目标是恢复可靠的导航和计时解决方案。具有接收机自主完整性监测技术(RAIM)的接收器会采用冗余信号产生多个GPS定位并对其进行比较,根据统计方法确定故障是否与某个信号有关。但是在2001年,美国的volpe center就已经发出警告,有一些欺骗方式可能会超越其防御能力。
GNSS欺骗类型
01 欺骗攻击概述
欺骗者必须复制将要欺骗的GNSS信号的RF载波,PRN /扩频码和数据位。
以下是一个GNSS信号的公式:
其中N是组成扩展码的信号的数量,Ai是第i个信号的载波幅度,Di(t)是第i个信号的数据比特流,Ci(t)是其扩展码,通常为a BPSK PRN码或BOC / PRN码,τi(t)是第i个信号的编码相位,ωc是标称载波频率,而Φi(t)是第i个拍频载波相位。
以下是欺骗信号的公式:
一般来说Ns=N,即,欺骗信号的数量等于真实信号的数量。为了欺骗接收器,每个欺骗信号必须具有与相应的真实信号相同的扩展码Ci(t),并且通常会广播其对相同数据比特流Di(t)的最佳估计。对于i=1,...,Ns,欺骗幅度,编码相位和载波相位分别为Asi,τsi(t)和Φsi(t)。这些数量可能与实际数量有所不同,原因是与所发起的攻击类型有关。
而在欺骗攻击期间,接收器收到的总信号量是:
02 自洽式欺骗
自洽式的欺骗一般用于欺骗考虑伪距残差的传统RAIM策略。其通过合成虚假的代码相位,为潜在受骗接收器提供所期望的位置/时序,并保持较小的伪距残差,合成错误代码相位阶段所需的计算很简单,虚假的拍频载波相位通常被设计为与虚假欺骗代码相位一致地变化。否则,潜在受骗接收器可能会因不寻常的代码/载波差异而发出警告,或者可能失去对欺骗信号的锁定。
自洽式欺骗的主要难点是如何诱使潜在受骗的接收器锁定其提供的虚假信号。主要有两种方法可以实现此目标。
第一种是先干扰受害者,破坏他们原先正常的信号获取并诱使他们尝试重新获得新的信号。如果欺骗信号功率明显强于真实信号功率,则接收器将在信号重新获取期间极有可能将其锁定在欺骗信号上。
另一种方法是从低功率开始发送虚假信号,以使它们在受害接收器天线的位置与真信号进行码相匹配和多普勒匹配。欺骗的功率开始时较低,然后一直增加,直到足以捕获跟踪环路为止。最后,欺骗者以自洽的方式对受骗接收器完成了编码相位和载波相位的欺骗。
03 信号干扰攻击和估计并重放欺骗
自洽式欺骗中描述的欺骗方式必须重新创建所要发送的扩频码Ci(t)和发送的数据比特流Di(t),如果它们是完全可预测的,则易于合成。但是往往增强的民用GNSS信号会采取正交调制的方式,利用扩频码Ci(t)中短段不可预测的部分进行保护。
在这种情况下,欺骗者的选择之一是进行信号干扰。信号干扰器像常规接收器一样记录真实的GNSS信号,并通过具有足够增益的发射机重播信号,以淹没受害接收器天线上的真实信号。欺骗者有可能欺骗任何GNSS信号,甚至是加密的军事信号。
如果信号的不可预测部分仅在低速率Di(t)位中,则有可能在不进行干扰的情况下完成欺骗。取而代之的是,欺骗者可以使用安全代码估计和重播(SCER)攻击:欺骗者通过估计不可预测的Di(t)位,并在获得可靠估计后立即广播它们。在广播它们之前,它可以广播这些位的随机猜测或它自己的最佳估计。
04 高级形式欺骗
这些高级的欺骗方法用于针对已开发出来的用于应对自洽性欺骗的各种防御策略。
一种高级技术称为清零。欺骗器针对每个欺骗信号发送两个信号。一个是欺骗信号,它与所有其他欺骗信号协同作用,以引起错误的位置/时序定位。另一个是真实信号的负值。用于在接收器处抵消真实信号。清零攻击会删除真实信号的所有迹线。然而当下很多防御措施的原理都是通过寻找迹象,表明收到两个来自同一颗卫星的信号。他们可能会寻找在其编码相位之间或载波多普勒频移之间有足够扩展的不同信号。或者,他们可能会寻找具有相似代码相位和载波多普勒频移的干扰信号。无论哪种情况,清零都会消除重复信号的所有迹象,依靠这些迹象的防御措施将会无法检测此类攻击。
另一种是用于对抗拥有多天线受害接收器的高级欺骗。其可能会使用多个独立的欺骗发射天线,并将每个天线匹配到相应的接收器天线。而且,欺骗者必须足够靠近受害者,并且要获得以及充分缩小各个天线的增益方向图,以便每个受害者天线仅接收来自欺骗者天线的信号。这种技术将使欺骗者能够控制在受害者接收器不同天线处接收到的每个欺骗信号的拍频载波相位在时间历史之间的差异。
上述两类以及其他高级形式的欺骗通常不会太快地改变受害者的位置或时间。否则,受害者可以通过物理性质来识别攻击。如惯性测量单位(IMU)可以作为一种物理上的反欺骗检测,其进一步限制欺骗者欺骗导航的可能增长率。如果增长率高得令人怀疑,则无法用常规的IMU漂移水平来解释这种异常。受害接收器时钟偏移量的增长也是如此。
05 同谋受害者欺骗 潜在的受害者可能有理由帮助欺骗者。比如当使用GNSS定位来强制执行法律,法院命令或公司政策时,就是这种情况。例如,一名捕捞渔船的船长可能在进入受限的捕捞场地偷猎时,希望他的GNSS接收器错误地报告他的位置。犯罪分子通过使用GNSS脚踝监视器进行软禁时,可能希望该GNSS监视器不要报告他的真实位置。对于同谋受害者,欺骗者更容易使用上面列出的某些类型的欺骗攻击方案。
GNSS防御类型
01 防御技术概述
欺骗防御是先检测攻击,然后再恢复经过验证的真实位置/时序。当前大部分反欺骗检测都专注于检测攻击的部分,因此本节也主要介绍针对检测攻击的防御策略。所有基于接收器的欺骗检测策略都依赖于以下两种方法中的其中一种,或者两者都依赖。
一种方法是检测欺骗信号和真实信号间的差异。这些差异可以由潜在受害者的接收器检测到。尽管公开了民用GNSS信号公式,但除非有复杂且昂贵的工具,否则通常会有明显的合成信号差异。
另一种方法是寻找真实信号和欺骗信号之间的相互作用。除了下述两种情况,否则对于欺骗者来说,交互是不可避免的。一种是无效攻击。另一种情况是严重压倒性攻击。但是,一次过强的攻击与真实信号的预期功率有明显的不同。
02 基于高级信号处理技术的欺骗检测
这类技术是寻找在信号欺骗期间发生的失真或干扰,在载波幅度,编码相位和载波相位中检测不合理的跳跃,尤其是攻击开始时。
一种方法是使用接收功率监视(RPM)。其以绝对比例查看总接收功率。这需要查看所有接收到的载波幅度值以及接收器RF前端的自动增益控制(AGC)设定点。由于欺骗者需要实质性的功率优势,因此,突然的功率跃变可能表示存在攻击,尤其是当增加幅度超过1或2dB时。
但其有方法适用的短暂性,因为此类失真仅在初始拖拽欺骗期间。还有一种方法是基于信号处理的检测技术,其可以在初始拖拽欺骗后很长时间起作用。此技术不断尝试重新获取其所有跟踪信号。它在可能的代码相位和载波多普勒频移的整个范围内对每个信号执行强力搜索。但是由于蛮力采集搜索,其给接收机带来了沉重的信号处理负担。
03 基于加密的欺骗检测
这类技术使用加密的方法来创建传输信号的不可预测部分,这些部分使欺骗者很难进行上述估计并重放的欺骗。最强的防御措施是对整个扩展码Ci(t)进行对称密钥加密。
一种方法是使用对称加密。对称密钥加密的GNSS信号可用于检测民用GNSS接收器中的欺骗,而无需访问私钥。不必将密钥分发给民用接收器,而是利用开放的民用扩展码与加密的军事码的已知关系。在GPS中,它们在同一载波上正交调制。该方法下,接收器使用其民用代码跟踪系统记录加密编码的嘈杂基带版本。这是在潜在的受害人接收器和另一个可以防止欺骗的接收器上完成的。然后将加密代码的两个嘈杂版本相互作用,以寻找如果潜在受害者中的信号是真实的将存在的相关峰值。如果相关峰值很高,则表明信号是真实的;否则会发出警报。
但是它需要一个安全的接收器网络来生成加密代码的嘈杂“真实”版本。它还需要一个安全的通信网络,以将加密代码的真实和未经验证的版本带到可以执行所需相关性以检查信号真实性的公共信号处理单元。
另一种是使用延迟对称密钥加密方法。它在扩展码中将对称加密的扩频安全码(SSSC)的短段与可预测的扩展码的长段交织在一起。接收器使用已知部分来追踪信号,并记录未知部分。广播了不可预测的SSSC之后不久,一个包含密钥的比特流数据到达,该数据可用于生成SSSC。密钥是经过数字签名的,因此可以可靠地追溯到相关的GNSS控制段。验证后,将密钥用于合成未知的扩展码,并且接收器将此代码与其记录的信号部分相关联,以验证信号的真实性。
但是该系统在等待完整的数字签名时会涉及大量的检测延迟,可能需要几秒钟到几分钟的等待时间。
还有一种是非对称私钥/公钥方法——导航消息身份验证(NMA)。广播数据流Di(t)的子集包含使用控制段的私钥生成的不可预测的数字签名。此签名在Di(t)中签署其余数据。接收器知道解调数据流中这些位的位置。它收集检查签名所需的全部数字,并使用已知的公钥对其进行验证。延迟对称密钥SSSC方法和非对称私钥/公钥NMA方法的实现都需要对卫星信号进行修改。对于现有的GNSS卫星而言,这是困难的或不可能的,对于未来的卫星而言,这是昂贵的。
NMA方法可能需要其他技术来应对基于security code estimation and replay(SCER)的攻击。在这种攻击中,欺骗者迅速估计比特数据流的不可预测的比特。
04 基于漂移的欺骗检测
此类防御措施旨在寻找接收机位置或时钟的异常变化。如果欺骗导致接收器时钟误差变化过快,则受害接收器可以检测到时钟漂移率大于其振荡器类别的合理值。IMU或其他运动传感器可对位置的合理漂移率施加类似的约束。同样车辆的滚动约束,以及其已知的速度,加速度和转弯率最大值都可以用来检查是否存在过度漂移。与时钟漂移一样,如果检测到不真实的运动轨迹,接收器将发出欺骗警报。
但是欺骗者可以通过缓慢建立错误时钟偏移和错误位置,避免被漂移检测方法检测到。
05 基于信号/地理位置的欺骗检测
此类技术通过考虑接收到的拍频载波相位来监视信号的到达方向。如图所示,接收器可以使用干涉测量法,通过使用3个或更多具有不同Δd偏移量的天线或通过使用已知Δd(t)运动曲线的单个天线来测量到达矢量的方向。设计良好的接收器通常可以将Φi测量到约1/40周期的精度。这样,接收器可以仅使用Δd=0.1m的短基线来将ρi测量到约3°的精度。在常规的情况下,ρi方向向量在天空周围分布。然而简单低成本的欺骗者将从同一方向广播其所有信号。一个典型的基于几何的欺骗检测系统,测试在多个天线上接收到的Φi相是否与真实信号所期望的ρi方向的多样性更一致,还是与来自同一方向的单发射器欺骗更一致。
06 多重欺骗检测互补策略
欺骗者可以选择使用较高的载波幅度,以避免在drag-off过程中复杂相关函数的明显失真。如果防御对象在实施RPM时,在许多阶段检查了复杂相关,那么它就可以检测到攻击的开始,而不管欺骗者使用了多少功率。如果还监视了时钟偏移漂移率和位置漂移率,则将迫使欺骗者执行缓慢的drag-off操作,从而使接收器有更多的时间来检测复杂相关函数的失真或接收功率电平过高。
另一种组合策略是使用NMA的不可预测的数据位,监视那些位的失真,IMU和时钟漂移监视。IMU和时钟漂移监控将迫使欺骗者缓慢发起攻击,这种限制将防止在基于NMA的欺骗检测的潜伏期中形成危险的位置或定时错误。如果欺骗者实施SCER攻击以估计和重放不可预测的NMA位,则受害者将能够检测到这些位的初始不确定性,因为时钟漂移监控将限制欺骗者使用延迟的初始能力,该延迟将允许在开始广播之前对比特进行可靠的估计。
攻击/防御方式总结与比较
并非所有防御都对所有攻击方式都同样有效,反之亦然。并非所有防御措施或攻击方式的实施成本都相同。在威胁的角度上看,一种低成本的攻击模式(就所需的设备和专业知识而言)会是主流的攻击方式。因此,接收器设计者希望使用最便宜的技术来抵御最多数量的低成本攻击模式。此外,根据应用程序所需的安全性和接收器成本预算,设计人员可以选择防御其他攻击模式的技术。
下图根据相对成本对本文讨论的各种攻击模式和防御技术进行排名,其中攻击和检测技术按从左到右(攻击)和从上到下(检测)的增加成本排序。表格内容中,“√”指相应攻击/检测对的检测概率高,“~”指依赖于具体情况,“X”指检测概率低。
fqj
全部0条评论
快来发表一下你的评论吧 !