• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于熵的車載CAN總線異常檢測研究*

    2021-11-04 05:52:12張海春姜榮帥魯趙駿劉政林
    汽車工程 2021年10期
    關(guān)鍵詞:信息熵攻擊者車載

    張海春,姜榮帥,王 頡,魯趙駿,劉政林

    (1.華中科技大學(xué)光學(xué)與電子信息學(xué)院,武漢430074;2.深圳開源互聯(lián)網(wǎng)安全技術(shù)有限公司,深圳518000;3.華中科技大學(xué)網(wǎng)絡(luò)空間安全學(xué)院,武漢430074)

    前言

    現(xiàn)代汽車不再是簡單的機械設(shè)備,而是集成了上百個電子控制單元(electronic control unit,ECU)的 復(fù) 雜 系 統(tǒng)[1]。各ECU通 過 控 制 器 局 域 網(wǎng)(controller area network,CAN)總線連接,汽車在不斷智能化、網(wǎng)聯(lián)化的同時也暴露了藍(lán)牙、蜂窩網(wǎng)絡(luò)等各類攻擊入口,導(dǎo)致入侵車載CAN總線的可能性大大增加[2]。

    車載CAN總線在設(shè)計時充分考慮了汽車通信嚴(yán)苛的性能需求,成為事實上的汽車總線標(biāo)準(zhǔn)[3]。但是安全機制的缺乏帶來了重大安全隱患,惡意攻擊者一旦成功訪問車載CAN總線便可以注入任意數(shù)據(jù)幀。數(shù)據(jù)加密、身份認(rèn)證等安全機制對計算資源要求較高、計算耗時較長,無法滿足通信實時性,因此不能應(yīng)用于車載CAN總線。相比于傳統(tǒng)的安全機制,異常檢測不會干擾車載CAN總線正常通信,具有低成本、靈活部署、高兼容性的優(yōu)勢,研究人員對此開展了大量的研究工作。

    文獻(xiàn)[4]中將CAN總線上連續(xù)兩個CAN ID相同的數(shù)據(jù)幀發(fā)送時間間隔超過閾值視為異常,但是沒有考慮非周期性數(shù)據(jù)幀的影響。文獻(xiàn)[5]中提出基于電壓特征變化的異常檢測方案,利用ECU位置的不同導(dǎo)致的電阻及電信號特征的不同檢測異常節(jié)點,但是該方法需要示波器等大型設(shè)備持續(xù)采集及處理總線電信號。文獻(xiàn)[6]中提出一種基于信息熵的CAN ID異常檢測機制,但是僅能檢測出CAN總線存在異常,無法檢測出異常的細(xì)節(jié)信息。

    本文中在分析了基于信息熵的車載CAN總線異常檢測機制的基礎(chǔ)上提出了基于相對熵的車載CAN總線異常檢測機制,具體貢獻(xiàn)如下:(1)該機制將檢測窗口由時間窗口改為數(shù)據(jù)窗口,改善了時間窗口內(nèi)無法有效采集到足夠非周期數(shù)據(jù)幀的情況;(2)該方案采用相對熵作為檢測依據(jù),可以檢測出導(dǎo)致總線異常的具體攻擊類型、異常數(shù)據(jù)幀的CAN ID,具備較好的檢測效果。

    1 車載CAN總線威脅模型

    CAN總線是多主機廣播通信協(xié)議,采用雙絞線架構(gòu),減少了線路布局,增強了抗噪聲和干擾能力。網(wǎng)絡(luò)的分布式體系結(jié)構(gòu)易于維護(hù),降低了系統(tǒng)成本。速度可達(dá)1 Mbit/s,可滿足汽車總線通信對于大帶寬、抗干擾能力強、實時性強的需求,在汽車總線網(wǎng)絡(luò)中得到了廣泛應(yīng)用。

    如圖1所示,依據(jù)仲裁字段CAN ID的長度,CAN數(shù)據(jù)幀分為標(biāo)準(zhǔn)幀和擴展幀[7]。標(biāo)準(zhǔn)數(shù)據(jù)幀主要由7個字段組成:數(shù)據(jù)幀起始字段(SOF),通知每個接收器數(shù)據(jù)傳輸開始;仲裁字段防止數(shù)據(jù)幀在傳輸過程中產(chǎn)生沖突;數(shù)據(jù)域傳輸最多8個字節(jié)的數(shù)據(jù);循環(huán)冗余碼用于標(biāo)識數(shù)據(jù)幀是否正常發(fā)送到接收器,若接收器正常接收到數(shù)據(jù)幀則會激活A(yù)CK位;數(shù)據(jù)幀結(jié)束位表示數(shù)據(jù)幀的傳輸過程已結(jié)束;控制域解決總線數(shù)據(jù)競爭;數(shù)據(jù)長度字段(DLC)定義了數(shù)據(jù)域的長度。

    圖1 CAN總線數(shù)據(jù)幀結(jié)構(gòu)

    CAN總線缺乏基本的安全機制[8],其脆弱性表現(xiàn)在以下6個方面。

    (1)缺乏身份認(rèn)證。CAN總線沒有源標(biāo)識符字段,目的標(biāo)識符字段,任何節(jié)點都可以偽造成惡意節(jié)點發(fā)送報文。接收方無法識別發(fā)送方是否是真實的節(jié)點。

    (2)缺乏加密機制?;跀?shù)據(jù)傳輸?shù)膶崟r性考慮,CAN總線協(xié)議未采用加密機制,攻擊者可以監(jiān)聽總線數(shù)據(jù),造成隱私泄露。

    (3)缺乏完整性校驗。CAN總線缺乏數(shù)據(jù)完整性校驗機制,數(shù)據(jù)幀接收者并未檢查數(shù)據(jù)的完整性,攻擊者可惡意篡改傳輸數(shù)據(jù)。

    (4)廣播傳輸機制。CAN數(shù)據(jù)幀以廣播形式發(fā)送到CAN總線,CAN總線上的所有ECU都可以接收到數(shù)據(jù)幀,這意味著惡意節(jié)點可以監(jiān)聽到所有的總線傳輸數(shù)據(jù)[9]。

    (5)基于ID的仲裁機制。CAN ID決定了CAN數(shù)據(jù)幀的傳輸優(yōu)先級。數(shù)據(jù)幀CAN ID越小,其在總線上傳輸?shù)膬?yōu)先級越高。惡意攻擊者可以構(gòu)造較高優(yōu)先級的數(shù)據(jù)幀不斷發(fā)送到總線上造成DoS服務(wù)攻擊。

    (6)帶寬有限。高速CAN總線的數(shù)據(jù)傳輸速率僅為500 Kbit/s,數(shù)據(jù)載荷長度最高只有64 bit[8],限制了CAN總線協(xié)議提供較強的訪問控制功能,為攻擊者攻擊ECU降低了難度。

    基于車載CAN總線的脆弱性,車載CAN總線威脅模型如圖2所示。攻擊者可以發(fā)動4種基本攻擊組合為實際的攻擊案例,包括監(jiān)聽攻擊、重放攻擊、偽造攻擊、注入攻擊。

    (1)監(jiān)聽攻擊。車載CAN總線利用廣播機制傳輸數(shù)據(jù),在未加密數(shù)據(jù)的情況下,攻擊者ECU?A可以監(jiān)聽并分析CAN總線數(shù)據(jù),如圖2(a)所示。通過重放或者變異監(jiān)聽獲取的數(shù)據(jù)幀可以發(fā)動重放攻擊、模糊測試[10]等攻擊,是實際攻擊的基礎(chǔ)。

    (2)重放攻擊。在沒有身份認(rèn)證與數(shù)據(jù)完整性校驗的情況下,攻擊者可以發(fā)動重放攻擊[11-12]。如圖2(b)所示,惡意節(jié)點ECU?A可以發(fā)送來自ECU?C的數(shù)據(jù)到CAN總線,繼而控制ECU?B。

    圖2 車載CAN總線威脅模型

    (3)偽造攻擊。如圖2(c)所示,基于ECU?B數(shù)據(jù)幀內(nèi)容與總線頻率,惡意攻擊者可以掛起ECU?B,繼而利用ECU?B的CAN ID偽造數(shù)據(jù)幀控制ECU?C。

    (4)注入攻擊。如圖2(d)所示,攻擊者利用仲裁機制構(gòu)造基于較高優(yōu)先級的CAN總線數(shù)據(jù)幀占據(jù)CAN總線[13],引發(fā)總線拒絕服務(wù),也可以基于特定的CAN ID構(gòu)造數(shù)據(jù)幀控制目標(biāo)ECU。

    2 車載CAN總線異常檢測機制

    2.1 信息熵與相對熵

    在19世紀(jì)50年代,熵的定義由Rudolf Clausius提出,用來描述系統(tǒng)的混亂程度。1948年,香農(nóng)革命性地將熵的概念引入信息學(xué),用信息熵的概念量化了信息的不確定度。目前,信息熵理論是常見的入侵檢測基礎(chǔ)理論之一。

    假設(shè)系統(tǒng)X,其有限的可能狀態(tài)集為{X1,X2,…,XN},則系統(tǒng)X的信息熵為

    式中p(Xi)是狀態(tài)Xi在系統(tǒng)X中的概率。為評估CAN總線的信息熵和相對熵,可用β=(S,T)表示當(dāng)前檢測窗口的CAN總線系統(tǒng),S={ID1,ID2,…,IDN}表示各個CAN ID數(shù)據(jù)幀集合,T表示當(dāng)前檢測窗口記錄的所有CAN總線數(shù)據(jù)幀集合,則當(dāng)前檢測窗口CAN總線系統(tǒng)β的信息熵為

    設(shè)NIDi是當(dāng)前檢測窗口中CAN ID為IDi的數(shù)據(jù)幀數(shù)量,N是當(dāng)前檢測窗口所有數(shù)據(jù)數(shù)據(jù)幀的總數(shù)量,則

    CAN ID為IDi的數(shù)據(jù)幀信息熵為

    在信息論中,相對熵等價于兩個概率分布的信息熵的差值。設(shè)P(X)和Q(X)是隨機變量X上的兩個概率分布,則在離散隨機變量的情形下,相對熵的定義為

    假設(shè)q(IDi)是CAN ID為IDi的報文在正常情況下的分布,即不受攻擊時的正常分布,p(IDi)是CAN ID為IDi的報文在受攻擊情況下的分布,則CAN ID為IDi的報文的異常情況對正常情況的相對熵為

    當(dāng)總線沒有遭受攻擊時,KL(IDi)的值接近于0,當(dāng)總線中產(chǎn)生攻擊時,KL(IDi)會產(chǎn)生明顯的變化。遭受DoS攻擊的數(shù)據(jù)報文相對熵為

    顯 然p(IDi)>q(IDi),故DoS攻 擊 數(shù) 據(jù) 幀KL(IDi)>0。未遭受DoS攻擊的數(shù)據(jù)幀相對熵為

    顯然p(IDi)

    重放攻擊下,攻擊者一般重放特定CAN ID的數(shù)據(jù)幀到總線,占用總線資源較少,理想情況下,未被重放的數(shù)據(jù)幀出現(xiàn)頻率在重放攻擊下不變。假設(shè)攻擊者以n倍的頻率重放特定CAN ID的數(shù)據(jù)幀,則

    顯然,KL(IDi)>0,其它沒有被重放的數(shù)據(jù)幀,出現(xiàn)的概率不變,KL(IDi)=0。因此,重放攻擊下CAN網(wǎng)絡(luò)的相對熵會產(chǎn)生明顯的波動。

    2.2 基于信息熵的異常檢測機制

    基于信息熵的異常檢測機制檢測窗口為時間窗口,檢測機制分為兩個階段:分析階段和檢測階段。

    分析階段:無攻擊情況下,采集車載CAN總線中一定時間窗口的CAN總線數(shù)據(jù)幀,確定最佳時間窗口長度、異常信息熵閾值、CAN ID白名單,構(gòu)成CAN總線異常檢測特征庫。

    檢測階段:依據(jù)特征庫,在設(shè)定的時間窗口內(nèi),首先判斷數(shù)據(jù)幀CAN ID是否在白名單中,超出白名單中的數(shù)據(jù)幀即為異常數(shù)據(jù)幀。其次,判斷時間窗口內(nèi)的數(shù)據(jù)幀信息熵是否超出閾值,超出閾值即為異常。

    時間窗口的大小不僅影響檢測精度,還影響異常檢測的最大響應(yīng)時間。如果時間窗口過大,異常檢測的響應(yīng)時間過長。如果時間窗口過小,信息熵波動大,會出現(xiàn)誤判的現(xiàn)象。

    圖3 展示了時間窗口分別為1、3、5、7、10和20 s的信息熵波動情況。無論時間窗口多大,信息熵都會在一定范圍內(nèi)波動。當(dāng)時間窗口為1 s時,不足以覆蓋一個數(shù)據(jù)幀傳輸周期,信息熵波動幅度最大;當(dāng)時間窗口為10、20 s時,異常檢測響應(yīng)時間較長。當(dāng)時間窗口選定為3 s時,信息熵變化范圍較大,信息熵變化范圍分別為(3.685 491,3.693 019)。當(dāng)滑動時間窗口選定為5、7 s時,信息熵變化較小,信息熵變化范圍 分 別 為(3.687 199,3.688 828)、(3.687 091,3.688 774)。為平衡異常檢測的準(zhǔn)確率和檢測的實時性,本文選定T=5 s為最佳時間窗口。

    圖3 不同時間窗口CAN總線信息熵

    2.3 基于相對熵的異常檢測機制

    考慮到非周期性數(shù)據(jù)幀對時間窗口的低敏感度,在一定時間窗口內(nèi)不一定能采集到足夠的非周期數(shù)據(jù)幀,基于相對熵的異常檢測機制未采用時間窗口,而是將采集一定數(shù)量數(shù)據(jù)幀的數(shù)據(jù)窗口作為檢測窗口。基于相對熵的異常檢測機制分為兩個階段:分析階段與檢測階段。

    分析階段:確定最佳數(shù)據(jù)窗口大小、CAN ID白名單和相對熵閾值作為異常檢測特征數(shù)據(jù)庫。

    檢測階段:依據(jù)特征庫,檢測數(shù)據(jù)幀CAN ID是否異常,檢測數(shù)據(jù)窗口內(nèi)的相對熵是否異常。

    數(shù)據(jù)窗口的大小非常重要,數(shù)據(jù)窗口過大,CAN ID覆蓋率較高,但是異常檢測響應(yīng)時間過長。數(shù)據(jù)窗口過小,數(shù)據(jù)幀數(shù)量較少,CAN ID覆蓋率較低。

    圖4 為數(shù)據(jù)窗口內(nèi)采集100、200、300個數(shù)據(jù)幀條件下的相對熵變化情況。數(shù)據(jù)窗口增加會導(dǎo)致異常檢測響應(yīng)時間變長,以周期為10 ms的數(shù)據(jù)幀為例,時間窗口設(shè)置為300,檢測響應(yīng)時間不低于3 s。隨著數(shù)據(jù)窗口增加,相對熵絕對值波動愈加平緩。數(shù)據(jù)窗口為200與300的情況下,相對熵絕對值的波動明顯小于數(shù)據(jù)窗口為100的情況。故隨著數(shù)據(jù)窗口變大,異常檢測率會增加。數(shù)據(jù)窗口低于100,則相對熵絕對值過于隨機,波動較大,不利于提高檢測率。為平衡響應(yīng)時間與檢測率,本文選取數(shù)據(jù)窗口大小為T=200。

    圖4 不同數(shù)據(jù)窗口CAN總線相對熵

    3 實驗及分析

    本實驗用于安全評估所采用的CAN總線收發(fā)設(shè)備為創(chuàng)芯科技CANalyst?II分析儀,實驗車輛為某型號福特車輛。

    3.1 基于信息熵的異常檢測

    攻擊者從汽車CAN總線采集3 000條CAN數(shù)據(jù)幀作為重放攻擊輸入數(shù)據(jù)。本實驗中,攻擊者隨機選取第22、27、33個時間窗口對車輛發(fā)動重放攻擊。圖5為5 s時間窗口重放攻擊下的CAN總線信息熵變化。在22、27、33個時間窗口處,系統(tǒng)信息熵明顯偏離(3.687 199,3.688 828)的閾值范圍。依據(jù)特征數(shù)據(jù)庫,位于上述3個時間窗口處重放攻擊造成的數(shù)據(jù)異??杀粰z測出來,系統(tǒng)在遭遇重放攻擊時會給出警報。

    圖5 重放攻擊下的CAN總線信息熵(時間窗口=5 s)

    根據(jù)CAN網(wǎng)絡(luò)基于優(yōu)先級傳輸?shù)奶匦裕?.22 ms的發(fā)送速率,向CAN網(wǎng)絡(luò)中注入CAN ID為0x000的數(shù)據(jù)包會導(dǎo)致CAN拒絕服務(wù)。本實驗分別在22~26、32~33、38~40的時間窗口內(nèi)對車載CAN網(wǎng)絡(luò)發(fā)動DoS攻擊。圖6為5 s時間窗口DoS攻擊下的CAN總線信息熵變化。實驗表明,在22~26、32~33、38~40時間窗口內(nèi),CAN總線信息熵出現(xiàn)明顯偏離正常(3.687 199,3.688 828)范圍的現(xiàn)象,異常檢測機制可以有效檢測出DoS攻擊造成的數(shù)據(jù)異常。但是DoS攻擊與重放攻擊引起的信息熵變化并無明顯區(qū)別,基于信息熵的異常檢測機制雖然可以檢測到總線異常,但是卻無法區(qū)分引起異常的攻擊類型。

    圖6 DoS攻擊下的CAN總線信息熵變化(時間窗口=5 s)

    3.2 基于相對熵的異常檢測

    攻擊者從汽車CAN總線采集200條數(shù)據(jù)幀統(tǒng)計CAN總線相對熵。實驗中,攻擊者向車載CAN總線重放CAN ID為0x211、0x275、0x433、0x4b0的數(shù)據(jù)幀模擬數(shù)據(jù)重放攻擊。圖7為模擬重放攻擊下CAN總線的相對熵情況。與圖4正常狀態(tài)下CAN總線的相對熵相比,CAN ID為0x211、0x275、0x433、0x4b0的數(shù)據(jù)幀相對熵變化較為明顯,檢測機制可以檢測出重放攻擊導(dǎo)致的CAN總線相對熵異常。

    圖7 重放攻擊下CAN總線相對熵異常(滑動窗口200)

    攻擊者以較高頻率向CAN總線注入CAN ID為0x190的數(shù)據(jù)幀,基于CAN總線傳輸?shù)膹V播機制與仲裁機制,CAN ID為0x190的數(shù)據(jù)幀會占用總線資源,產(chǎn)生拒絕服務(wù)效果。圖8為DoS攻擊下的CAN總線相對熵,結(jié)果顯示CAN ID為0x190的數(shù)據(jù)幀相對熵產(chǎn)生了大幅度變化,該機制可以檢測出DoS攻擊造成的CAN總線相對熵異常。與重放攻擊相比,DoS攻擊造成的相對熵變化更為顯著,基于相對熵的異常檢測機制不僅可以檢測出兩種攻擊造成的CAN總線異常,還可以檢測出具體的攻擊類型與異常數(shù)據(jù)幀CAN ID。

    圖8 DoS攻擊下的CAN總線相對熵(滑動窗口200)

    4 結(jié)論

    本文中分析了車載CAN總線的安全漏洞并描述了針對車載CAN總線的威脅模型。為檢測外部攻擊造成的車載CAN總線數(shù)據(jù)幀流量異常,首先分析了基于信息熵的車載CAN總線異常檢測機制,該機制能夠檢測出外部攻擊造成的總線異?,F(xiàn)象和異常數(shù)據(jù)幀CAN ID,但是無法區(qū)分導(dǎo)致異常的具體攻擊類型,例如DoS攻擊、重放攻擊等。在此基礎(chǔ)上,提出了基于相對熵的車載CAN總線異常檢測機制,該機制將基于信息熵的異常檢測機制中的時間窗口改為數(shù)據(jù)窗口,改善了前者無法檢測非周期數(shù)據(jù)幀異常的缺陷。在某型號福特車輛上的實驗結(jié)果表明,基于相對熵的車載CAN總線異常檢測機制不僅可以檢測出外部攻擊造成的車載CAN總線流量異常及異常數(shù)據(jù)幀CAN ID,還可以進(jìn)一步區(qū)分DoS攻擊、重放攻擊等外部攻擊的具體類型。未來,本課題將結(jié)合數(shù)據(jù)挖掘技術(shù)進(jìn)一步完善數(shù)據(jù)窗口的參數(shù)選取機制,基于不同車輛的CAN總線流量特征自動設(shè)置數(shù)據(jù)窗口大小以適應(yīng)不同車輛,增大本文異常檢測機制的適用范圍。

    猜你喜歡
    信息熵攻擊者車載
    基于信息熵可信度的測試點選擇方法研究
    基于微分博弈的追逃問題最優(yōu)策略設(shè)計
    高速磁浮車載運行控制系統(tǒng)綜述
    正面迎接批判
    愛你(2018年16期)2018-06-21 03:28:44
    基于信息熵的實驗教學(xué)量化研究
    電子測試(2017年12期)2017-12-18 06:35:48
    一種基于信息熵的雷達(dá)動態(tài)自適應(yīng)選擇跟蹤方法
    智能互聯(lián)勢不可擋 車載存儲需求爆發(fā)
    基于信息熵的IITFN多屬性決策方法
    有限次重復(fù)博弈下的網(wǎng)絡(luò)攻擊行為研究
    基于ZVS-PWM的車載隔離DC-DC的研究
    炉霍县| 登封市| 法库县| 临沂市| 乐东| 大英县| 宜良县| 兰州市| 黄骅市| 和林格尔县| 内乡县| 姚安县| 海口市| 永济市| 安国市| 时尚| 墨竹工卡县| 都兰县| 西乡县| 东港市| 沂南县| 吉木萨尔县| 加查县| 孙吴县| 逊克县| 镇沅| 武陟县| 廉江市| 鹤庆县| 行唐县| 修文县| 磴口县| 赤水市| 庄浪县| 平潭县| 定日县| 汉沽区| 汶上县| 陈巴尔虎旗| 龙门县| 瓦房店市|