王兆軒,李 揚,呂 洋,郝智棟,楊黎斌,劉慧霞,馮兆文,潘 泉,
(1.西北工業大學網絡空間安全學院,陜西 西安 710072;2.西北工業大學自動化學院,陜西 西安 710072;3.西北工業大學 第365 研究所,陜西 西安 710065;4.中國航空工業發展研究中心,北京 100029)
隨著電子信息和無人系統技術的快速發展,無人機作為新興的智能裝備產品成為現代社會的重要組成部分,廣泛應用于快遞投送、農業植保、電力巡線、消防救援、戰場偵察等領域。然而,在無人機應用領域不斷擴展的同時,其深度融入各領域后面臨的安全問題日益凸顯。
2011 年,伊朗通過全球定位系統(Global Positioning System,GPS)欺騙技術成功捕獲一架美國RQ-170 無人機,開創了使用信息技術成功攻擊無人機的首個戰例[1]。此后,隨著滲透攻擊技術的發展以及安全漏洞的不斷開源,出現了多起針對無人機的信息安全攻擊事件,越來越多的無人機受到攻擊。無人機遭受攻擊后,輕則造成數據損失,重則導致墜毀,對地面人員的生命和財產安全造成威脅,從這個角度可以將無人機形象地比作“會飛的燃燒彈”。
無人機受到信息安全攻擊與其系統架構有關。作為一個集傳感器、控制器、通訊設備、業務載荷裝置于一體、高度集成的信息物理系統,無人機系統架構與工業控制系統架構具有極高的相似性。近年來,工業控制系統由封閉系統逐漸發展成為類似于IT 系統的開放系統,且由于使用開源協議、人員管理不善等因素面臨嚴重風險,同樣,無人機系統也難免存在安全漏洞,受到安全威脅。
為了解無人機信息安全研究現狀、完善無人機系統防護體系、提升無人機系統安全防護能力,本文基于工業控制系統信息安全問題,對無人機系統信息安全問題的產生原因進行分析,對現有防護手段進行了綜述,結合現有信息安全研究提出無人機系統綜合安全防護架構。
無人機系統信息安全指為無人機信息系統建立安全保護技術,保護無人機系統硬件、軟件、數據的保密性、完整性和可用性。信息安全是一個需要從系統層面進行分析與保護的體系,無人機系統可視為一個完整的工業控制系統,而工業控制系統的安全防護體系日漸成熟和完善。因此,本文采用等效分析方法,通過類比無人機系統信息安全與工業控制系統安全來分析無人機系統安全問題產生的原因。
一個典型的無人機系統是集軟硬件于一體的可獨立工作系統,由地面站、飛控導航系統、通訊網絡、傳感器系統與指揮控制系統五大部分組成,其中,通訊網絡、傳感器系統與飛控導航系統是無人機的核心組成部分。
在工業控制系統中,數據采集與監視控制系統(Supervisory Control and Data Acquisition,SCADA)是以計算機為基礎的自動化監控系統,是工業控制系統的重要組成部分。一個典型的SCADA 系統包含分布式數據采集系統(下位機)、過程監控與管理系統(上位機)、數據通信網絡3 部分。通過與SCADA 系統對比可得到這樣的結論:無人機可以看作一個“能夠飛行的SCADA 系統[2]”。
如果把單架無人機平臺比作SCADA 系統,那么從整個無人機系統角度看,工業控制系統與無人機系統在層次架構以及每層的功能上都極其相似。一個典型的工業控制系統由5 個部分組成,分別是經營管理層、生產管理層、過程監控層、現場控制層和現場執行層。圖1 顯示了工業控制系統與無人機系統層次架構以及每個層次功能對比,其中左側為工業控制系統架構,右側為無人機系統。工業控制系統面臨嚴峻的信息安全問題,關鍵信息基礎設施暴露出重大隱患。同樣,無人機系統也面臨嚴重的外部攻擊威脅。
根據工業控制系統信息安全分析可得到無人機系統信息安全問題產生的原因。首先,和工業控制系統類似,無人機系統也多采用開源架構、通用芯片、協議與軟件架構進行設計開發,在設計時多以易用、輕量等為原則,但卻忽略了安全性,導致無人機系統存在明顯的安全漏洞,難以抵御惡意攻擊;其次,無人機系統與工業控制系統架構、軟硬件組成模塊相似,針對工業控制系統的攻擊也極易被用來攻擊無人機系統。這些攻擊手段多樣,且無人機很多漏洞是公開的,使無人機系統被攻擊的成功率極高,攻擊成本極低。然而,無人機系統也有自身的特殊性,如工業控制系統網絡是靜態的,所有設備和儀器具有固定場所,但無人機在飛行過程中處于高動態、高復雜環境,是一個具有高度智能化的飛行信息系統。研究證明,人工智能技術存在明顯的脆弱性,其日益復雜的應用環境、目標任務以及不斷升級的智能、自主化功能加劇了系統的脆弱性。因此,無人機系統所面臨的信息安全問題研究意義重大。

