眾所周知,全球導航衛星信號可能被虛假信號所欺騙,但是一些接收器可以提供針對此類攻擊的防御措施。隨著欺騙技術的發展,我們需要了解欺騙可能的攻擊方式以及相對應防御的方式的特性。本文主要介紹了當下主流的攻擊方法和防御方法,并記錄了哪些防御技術對哪些攻擊技術有效。最后,本文給出了一個攻擊/防御技術的表格,其描述了從完全沒有反欺騙功能到擁有各種反欺騙技術的不同情況,其中一部分以很少的成本增加了重要的安全性,而另一部分則增加了更多的安全性,但成本較高。
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
評論
查看更多