广播式自动相关监视(ADS-B)是一种新型空管监视技术,通过结合全球定位系统,飞机定期地广播其位置、速度、身份与类型等信息,以便管制员对飞机状态进行监控。但其广播特性和信道不加密的特点,使系统容易受到欺骗干扰的影响,目前已有很多实验成功对ADS-B系统实施了欺骗[1-2]。随着ADS-B技术的进一步推广应用,ADS-B欺骗干扰自然成为一个亟待解决的问题。
针对ADS-B的欺骗式干扰问题,国内外已经开展了很多研究,文献[3- 4]提出利用密码学方法保证信息的安全性,但需要改变现行的ADS-B协议,实施困难;文献[5- 6]利用时间戳验证航迹真实性,但需要发送时间信息;文献[7]用多个扇区天线对信号来向进行验证,该方法受DOA(Direction of Arrival)测量误差的影响较大;文献[8-9]利用多点定位对飞机位置进行验证,需要多个基站同步;文献[10-11]利用多普勒效应来检测欺骗干扰,同样也需要多个基站同步;文献[12]也用多普勒效应检测干扰,该方法实施简单,但对频率估计误差敏感。文献[13-15]提出了利用阵列天线验证DOA的方法,这种方法只用单一数据源,不需要多个基站,但需要空域搜索测向,计算量大;文献[16]提出了阵列天线直接抑制欺骗干扰的方法,该方法简单,但受阵列误差的影响较大。
文献[17]提出利用双天线载波相位差进行GPS(Global Positioning System)欺骗信号检测的方法,该方法虽然计算量小,但受阵列幅相误差的影响。基于此,本文提出了一种利用双天线欺骗式干扰检测方法:首先根据目标广播的位置计算一组表征目标相对于接收机方向变化的量,然后根据双天线接收信号的相位差计算一组同样表征此方向变化的量,最后判断两组变量变化是否相符,并且针对与空中真实目标ICAO地址相同的虚假ADS-B消息可能导致的误检测,我们还提出了信源一致性检测方法。
1090ES数据链是ADS-B系统中应用最为广泛的数据链,其以1090 MHz为载频,采用ASK(Amplitude Shift Keying)调制。如图1所示,每条ADS-B信号时长120 μs,其中包含8 μs的报头和112 μs的数据域,数据域采用PPM(Pulse Position Modulation)调制,数据速率1 MHz,在112 bit的数据域内,不同帧的消息字段分别包含了如位置、高度、速度等信息(具体参考文献[18])。
双天线在时刻t接收到的信号可以表示为
xi(t)=a(θi)si(t)+ei(t)
(1)
其中,a(θi)表示入射角为θi时对应的阵列导向矢量,si(t)表示第i条ADS-B信号,可能来自真实目标,也可能来自干扰源。ei(t)为加性复高斯白噪声。
攻击者可能发送与空中真实目标相同的ICAO地址的虚假ADS-B消息,或发送空中不存在的虚假飞机ICAO地址的一系列ADS-B消息,扰乱空中监视系统。本文考虑两种欺骗情景:
1) 欺骗源生成空中不存在的ICAO地址的一系列ADS-B消息,且这些消息能组成虚假航迹;
2) 欺骗源针对实际中真实存在的目标,生成该目标的虚假消息或对其消息进行修改转发。
双天线模型与信号入射关系如图2所示,其中A,B表示两个天线阵元所处位置,阵元均为各向同性,d为天线基线长度,s为入射信号,入射到该阵列的ADS-B信号满足窄带远场平面波的条件,α为入射信号方位角,β为入射信号俯仰角。因此信号到达接收天线平面的入射角θ与α、β的关系可以表示为:
图1 ADS-B帧格式
Fig.1 ADS-B frame structure
cos θi=cos αicos βi
(2)
其中,下标i表示第i条具体接收的ADS-B信号。
图2 信号入射角与天线阵位置关系
Fig.2 Relationship of signal incidence angle and array
对ADS-B广播的空中位置消息解码可得到一组经度(lon)、纬度(lat)、高度(alt)信息,地面接收机的位置也已知为(lon0,lat0,alt0),那么可以计算得到一组飞机相对于接收机的俯仰角和方位角信息,结合式(2)进而得到一组入射角余弦值:
y=[cos θ1,...,cos θn]
(3)
另一方面,天线A和B接收的第i条ADS-B信号分别表示为:
xAi(t)=si(t)+eAi(t)
xBi(t)=exp(-jkcos θ)si(t)+eBi(t)
(4)
其中,k=2πd/λ,λ为载波波长。
两天线接收信号的互相关为:
(5)
式中,E表示数学期望运算,“*”代表复共轭运算,Ps表示信号的功率。
无噪声时,两天线之间的载波相位差为:
(6)
则:
cos θi=ΔΦi/k
(7)
因而可以得到一组角度变化量:
z=[ΔΦ1/k,...,ΔΦn/k]
(8)
为便于说明,记由报文中位置信息计算的信号入射角余弦为cos(θrpt);由双天线相位差计算的入射角余弦为cos(θest)。对于真实目标,存在cos(θrpt)=cos(θest),而对于欺骗目标则不存在此关系,所以可以进一步求相关系数:
(9)
其中,μy=E(y),μz=E(z)分别表示和的均值;D(y)=E(yHy)-E2(y)、D(z)=E(zHz)-E2(z)分别表示y和z的标准差;
设定检测门限ε,若:
ρyz>ε
(10)
则判定为真实目标,否则判定为虚假目标。
接收机根据ADS-B信号解码后的ICAO地址判断其是否来自同一个发射源,但如果虚假ADS-B信号与真实ADS-B信号解码后ICAO地址相同,接收机则认为其来自同一发射源,可能导致使用上述方法进行检测时发生误检测,因此提出了一种信源一致性检测的方法:
对于第i条ADS-B消息,根据双天线接收信号的相位差可以构造其相应的导向矢量ui=[1,exp(-jΔΦi)]T,因此对于一组消息X=[x1,x2,...,xn],可以得出一组导向矢量U=[u1,...,un],考虑到信号波达方向变化具有连续性,那么相邻导向矢量之间的余弦相关值较大,而欺骗源与真实目标位置有较大差异,当真实消息组中存在虚假消息时,导致余弦相关值急剧变小,因此计算:
(11)
可以得到一组余弦相关序列:
G=[cos γ1,...,cos γn-1]
(12)
设定门限ξ,若
cos γi>ξ
(13)
则表明第i+1条消息xi+1与其前一条消息xi 来自同一信源,否则认为来自不同信源。若X=[x1,x2,...,xn]中所有消息均判定为来自同一信源,则通过信源一致性检测。否则,可根据具体的判断情况重新对X进行分组。
当存在幅相误差时,双天线接收的信号模型可以表示为:
xi(t)=Γa(θi)si(t)+ei(t)
(14)
式中,Γ表示幅相误差矩阵,其形式可以表示为如下对角阵:
(15)
其中,ρi、φi分别表示第i个阵元的幅度误差和相位误差。此时,式(5)可以进一步写为:
ρ1ρ2Psexp(j(kcos θi+φ1-φ2))
(16)
记Δφ=φ1-φ2,式(6)进一步写为:
(17)
式(8)进一步可以写为:
(18)
进一步,由于相位误差随时间变化较为缓慢,可以认为Δφ几乎不变,那么y和成线性相关关系,对其相关系数的大小几乎不影响,因此本文方法对幅相误差是比较稳健的。
当阵列存在位置误差时,双天线接收的信号模型可以表示为:
xi(t)=a(θi)si(t)+ei(t)=
(19)
其中,T表示转置。此时,式(6)可以进一步写为:
(20)
记Δd=d′/d,则式(8)进一步可以写为:
z′=[Δdcos θ1,...,Δdcos θn]
(21)
因为天线布置好后,天线间距实际值d′不变,且天线间距理论值d恒定,因此Δd不变,那么y和z′呈线性相关关系,完全不影响相关系数的大小,因此本文方法对是阵列位置误差是稳健的。
当存在多个干扰源时,假设接收机接收到来自不同干扰源发射的虚假ADS-B信号时,假设ADS-B信号不交织,可以根据飞机报文中的身份信息和本文的信源一致性方法对信号进行分组,按照单个欺骗源的方法处理。
本文所提的欺骗干扰检测的总体流程如下:
1) 利用接收机对接收信号进行解码,按ICAO地址将空中位置消息进行分组,并根据目标位置计算信号的方位角和俯仰角,进一步得到信号相对于接收机的方向角变化序列y;
2)对ADS-B消息组,根据双天线接收到的信号的相位差计算方向角变化序列z;
3)根据导向矢量组计算其对应的余弦相关值序列G,进行信源一致性检测,若通过,进入下一步骤,否则进入步骤5);
4)计算序列y和z的皮尔逊相关系数,通过与门限对比,判定真实目标和虚假目标;
5)对步骤3)中来自不同信源的空中位置信息组,重新分组并重复步骤2)到4)。
图3 算法流程图
Fig.3 Algorithm flow chart
仿真参数设置:设两阵元间距d=λ/2,λ为ADS-B信号的波长,信号采样率为40 MHz,接收机位置设为:经纬度:(117.3621,39.1088);高度:20 ft,在接收机附近水平范围40 km内随机生成500条航迹,每条航迹选取30条位置消息进行实验,信噪比设为20 dB,目标航迹与接收机位置如图4(a)所示,欺骗源位于接收机附近5.5 km范围内随机分布,如图4(b)所示,图5(a)和(b)分别表示接收机从真实飞机和欺骗源接收航迹进行实验的经验累积分布函数(Empirical Cumulative Distribution Function,简称ECDF),可以看出真实目标的最小相关系数ρRmin=0.9969,虚假航迹的最大相关系数ρSmax= 3.1927×10-13,当检测门限ε=0.5可以明确区分真实目标和虚假目标。
图4 目标航迹、接收机和欺骗源的位置关系
Fig.4 Positional relationship of target track, receiver and spoofing source
图5 30条信号实验结果
Fig.5 Simulation result of using 30 messages
设定判决门限为0.5,对于理想阵列,随信号条数变化不同漏警概率和虚警概率的变化曲线分别如图6(a)所示,虚警概率与漏警概率均为0%。
设双天线阵列的幅相位差均由服从均值为0方差为0.2的高斯函数随机产生,图6(b)为加幅相误差的检测结果,漏警概率为0%,虚警概率在3.2%以下,对比图6(a)说明本文方法对幅相误差比较稳健。
设天线实际间距d′=0.9d,测量值d=λ/2,λ为ADS-B信号的波长,图6(c)表示阵列有位置误差时的结果,其虚警概率与漏警概率为0%,与理想阵列检测结果相同,因此说明本文方法对阵列位置误差稳健。
图6 不同信号条数的仿真实验结果
Fig.6 Detection result of different messages number
此外,本文将所提方法与文献[7]中Junichi N所提的基于扇区天线的单脉冲测向方法(ADS-B anti-spoofing performance of monopulse technique with sector antennas,简称SA-DOA)进行粗略比较,SA-DOA方法在空域使用多点测量DOA方案,需要多个扇区天线,本文方法利用时域上多条信号来进行欺骗检测,仿真实验条件:设两阵元间距d=λ/2,λ为ADS-B信号的波长,假设欺骗源静止,使用20条信号进行实验,根据文献[7]所述,DOA测量值误差设置为服从均值为0,标准差为4.6的高斯分布,其虚警概率恒定为0.05,图7为SA-DOA方法与本文方法在不同欺骗角度下的检测性能对比,可以看出SA-DOA方法在欺骗角度小于11°时检测效果较差,而本文方法不受欺骗角度的影响,且对角度测量误差不敏感。
图7 本文方法与SA-DOA方法检测性能对比
Fig.7 The comparison of two detection method
对干扰源注入与真实目标ICAO地址相同的ADS-B信号进行仿真,接收机位置不变,欺骗源位置设为:经纬度:(117.0,39.0);高度:10 ft,真实航迹与欺骗航迹如图8所示,高度为34000 ft。干扰源从真实航迹的第15条消息开始,对真实目标的ADS-B消息进行修改转发,使接收机只接收到虚假航迹,设门限值ξ=0.9,如图9所示余弦相关值在第15条信号处急剧减小,表示前15条信号与后15条信号各来自不同信源。
图8 真实航迹与虚假航迹示意图
Fig.8 Illustration of the real track and the cheat track
图9 对真实目标注入欺骗干扰消息的检测结果
Fig.9 Detection result of inject spoof messages to real target
为了进一步验证算法的有效性,我们基于中国民航大学导航算法实验室的十字阵列,利用实采数据对所提算法进行验证,阵列实物图和干扰源分布分别如图10和图11所示,其中心阵元(天线1)位置为经度为117.3494,纬度为39.0997,高度为32.81 ft; 阵元间距0.091 m,干扰发射天线与阵列中心阵元的间距8 m,选用天线1和天线5接收空中真实飞机广播的ADS-B信号,再通过下变频器将1090 MHz的射频频率降为中频10 MHz,通过信号采集系统采集时长为20 s的信号,采样频率80 MHz,利用实验室软件接收机对信号进行解码,接收机下采样频率为 40 MHz,图12为接收机对20 s信号解码所得目标(AA:78102A)的位置信息,其中虚假目标信号由不同的干扰源随机发出,真实信号角度估计值和欺骗信号角度估计值与报文计算的角度值的相关结果如图13所示,结果显示当信号条数大于11时,真实信号相关值大于0.6,而欺骗信号的相关值在0.2左右,可以较好的区分开。
图10 十字阵列实物图
Fig.10 Array antenna
图11 天线示意图
Fig.11 Array antenna schematic
图12 真实目标航迹
Fig.12 Real track
图13 实测数据相关结果
Fig.13 Correlation coefficient value of practical data
在实际采集信号过程中,ADS-B信号易受脉冲干扰的影响,接收机虽然能够正确解出消息内容,但时域信号受干扰严重,这样导致计算得到两阵元相位差与真实值严重不符,从而导致真实信号的相关值偏小,此时需要对干扰严重的信号予以剔除,才能进一步使用本文算法进行检测。
本文提出了一种利用双天线相位差的欺骗式干扰检测方法,对于同一信源发出的一组ADS-B消息,首先根据报文内容计算一组表征目标相对于接收机的方向变化的量;其次根据双天线之间的相位差计算一组同样表征此方向变化的量;最后通过两组变化量的相关系数判别真实目标和欺骗干扰,并利用信源一致性检测的方法降低虚警概率。本文通过大量的仿真实验和实采数据验证了算法的有效性,且计算量小,易于工程实现。
[1] Costin A,Francillon A. Ghost in the Air(Traffic): On insecurity of ADS-B protocol and practical attacks on ADS-B devices[J]. Black Hat USA,2012: 1-10.
[2] Schäfer M,Lenders V,Martinovic I. Experimental analysis of attacks on next generation air traffic communication[C]∥Applied Cryptography and Network Security. Springer Berlin Heidelberg: ACNS,2013: 253-271.
[3] Joonsang Baek,Young-ji Byon,Eman Hableel,et al. Making air traffic surveillance more reliable: a new authentication framework for automatic dependent surveillance-broadcast(ADS-B) based on online/offline identity-based signature[J]. Security and Communication Networks,2015,8(5): 740-750.
[4] Lee S H,Lee D G,Choi B C,et al. Automatic Dedpendent Surveillance Data Protection Method For Air Traffic Management,and System For The Same[P].USA: US20150212206. 2015-7-30.
[5] Kim Y,Jo J Y,Lee S. ADS-B vulnerabilities and a security solution with a timestamp[J]. IEEE Aerospace and Electronic Systems Magazine,2017,32(11): 52- 61.
[6] Schafer M,Lenders V,Schmitt J. Secure Track Verification[J].IEEE Symposium on Security and Privacy,2015: 199-213.
[7] Junichi N,Hirohisa T,Hiromi M,et al. ADS-B anti-spoofing performance of monopulse technique with sector antennas[C]∥Conference on Antenna Measurements & Applications(CAMA),IEEE,2017: 87-90.
[8] Brandon Kovell,Benjamin Mellish,Thomas Newman,et al. Comparative Analysis of ADS-B Verification Techniques[D]. The University of Colorado: Boulder,2012.
[9] Strohmeier M,Lenders V,Martinovic I. A k-NN-based Localization Approach for Crowdsourced Air Traffic Communication Networks[J]. IEEE Transactions on Aerospace & Electronic Systems,2016,PP(99): 1-1.
[10] Schäfer M,Leu P,et al. Secure Motion Verification using the Doppler Effect[C]∥ACM Conference on Security & Privacy in Wireless and Mobile Networks. ACM,2016: 135-145.
[11] Ghose N,Lazos L. Verifying ADS-B navigation information through Doppler shift measurements[C]∥Digital Avionics Systems Conference. Prague,Czech Republic: IEEE,2015: 1-27.
[12] 陈蕾,吴仁彪,卢丹. 利用多普勒效应的ADS-B欺骗式干扰检测算法[J].信号处理,2018,34(6): 722-728.
Chen Lei,Wu Renbiao,Lu Dan. ADS-B Spoofing Detection Method Using Doppler Effect[J].Journal of Signal Processing,2018,34(6): 722-728.(in Chinese)
[13] 龙易. ADS-B导航抗欺骗性干扰技术研究[D].成都: 电子科技大学,2015.
Long Yi. Research on Anti-Deception Jamming of ADS-B Navigation[D]. Chengdu: University of Electronic Science and Technology of China,2015.(in Chinese)
[14] 张媛媛. ADS-B地面站抗欺骗系统研究[J]. 科技创新与应用,2016(18): 10-11.
Zhang Yuanyuan. Research on anti spoofing system of ADS-B ground station[J]. Technology Innovation and Application,2016(18): 10-11.(in Chinese)
[15] 侯明正,冯子亮,潘卫军,等. 一种检测ADS-B虚假目标的方法[P].中国: CN 102323567A.2012.
Hou Mingzheng,Feng Ziliang,Pan Weijun,et al. A method for detecting ADS-B false targets[P]. China: CN 102323567A. 2012.(in Chinese)
[16] Wang W,Chen G,Wu R,et al. A low-complexity spoofing detection and suppression approach for ADS-B[C]∥Integrated Communication,Navigation,and Surveillance Conference.Herdon,VA,USA: IEEE,2015: K2-1-K2- 8.
[17] 黄龙,雍玲,徐博,等. 采用双天线载波相位差技术的卫星导航接收机抗欺骗方法[J].国防科技大学学报,2016,38(4): 103-106.
Huang Long,Yong Ling,Xu Bo,et al. Analysis of carry phase difference decection for satellite navigation receives anti-spoofing[J]. Journal of National University of Defense Technology,2016,38(4): 103-106.(in Chinese)
[18] RTCA,DO-260B,December,2011.Minimum Operational Performance Standards for 1090 MHz Extended Squitter Automatic Dependent Surveillance-Broadcast(ADS-B) and Traffic Information Services-Broadcast(TIS-B)[S].Washington DC,USA: RTCA,Inc: 2011.