Fig.1 Comparison of industrial control system and UAS architecture圖1 工業控制系統與無人機系統架構對比
從系統架構層面分析,無人機系統5 個層次都面臨信息安全問題。其中,地面站、指揮控制系統、飛控導航主要面臨軟件安全威脅,而通訊網絡和飛行載荷因軟硬件存在的缺陷使其自身面臨特有的安全問題。因此,無人機系統信息安全問題可分為載荷安全、軟件安全與通訊安全3 個方面。
1.2.1 載荷安全
無人機往往需要搭載很多設備來輔助飛行以及獲取外部環境信息,這些設備一般統稱為無人機載荷。無人機載荷指獨立于飛機本體裝備到無人機上為完成特定任務所需的設備,如電機、舵機、任務載荷等設備。在無人機眾多載荷中,傳感器系統是無人機對飛行環境進行感知,并將檢測到的信息轉換為特定形式的電信號或其他形式的特定信號進行輸出的設備,通常包括外接傳感設備和飛控導航內置傳感器設備。對于小型無人機,內置傳感設備通常指慣性測量單元(Inertial Measurement Unit,IMU),包括加速度計、陀螺儀、磁力計、氣壓計等,用以確保飛控導航系統正常工作。外接傳感設備包括視覺傳感器、光流傳感器、GPS、激光雷達、廣播式自動相關監視(Automatic Dependent Surveillance-Broadcast,ADS-B)傳感器等,為無人機飛行安全提供進一步保障。這些載荷在實際運行中缺乏必要的認證機制,加上技術與成本限制,無人機載荷往往面臨可用性風險。與此同時,為了提高數據傳輸的實時性,載荷數據傳輸缺乏加密手段,因此無人機載荷還面臨著數據的完整性以及保密性風險。除此之外,無人機載荷不具備對異常攻擊的主動檢測與響應能力。
無人機系統的載荷安全問題有諸多案例:攻擊者可以向傳感器發送干擾信號使傳感器功能喪失,或向傳感器發送蓄意構造的虛假數據來進行欺騙攻擊,如針對GPS 傳感器的欺騙攻擊[3]、針對慣性傳感器的聲學信號注入攻擊[4]、轉移攻擊[5]、隱蔽攻擊[6]等,這些攻擊會對無人機的位置解算、飛行控制、飛行決策過程產生嚴重影響,威脅無人機的飛行安全。
1.2.2 軟件安全
無人機系統包含大量的軟件平臺,如指揮控制系統、飛控導航系統及與地面站聯系的相關軟件等,這些軟件系統保證無人機的飛行、任務執行、信息采集和數據回傳等功能正常運轉,是無人機系統重要的組成部分,但這些軟件普遍存在安全問題。首先,軟件是可執行程序,無人機系統所使用的軟件大多是現成的貨架產品,不可避免存在一些漏洞或者后門[7];其次,這些軟件多基于Windows 或Linux 操作系統進行開發和應用,隨著這兩種操作系統漏洞不斷爆出,攻擊者會利用操作系統或軟件本身的漏洞進行攻擊,如溢出攻擊[8]、非法函數執行攻擊[9]等;最后,指揮控制系統與地面站在進行信息收集、指揮管理時存在大量通信交互或人機交互行為,可能存在數據不可信、身份認證缺陷等問題。這些系統相對封閉、更新維護滯后,普遍存在訪問控制手段與認證機制缺失、配置薄弱等問題。惡意攻擊者可能通過郵件釣魚、心理學利用、信息挖掘、供應鏈攻擊[10]等社會工程學手段對無人機系統進行攻擊,或進行非授權軟件安裝執行、利用身份認證缺陷繞過認證機制進行越權攻擊等。這些攻擊方式都可能導致系統卡頓、崩潰、關鍵文件泄露甚至控制權被奪取等問題,給系統帶來極大安全風險。
1.2.3 通訊安全
無人機系統通訊網絡包括無人機與地面站或衛星進行數據傳輸的通信網絡、移動自組網絡、蜂窩網絡、輔助通訊網絡等,這些通訊網絡的基本組成部分是數據鏈路,從傳輸信息的方向上分為發送控制信號的上行鏈路與回傳遙測數據的下行鏈路。
和工業控制系統類似,無人機系統也面臨網絡傳輸協議多樣、缺乏統一安全傳輸標準的問題。同時,無人機系統通訊網絡不僅包括傳統的互聯網通信,還包括一些電磁通信,而這些開放且標準不一的通訊環境使得無人機系統的通訊網絡面臨巨大的脆弱性。首先,通訊網絡使用電磁作為數據傳輸介質,無線通信環境開放、身份驗證缺失等缺陷使通訊網絡極易受到竊聽、篡改、重放等[11-12]攻擊,導致信息很容易被截獲,造成無人機圖像、視頻、控制信息等數據泄漏,帶來數據安全問題;其次,通信協議的漏洞帶來的應用安全問題。在控制器和無人機之間包含認證信息的數據包是無人機與控制器之間的認證媒介,攻擊者利用協議漏洞對這些認證或控制數據進行截獲分析,并利用截獲到的控制信號或認證信息進行重放攻擊來合法奪取控制權[13],進而實現對無人機的接管。
為有效解決無人機系統的載荷安全問題,鑒于載荷采集的數據通常作為軟件的輸入值來完成控制與決策等功能,一般通過軟件檢測方法驗證載荷數據的完整性和可用性,具體的載荷安全防護技術多為針對慣性傳感器的防護和針對GPS 傳感器的防護。
控制常量是根據無人機的控制輸入和當前物理狀態反映無人機正常飛行行為的一組約束條件,由無人機的物理屬性(如重量、軸心距)、底層控制算法和物理定律(如慣性和重力)共同決定。當無人機的飛行行為偏離控制常量的約束時,就可認為無人機受到了欺騙攻擊。控制常量可用來檢測慣性傳感器欺騙攻擊,如采用基于控制常量的方法實現對慣性傳感器聲學欺騙攻擊、轉移攻擊、隱蔽攻擊的檢測。然而,控制常量的方法需要對系統的模型和噪聲進行精確建模,并且只適用于線性系統模型,或非線性系統模型中的線性化區域。
針對GPS 傳感器的安全問題,一般采用密碼技術對數據進行加密或認證。如Bonior 等[14]、O’hanlon 等[15]、Wesson 等[16]使用基于量子密鑰分配、對稱密碼方法以及統計假設檢驗的方法對GPS 信號進行加密或認證。然而,基于密碼學的GPS 防護方案雖然可以有效防御竊聽攻擊,但通常需要改變GPS 的硬件結構,這增加了通信開銷,并且對無人機系統的實時性有一定程度影響。同時,由于加密方法不能有效檢測信號重放,因此很難應對GPS 欺騙攻擊。針對GPS 欺騙攻擊,常見的檢測方法包括利用傳感器數據對位置信息進行融合估計的方案,如Kwon 等[17]通過對比GPS 接收器和加速度值估計得到加速度差值用來檢測GPS 欺騙攻擊;Feng 等[18]使用陀螺儀測量值和GPS 位置信息進行融合來估計無人機的實際位置,判斷GPS 數據是否真實;群體眾包檢測方法,如Jansen[19]使用多架飛機報告位置差異,通過無線空中交通管制系統檢測是否存在GPS 欺騙攻擊;Magiera 等[20]使用多個接收天線對信號進行相位延遲估計和空間濾波,以保護GPS 接收器免受欺騙攻擊。這些方法均可有效地進行攻擊檢測。
在無人機眾多載荷中,由于硬件結構和設備工作原理缺陷,IMU 與GPS 傳感器較容易受到欺騙攻擊,因此相應的防護技術研究也最為全面。當前,隨著攻擊手段的不斷推陳出新,光流、雷達、ADS-B 等載荷也面臨著被攻擊的風險,針對這些新型攻擊方式的防護技術研究將成為載荷安全重要的研究方向。
在工業控制系統中,漏洞挖掘主要包括灰盒方法和黑盒方法兩種。灰盒方法指在對目標有部分了解的情況下進行漏洞挖掘,包括二進制插樁、動態污點分析等;黑盒方法指在對目標完全不了解的情況下進行漏洞挖掘,典型的代表是模糊測試。與工業系統類似,無人機系統一般也通過黑盒和灰盒的方法進行漏洞挖掘與防護,具體技術包括控制流完整性技術、模糊測試(Fuzzing)技術以及內存隔離技術。
模糊測試技術是一種二進制漏洞分析技術,通過創建大量隨機的異常數據或半有效數據來發現現實世界軟件中的安全漏洞。模糊測試可能導致系統在測試過程中掛起或者崩潰,此時模糊器就可以記錄導致錯誤的畸形數據,進而分析軟件中發生異常的位置。針對無人機系統軟件安全問題,Alhawi 等[21]提出一種將軟件驗證技術與模糊測試技術相結合的檢測無人機系統軟件安全漏洞方法,實現對未知軟件漏洞可能出現位置的預測;葉向豪[22]設計并實現了無人機系統拒絕服務漏洞挖掘系統FFuzzer,并使用該系統對某型無人機系統的文件傳輸程序和飛行控制程序進行拒絕服務漏洞模糊測試,發現了一個未知的拒絕服務漏洞。
控制流完整性是一種以跳轉指令為基礎針對控制流劫持攻擊的防御方法。基于控制流完整性方法來檢測攻擊,并在基于Ardupilot 飛控固件的無人機操作系統上進行實驗,實現了對檢測緩沖區溢出和函數非法執行等攻擊的檢測。
內存隔離技術是一種虛擬劃分內存空間并對虛擬部分實施內存訪問控制,使攻擊者難以進行內存損壞攻擊的防護方法。為解決無人機飛控軟件可能存在的內存損壞漏洞,Koo 等[23]針對基于Linux 操作系統架構的無人機,使用虛擬化微內核來隔離無人機中的無線通信模塊,有效防止了root 利用攻擊。軟件安全防護方法可以有效防御通過網絡介質發起的軟件攻擊,但是對于控制系統物理特性的攻擊防御效果十分有限。
在工業控制系統中,網絡安全問題可以通過各種安全控制消除或者弱化,如防御深入的網絡設計、網絡通信加密、限制網絡流量、提供網絡組件的物理訪問控制等。與之類似,無人機系統的通訊網絡也可以通過密碼技術進行防護。此外,物理層安全防護技術也是通訊安全的解決方案之一。
密碼技術一般分為對稱密碼技術和非對稱密碼技術兩類,可用來對無人機系統通訊網絡進行加密和認證。對稱密碼技術主要用于對網絡中的數據進行加密,如Allouch等[24]針對微型航空器連接(Micro Air Vehicle Link,Mavlink)協議的安全漏洞,提出一種基于chacha20 算法加密的安全集成機制,保證Mavlink 通信鏈路的安全性。非對稱密碼技術可用來加密或認證。如Abdallah 等[25]設計了一種基于帶錯誤環學習的輕量級密碼系統,對無人機集群通信網絡進行加密,以確保機間信息交互的保密性;Fernandez等[26]使用RSA 加密的橢圓曲線數字簽名算法(Elliptic Curve Digital Signature Algorithm,ECDSA)進行通信系統的身份認證,防止無人機被未授權的入侵者指揮。密碼技術可以有效防護竊聽攻擊和篡改攻擊,但會產生較大的計算開銷,且需要對硬件進行改造,對于計算資源有限的小型無人機來說應用范圍有限。另外,對于無人機集群網絡,無人機數量的增加也會給密鑰的分發和傳輸帶來壓力。
物理層安全技術以保密容量的概念為基礎。保密容量指在信息傳輸的可靠性和保密性同時滿足的情況下,發送端和接收端之間可達到的最大傳輸速率。對于一個多用戶竊聽系統,系統的保密容量為:

