這都可以(車聯(lián)網(wǎng)涉及的技術(shù))車輛入侵傳感器,
來源 |智能汽車設(shè)計
知圈 | 進“底盤社群”請加微yanzhi-6,備注底盤
現(xiàn)代汽車是由傳感器、電子控制單元 (Electronic Control Unit, ECU) 和執(zhí)行器組成的復(fù)雜系 統(tǒng),通過不同類型的車內(nèi)網(wǎng)絡(luò)連接來控制和監(jiān)測車 輛的狀態(tài)。隨著智能化、網(wǎng)聯(lián)化的發(fā)展,汽車搭載 了更多的 ECU 和外部通信接口,為用戶提供智能 網(wǎng)聯(lián)服務(wù)和網(wǎng)絡(luò)安全 。然而,隨著汽車的復(fù)雜性和互聯(lián)性的不斷提高,且現(xiàn)有車載網(wǎng)絡(luò)設(shè)計缺乏 網(wǎng)絡(luò)安全考慮,汽車的安全風險也日益突出。
網(wǎng)絡(luò)安全問題正在成為車載網(wǎng)絡(luò)系統(tǒng)的主要關(guān)注點。數(shù) 以 百 萬 計 的 汽 車 面 臨 各 種 安 全 風 險,如 2015 年 MILLER 等 使用 Wi-Fi 開放 端口侵入 Jeep Cherokee 的車載網(wǎng)絡(luò)系統(tǒng),并通過重新編程 ECU 的固件成功控制了該車的核心功能 (如禁用制動和停止發(fā)動機),導(dǎo)致140萬輛汽車被 召回。相關(guān)汽車攻擊案例引發(fā)了對汽車網(wǎng)絡(luò)安全的廣泛研究。
對車載網(wǎng)絡(luò)的保護通常分為以下 3 類:(1) 將 消息幀進行加密確保其機密性和完整性 ;(2) 使 用防火墻對潛在的危險接口進行監(jiān)控 ;(3) 搭建 車載網(wǎng)絡(luò)入侵檢測系統(tǒng)(Intrusion Detection System, IDS)。
在上述分類中,不同的方法具有不同的優(yōu)缺 點。加密和認證的方式雖能有效保護車載網(wǎng)絡(luò)的信 息傳輸,但現(xiàn)有車載網(wǎng)絡(luò)由于其自身在計算能力、 帶寬等方面的局限性 ,導(dǎo)致這些方法無法被部 署。例如,在計算機領(lǐng)域,對于通信連接普遍采用 3 次握手協(xié)議,握手成功后才進行有效信息傳遞。如果 CAN 總線引入該機制,對動力系統(tǒng)等發(fā)送實 時性高的報文 (10 ms) 會造成重大延誤,在車輛激烈駕駛過程中勢必會引發(fā)功能安全問題,因此 CAN總線不適合引入重安全機制。此外,車載網(wǎng)絡(luò) 的攻擊入口分布在車機、網(wǎng)關(guān)、車身控制器等多個 控制器上,且各控制器編譯環(huán)境不同,有的控制器 還采用了汽車專用操作系統(tǒng),所以無法通過部署一 套計算機領(lǐng)域常用的防火墻來完全隔離威脅和各種攻擊源。
1 車載網(wǎng)絡(luò)架構(gòu)概述
現(xiàn)代車輛的典型架構(gòu)集成了一組網(wǎng)絡(luò)組件,包括傳感器、執(zhí)行器、ECU 和通信設(shè)備 。車內(nèi)網(wǎng) 絡(luò)有助于傳感器、ECU 和執(zhí)行器之間的數(shù)據(jù)共享, 從而實現(xiàn)車輛的運行。在現(xiàn)代車載通信系統(tǒng)中廣泛 使 用 的 車 載 網(wǎng) 絡(luò) 包 括 本 地 互 連 網(wǎng) 絡(luò) (Local Interconnect Network,LIN)、CAN、FlexRay、以太網(wǎng)和面向媒體的系統(tǒng)傳輸 (Media Oriented System Transport,MOST)。表 1 對上述車載網(wǎng)絡(luò)的特點進 行了概括與比較。
LIN 提供的低通信速度適用于時間性能要求不高的應(yīng)用,如電池監(jiān)控、車窗升降器控制等。如果要適用于對性能和帶寬具有較高要求的應(yīng)用,則需要增加系統(tǒng)成本,F(xiàn)lexRay、MOST 和以太網(wǎng)就是屬于此種類型。例如,F(xiàn)lexRay 可用于轉(zhuǎn)向角傳感 器、安全雷達等,以太網(wǎng)和 MOST 可用于信息娛 樂系統(tǒng)。在所有車載網(wǎng)絡(luò)類型中,CAN 由于其 較低成本、較全工具鏈、一定的抗噪與容錯性成為使用最廣泛的車載網(wǎng),尤其用于汽車動力系統(tǒng)、車身控制系統(tǒng)等 。然而,由于 CAN 的安全性不足而易受到安全威脅,本文所提到的大部分入侵檢測技術(shù)都是基于CAN的。
CAN 總線的傳輸速率可以達到 125 Kbit/s 及以 上,其總線拓撲結(jié)構(gòu)在傳輸電纜末端帶有兩個120 Ω 的終端電阻。CAN總線上的節(jié)點在接收到消息時會 與發(fā)送節(jié)點同步時間,因此不需要同步以規(guī)范通 信。總線在空閑狀態(tài)下,其上的每個節(jié)點都可以訪 問總線,并以廣播的形式發(fā)送所要傳輸?shù)男畔?。對于接收消息的節(jié)點,其通過消息過濾器根據(jù)消息 ID決定接收哪個消息。多個節(jié)點同時傳輸消息的情 況下,需要通過載波偵聽多路訪問與沖突避免,以 及消息優(yōu)先級仲裁競爭對總線的訪問,ID越小的消 息具備的優(yōu)先級越高。CAN消息幀格式示意如圖1所示。
如圖 1 所示,一個 CAN 幀由以下 7 個字段 組成:
(1) 起始位:通知所有節(jié)點開始傳輸?shù)膯蝹€顯 性位。
(2) 仲裁域:由2個主要部分組成;表示消息/ 幀的 ID 并在仲裁過程中使用的標識符字段,以及 根據(jù) CAN 幀的種類確定的遠程傳輸請求 (Remote Transmission Request,RTR)。
(3) 控制域:有 2 個保留位和 4 個數(shù)據(jù)長度 代碼。
(4) 數(shù)據(jù)域:保存?zhèn)鬏數(shù)狡渌?jié)點的實際 數(shù)據(jù)。
(5) 循環(huán)冗余校驗 (Cyclic Redundancy Check, CRC):保證消息的有效性。收到消息的所有其他 節(jié)點都使用此代碼驗證消息。
(6) 確認字符(Acknowledge Character,ACK):分為 ACK 部分和分隔符部分。接收到有效消息的節(jié)點用顯性位 (即邏輯 0) 替換作為隱性位 (即邏 輯 1) 的 ACK 部分。
(7) 終止位:7 個隱性位組成的標志,指示幀 的結(jié)束。
2 車載網(wǎng)絡(luò)攻擊
智能網(wǎng)聯(lián)汽車容易受到多種不同程度的網(wǎng)絡(luò)攻擊,從數(shù)據(jù)竊聽到出行安全,甚至癱瘓整個交通系統(tǒng) 。一般來說,網(wǎng)絡(luò)攻擊可以分為兩類:被動 攻擊和主動攻擊。被動網(wǎng)絡(luò)攻擊 (如竊聽) 主要違 反目標系統(tǒng)安全的保密要求并導(dǎo)致隱私泄露 (如對 位置信息、對話數(shù)據(jù)和攝像頭記錄等隱私數(shù)據(jù)的訪 問)。主動網(wǎng)絡(luò)攻擊可以通過插入、刪除或修改消息來阻礙系統(tǒng)的功能 。通過對現(xiàn)有工作的回顧,車載網(wǎng)絡(luò)的常見網(wǎng)絡(luò)攻擊闡述如下。
2.1 拒絕服務(wù)攻擊
拒絕服務(wù) (Deny of Service,DoS) 攻擊旨在干擾系統(tǒng)的預(yù)期功能。比較常見的 DoS 中,攻 擊者可能會發(fā)送許多合法請求,超出服務(wù)系統(tǒng)的處 理能力,致使系統(tǒng)資源耗盡而無法響應(yīng)其他合理請求。在車聯(lián)網(wǎng)環(huán)境中,攻擊者可以向路邊單元 (Road Side Unit,RSU) 發(fā)送許多請求消息使 RSU 過載,這種情況下車輛無法獲得該RSU所共享的重要消息,從而導(dǎo)致嚴重后果。CAN網(wǎng)絡(luò)中的攻擊者可以利用消息仲裁機制,不斷發(fā)送具有高優(yōu)先級的 消息從而阻斷其他ECU節(jié)點的消息傳輸。
2.2 消息注入和重放攻擊
消息注入 (MI) 攻擊的主要原理是在網(wǎng)絡(luò)中注 入偽造的消息,重放攻擊是將之前的消息重新注入 到網(wǎng)絡(luò)中。在 CAN 網(wǎng)絡(luò)中,攻擊者可以控制某個 ECU,并通過它將偽造的消息發(fā)送到 CAN總線上;而重放攻擊中則需要首先對之前的消息進行存儲, 然后再在某個時間點將原來的消息發(fā)送到 CAN 總 線。例如,攻擊者可以存儲車速表讀數(shù)并稍后將其 再次廣播到網(wǎng)絡(luò)。
2.3 消息操縱
這種攻擊通過更改/修改或刪除消息來影響數(shù)據(jù)的完整性。例如,攻擊者可以修改消息的內(nèi)容。攻擊者可能會修改消息的內(nèi)容而不影響其發(fā)送與接收時間。字段修改和刪除攻擊是消息操縱攻擊的典型類型。在刪除攻擊中,攻擊者先刪除受感染的 ECU 并輸出緩沖區(qū)中的消息,然后再將它們傳輸?shù)?CAN 總線上。
2.4 偽裝攻擊
要發(fā)起偽裝攻擊,攻擊者需要滲透兩個 ECU (A 和 B)。攻擊者首先監(jiān)視CAN總線以了解A以什么頻率發(fā)送了哪些消息,然后停止A的傳輸并利用 B 代表 A 制造和注入消息。
2.5 惡意軟件攻擊
惡意軟件可能以病毒、蠕蟲、間諜軟件等多種形式存在,攻擊者可以將它們利用通信接口的漏洞注入系統(tǒng)。例如,將惡意軟件加入到多媒體文件中,并利用其多媒體系統(tǒng)固件輸入漏洞實現(xiàn)惡意軟件的運行,從而將惡意消息發(fā)送到CAN總線上 , 以實現(xiàn)消息注入攻擊、重放攻擊、DoS等特定類型的攻擊。
3 車載CAN網(wǎng)絡(luò)IDS類型
近年來,汽車惡意攻擊的數(shù)量有所增加。因此,車載網(wǎng)絡(luò)安全問題越來越受到關(guān)注 。入侵檢測技術(shù)作為一種網(wǎng)絡(luò)安全增強方法,成本低,部署方便。
入侵檢測依賴于觀測的數(shù)據(jù),在車載網(wǎng)絡(luò)中主 要是各節(jié)點 (如 ECU) 之間交換的數(shù)據(jù)。例如,1 條 CAN 消息,其具有固定的格式,包括消息 ID、 數(shù)據(jù)內(nèi)容、校驗碼等,表示某個事件或過程。消息的時間戳或者數(shù)據(jù)范圍都可以作為特征成為區(qū)分消 息是否正常的依據(jù),從而實現(xiàn)入侵檢測。
一般而言,可以將數(shù)據(jù)集的特征分為兩種類型:物理特征和網(wǎng)絡(luò)特征。物理特征是指描述系統(tǒng) 物理狀態(tài)的特征(如速度、發(fā)動機轉(zhuǎn)速),而網(wǎng)絡(luò) 特征是指描述系統(tǒng)通信和數(shù)據(jù)方面的特征(如消息 數(shù)量、數(shù)據(jù)序列)。為了強化學(xué)習算法的辨別能力, 需要剔除不相關(guān)的特征,所以精確地選擇合理的特征不僅能夠降低計算成本,對提高學(xué)習算法的泛化能力也具有重要意義。
通常將傳統(tǒng)的 IDS 分為兩類:基于簽名的 IDS 和基于異常的IDS 。基于簽名的 IDS 需要對已有 攻擊模式進行匹配 ,如黑名單就是一種常見的 基于簽名的 IDS。當觀察到匹配的攻擊模式時則報 告入侵。由于基于簽名的 IDS只對已知的攻擊進行 報告,所以具有較低的誤報率,但檢測新攻擊 (如 0-day攻擊) 的能力有限。為了能夠抵御新型攻擊, 簽名數(shù)據(jù)庫需要保持最新。此外,存儲大型簽名數(shù)據(jù)庫并對其執(zhí)行模式匹配,對CPU、內(nèi)存等資源的要求都比較高。
3.1 基于流量的IDS技術(shù)
HOPPE等通過分析車載網(wǎng)絡(luò)的實際攻擊案 例,提出了基于異常的 IDS跟蹤特定目標消息類型的所有CAN消息,并評估當前的消息頻率和之前的是否一致。此外,建議在檢測到攻擊時,在考慮周圍環(huán)境條件的同時,所提出的系統(tǒng)能夠自適應(yīng)地通過車輛的多媒體設(shè)備向駕駛員報告安全事件。
LING Congli 和 FENG Dongqin 基于CAN 總線上傳輸?shù)南D與其可中斷的發(fā)生頻率提出了一 種 CAN 入侵檢測算法 。對于給定消息類型(即 ID),該算法會計算其連續(xù)消息的數(shù)量。如果可中 斷序列中的消息計數(shù)大于預(yù)定閾值,則算法會發(fā)出 可能攻擊的警報。該算法在檢測操縱消息內(nèi)容的同 時保持其頻率的攻擊方面能力有限。
SONG等提出了一種基于 CAN 消息時間間 隔統(tǒng)計分析的輕量級 IDS,主要原理是根據(jù)消息頻 率分析異常流量,從而用于檢測注入攻擊。在正常運行條件下,ECU 生成的消息有自己的固定頻率或間隔。當車輛受到消息注入攻擊時,這些頻率或間隔會意外更改。試驗表明,受到注入攻擊的消息 頻率比正常情況高出20~100倍。
AVATEFIPOUR 提出了一種基于機器學(xué)習的模型,該模型通過學(xué)習接收到的數(shù)據(jù)包的物理信號 屬性,將 CAN 數(shù)據(jù)包與其發(fā)送源進行“綁定”。所提取的物理信號特征向量由 11 個時域和頻域統(tǒng)計 信號屬性組成,包括高階矩、頻譜合度、最小值、 最大值和不規(guī)則性等屬性,然后用于基于神經(jīng)網(wǎng)絡(luò)的分類器。試驗結(jié)果表明,該模型對通道和 ECU 分類的正確檢測率分別為95.2%和98.3%。基于熵的信息論方法也可以用來檢測車載網(wǎng)絡(luò)的消息注入、DoS等攻擊。相比于傳統(tǒng)的計算 機網(wǎng)絡(luò),車載網(wǎng)絡(luò)中的流量更受限制,因為每條消息及其內(nèi)容都是在傳輸之前指定的。這意味著正常網(wǎng)絡(luò)操作中數(shù)據(jù)的熵 (即不確定性) 幾乎是固定的 并且相對較低。因此,通過觀察熵值可以很容易地 檢測到改變數(shù)據(jù)熵的入侵。例如,MI 攻擊會降低 熵值,因為特定消息的數(shù)量會增加。因此,IDS可以通過檢測熵的變化來判斷是否存在攻擊的指標。
由上文可知,基于流量型的 IDS技術(shù)可有效識 別特定數(shù)據(jù)包和頻率的異常情況,對于傳統(tǒng) CAN 總線網(wǎng)絡(luò)適用性更強,同時實時性好。但是對于面向服務(wù)的車載網(wǎng)絡(luò),由于服務(wù)信號可以根據(jù)服務(wù)需 求進行變更,那么基于流量型的 IDS技術(shù)則很難對 新增的服務(wù)信號做出響應(yīng),也無法發(fā)現(xiàn)新增服務(wù)信號的篡改等風險,所以該技術(shù)有其局限性。
3.2 基于負載的IDS技術(shù)
BEZEMSKIJ等通過監(jiān)控車輛的不同車載資源 (如傳感器、網(wǎng)絡(luò)和處理) 的實時網(wǎng)絡(luò)和物理特征實現(xiàn)入侵檢測,分為學(xué)習階段和檢測階段。在學(xué)習階段,將車輛學(xué)習特征的正常值范圍作為正常行為配置文件。在檢測階段,如果某個特征的觀察值 超出其正常范圍,則檢測機制會報告攻擊。所提出 的機制能夠檢測信息注入攻擊和偽裝攻擊。
STABILI等基于不同 ID 類別的連續(xù)有效載 荷之間的漢明距離提出了一種入侵檢測算法。在學(xué)習階段,為提出的算法建立了一個正常范圍的有效漢明距離。然后,它分析通過 CAN 總線傳輸?shù)乃邢⒌挠行лd荷序列,并將相同 ID 的連續(xù)有效載荷之間的漢明距離與有效漢明距離的正常范圍進行比較。試驗結(jié)果表明,所提出的算法在檢測消息注入攻擊時效果較好。
KANG等 提出了一種基于深度神經(jīng)網(wǎng)絡(luò) (Deep Neural Networks,DNN) 的 IDS。檢測模型是基于從 ECU 之間交換的車載網(wǎng)絡(luò)數(shù)據(jù)包的比特流中提取的高維特征進行訓(xùn)練。一旦特征被訓(xùn)練并 存儲在分析模塊中,所提出的系統(tǒng)就會檢查車輛網(wǎng)絡(luò)中交換的數(shù)據(jù)包,以確定系統(tǒng)是否受到攻擊。由于神經(jīng)網(wǎng)絡(luò)的前向計算模式簡單且固定,所以所提出的系統(tǒng)在檢測異常時具有較低的延遲。
3.3 混合類型的IDS技術(shù)
JIN Shiyi等分別根據(jù)流量選擇消息 ID、時間間隔作為特征,根據(jù)負載選擇數(shù)據(jù)范圍以及相關(guān)性作為特征,從而提出了一種混合類型的 IDS。該 IDS 作為一種輕量級 IDS 可以直接應(yīng)用到 ECU 上, 避免了車載網(wǎng)絡(luò)拓撲的更改開銷,因此在汽車架構(gòu) 沒有發(fā)生大規(guī)模改變的階段存在一定的應(yīng)用前景。
MüTER等引入了一組檢測傳感器:形式傳 感器、位置傳感器、距離傳感器、頻率傳感器、相 關(guān)傳感器、協(xié)議傳感器、似真性傳感器和一致性傳 感器。這些檢測傳感器基于明確且可靠的信息,所以在檢測異常時不會產(chǎn)生誤報。盡管這些傳感器可 用于檢測攻擊而不會誤報,但并非所有攻擊都可以被這些傳感器檢測到。例如,如果攻擊者能夠注入完全符合網(wǎng)絡(luò)正常行為且與先前值合理的消息。此外,當檢測到異常時很難確定其是由攻擊、錯誤還是故障引起的。
ZHANG Linxi 等提出了一種基于規(guī)則和深度學(xué)習的兩階段 IDS 來實時檢測攻擊。在第1階段,輕量級基于規(guī)則的 IDS可以快速檢測違反主要 CAN 流量的周期性和規(guī)律性的攻擊,而基于 DNN 的 IDS會從基于規(guī)則的系統(tǒng)中捕獲錯過的攻擊,試 驗表明該系統(tǒng)可以檢測 5種類型的攻擊,包括消息 注入、偽裝、重放、刪除或丟棄攻擊,在增加檢測準確性的同時降低了檢測時延。
彭海德提出了一種基于ID熵和支持向量機-數(shù)據(jù)關(guān)聯(lián)性的IDS檢測技術(shù),針對 CAN 周期性消息,建立白名單與熵相結(jié)合的檢測機制,針對非周期消息,建立了數(shù)據(jù)域與車輛狀態(tài)相結(jié)合的數(shù)據(jù)關(guān)聯(lián)檢測技術(shù),從而實現(xiàn)對重放、DoS、丟棄 (刪 除) 攻擊的檢測。
KWON 等結(jié)合車載網(wǎng)絡(luò) IDS 提出了一種減輕入侵危害的方法,其主要是通過將受攻擊的ECU 進行重新配置,或者將檢測到的惡意消息通知特定 域的ECU進行丟棄。
NAM等利用類似的思想基于生成式的預(yù)訓(xùn) 練模型提取面向時間序列的ID特征以檢測入侵。
HE Yuchu等基于深度學(xué)習方法,在考慮車 載網(wǎng)絡(luò)流量與負載的基礎(chǔ)上,增加了臨近消息的關(guān) 系特征并給不同的特征分配相應(yīng)的權(quán)重以增加入侵 檢測的效率。
4 結(jié)論
隨著汽車智能化與網(wǎng)聯(lián)化的發(fā)展,車載網(wǎng)絡(luò)在功能運轉(zhuǎn)、信息交互、狀態(tài)顯示等方面發(fā)揮著巨大作用,隨之而來的網(wǎng)絡(luò)安全威脅更加突出。入侵檢測技術(shù)作為一種被動防御技術(shù),具有低開銷、應(yīng)用廣等特點,能夠有效收集并檢測潛在的車載網(wǎng)絡(luò)安全攻擊。從對車載網(wǎng)絡(luò)入侵檢測技術(shù)的調(diào)研來看,車載網(wǎng)絡(luò)入侵檢測技術(shù)主要分為基于流量的和基于負載的兩大類,不同類型的技術(shù)在成本開銷、應(yīng)用場景以及效果等方面具有較大差異,因此需要根據(jù)實際情況設(shè)計車載網(wǎng)絡(luò)入侵檢測系統(tǒng)。特別是隨著入侵檢測技術(shù)不斷成熟,可以在原有技術(shù)的基礎(chǔ)上增加隔離措施,不僅僅局限于預(yù)警,提前將相關(guān)物理功能進行區(qū)域化管制,及時處置風險,這是入侵檢測技術(shù)的新發(fā)展方向。