其中:RD為接收端的信息接收為第j個竊聽節點的信息速率。
物理層安全技術是根據實際物理場景建立信道的保密模型,并通過優化方法來增強模型的保密容量,以提升系統防御干擾攻擊和竊聽攻擊能力。在無人機系統安全研究中,物理層安全技術主要集中在無人機輔助的直接安全通信和無人機輔助的安全協作[27]兩種場景。第一種場景下,無人機是一個空中合法通信節點。通常在多用戶竊聽信道、混合竊聽信道等信道模型下研究提升通信系統保密容量、平均安全傳輸速率和保密通信中斷概率等問題[28];第二種場景下,研究人員將無人機作為移動中繼來增強信源和接收端之間的有效信息傳輸[29],或作為一個空中的干擾源來發送人工噪聲[30],降低攻擊者竊聽效能。與應用于上層的密碼技術相比,無線通信物理層安全技術可以在不需要密鑰和復雜算法的情況下保護無線數據傳輸,因此更適用于大規模分布式通訊網絡。但該方法僅僅證明了理論可行性,并未提出實際可用的廣義信道編碼方案來實現安全的傳輸速率。
無人機系統信息安全防護技術研究發展趨勢如下:①在載荷防護方面,控制常量和狀態估計方法的核心思想是基于異常閾值進行攻擊檢測,然而閾值的設定缺乏有效的方法和原則,具有很強的主觀性,這增加了該方法虛警或漏檢的概率。如何設計更加有效、合理的檢測方法成為載荷安全研究的重要方向之一;②在網絡通訊方面,多無人機編隊組網場景下的安全算法應用面臨計算復雜度高、計算資源有限等問題。如何降低計算復雜度,保障無人機系統安全防護的實時性成為重要的研究方向;③僅從信息安全的角度對無人機系統進行防護仍具有較大的局限性。隨著無人機的應用從中高空大中型無人機逐步轉向中低空中小型,飛行環境也從開闊單一的野外環境逐步向未知的、密集的、高動態的城市、山地、叢林等低空復雜環境轉變,無人機與飛行環境的耦合交互程度日益加深,且任務日趨多元復合。這些變化給無人機安全帶來了更加嚴峻的挑戰,已經超出了無人機傳統飛行安全與信息安全范疇。而目前無人機系統缺乏有效的安全架構、測試與驗證技術,尚未廣泛開展系統研究。
未來,設計有效的無人機系統安全防護架構不僅需要考慮信息安全,還需要考慮物理安全和智能安全。無人機系統物理安全指無人機通過環境感知與障礙規避技術(Sense and Avoid,SAA)實現對空中交通環境的有效觀測、評估和威脅判斷。在此基礎上,針對可能的碰撞威脅生成有效的規避路徑和機動控制,從而實現碰撞規避,保障空域交通安全。
無人機系統智能安全指通過魯棒性智能算法的配置,使無人機能夠對復雜、高動態、不確定的任務環境進行實時、精確和完備的自主認知。隨著無人機自主化與智能化要求的不斷提高,人工智能技術將廣泛應用于無人機各個領域,然而,大規模的智能化應用會給無人機系統帶來較大的風險。首先,多數人工智能模型是黑盒模型,具有不可解釋性,這些模型可能本身存在缺陷,可靠性不足,極有可能導致無人機在動態復雜的任務環境中出現錯誤的決策行為;其次,由于人工智能模型普遍具有線性特性,即使決策“可靠”的模型也同樣會受到對抗攻擊,攻擊者只需在輸入樣本中添加精心構造的、隱蔽的擾動,就可以很容易地讓模型決策出錯,如數據污染攻擊、后門攻擊等。這些因素會增加無人機智能化的軟硬件、算法和大規模數據應用的脆弱性,給無人機智能的實時性、精確性和完備性帶來挑戰。基于物理安全、智能安全、信息安全概念,本文提出無人機系統綜合安全概念。
無人機系統綜合安全指通過有效的體系架構、技術方法和系統設計等,對無人機系統各種潛在的物理威脅、信息危害及智能缺陷進行防范,確保無人機系統安全可靠穩定運行,使無人機系統硬件設備、數據資源、算法模型、控制系統和產品應用的避險性、可靠性、魯棒性、可用性、完整性、機密性、實時性、精確性和完備性等最大化。綜合安全首先要求根據平臺屬性、任務屬性以及政策法規等相關規定,對無人機系統的任務載荷與感知算法進行配置,以最大限度地在復雜高動態、海量多域、對抗性的物理、電磁、網絡環境中實現對潛在威脅的有效檢測、定位和預測;其次,在對環境有效感知的基礎上分別建立物理、信息、智能安全的有效評價指標;最后,根據不同域中的威脅對無人機系統安全影響程度大小,對各域的評價指標進行融合,建立無人機系統綜合安全性能評價指標,對無人機系統綜合安全性能進行評估,如圖2 所示。
無人機系統綜合安全涉及到無人機多個維度的安全保障,目前還很難達到真正意義上的綜合安全。未來,綜合安全研究將主要集中于感知算法的研究以及合理的評價指標構建。

Fig.2 UAS comprehensive security protective architecture圖2 無人機綜合安全體系架構
本文從工業控制系統的架構出發分析了無人機系統安全問題,將無人機系統的安全問題概括為載荷安全、軟件安全、通訊網絡安全3 個方面,針對3 個方面問題分別介紹了現有防護技術研究現狀。最后,基于信息安全的相關研究,對無人機系統存在的多域安全威脅展開分析,提出基于物理、信息、智能3 個維度的綜合安全防護架構與防護思路,為我國無人機安全技術和產業未來發展方向提供參考與借鑒。