作者 |喬琪上海控安可信軟件創(chuàng)新研究院工控網(wǎng)絡(luò)安全組
來(lái)源 |鑒源實(shí)驗(yàn)室
社群 |添加微信號(hào)“TICPShanghai”加入“上海控安51fusa安全社區(qū)”
摘要:隨著智能網(wǎng)聯(lián)汽車(chē)的快速發(fā)展,其協(xié)議安全性和穩(wěn)定性成為了關(guān)注焦點(diǎn)。智能網(wǎng)聯(lián)汽車(chē)協(xié)議特點(diǎn)主要表現(xiàn)為:數(shù)據(jù)格式不統(tǒng)一、傳輸速率不統(tǒng)一、通信協(xié)議復(fù)雜以及通信內(nèi)容不確定等。這些特點(diǎn)對(duì)智能網(wǎng)聯(lián)汽車(chē)的安全性能提出了更高要求,同時(shí)也給協(xié)議安全性測(cè)試帶來(lái)了更大挑戰(zhàn)。模糊測(cè)試技術(shù)因其高效發(fā)現(xiàn)協(xié)議漏洞和缺陷的特性,在智能網(wǎng)聯(lián)汽車(chē)領(lǐng)域備受關(guān)注。本文旨在對(duì)智能網(wǎng)聯(lián)汽車(chē)協(xié)議模糊測(cè)試技術(shù)進(jìn)行綜述,探討其原理、方法和應(yīng)用,以期為智能網(wǎng)聯(lián)汽車(chē)協(xié)議安全研究提供參考。
01
引 言
在“智慧交通”初具模型的大背景下,智能網(wǎng)聯(lián)汽車(chē)作為汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向,其基于網(wǎng)絡(luò)通信的協(xié)議安全問(wèn)題日益受到重視。智能網(wǎng)聯(lián)汽車(chē)是指由車(chē)載傳感器、控制器、執(zhí)行器等車(chē)載組件以及云平臺(tái)等基礎(chǔ)設(shè)施,融合互聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)和人工智能等新興技術(shù)形成的一種新型汽車(chē)。智能網(wǎng)聯(lián)汽車(chē)是未來(lái)汽車(chē)發(fā)展的必然趨勢(shì),但是由于其具有“智能”和“網(wǎng)聯(lián)”兩大特點(diǎn),在其實(shí)際運(yùn)行過(guò)程中,系統(tǒng)與系統(tǒng)之間的通信安全問(wèn)題成為制約其發(fā)展的重要因素。
近年來(lái),汽車(chē)網(wǎng)絡(luò)安全攻擊事件層出不窮。例如2013年研究人員通過(guò)OBD-II(第二代車(chē)載自動(dòng)診斷系統(tǒng))成功入侵車(chē)載CAN(控制器局域網(wǎng))總線(xiàn),從而控制了福特翼虎、豐田普銳斯的方向盤(pán)、剎車(chē)、油門(mén)、儀表盤(pán)等汽車(chē)組件。2015年研究人員證明可以通過(guò)軟件漏洞無(wú)線(xiàn)侵入Jeep切諾基系統(tǒng),導(dǎo)致該公司召回了一大批汽車(chē)。現(xiàn)代智能汽車(chē)巨頭之一的特斯拉也曾被科恩實(shí)驗(yàn)室通過(guò)遠(yuǎn)程方式入侵,實(shí)現(xiàn)了解鎖車(chē)輛、打開(kāi)天窗及轉(zhuǎn)向燈、調(diào)節(jié)座椅等多項(xiàng)汽車(chē)功能的控制。
傳統(tǒng)的功能測(cè)試如協(xié)議一致性測(cè)試等,通常無(wú)法評(píng)估系統(tǒng)在非預(yù)期輸入下的行為表現(xiàn),不能有效保障智能網(wǎng)聯(lián)汽車(chē)的安全目標(biāo)實(shí)現(xiàn)與其設(shè)計(jì)的符合性。目前國(guó)內(nèi)外對(duì)于智能網(wǎng)聯(lián)汽車(chē)協(xié)議棧的安全保障主要通過(guò)對(duì)其進(jìn)行全面的網(wǎng)絡(luò)安全測(cè)試來(lái)實(shí)現(xiàn),具體包括滲透測(cè)試、模糊測(cè)試和合規(guī)性測(cè)試三大類(lèi)。其中,滲透測(cè)試通過(guò)模擬攻擊者的行為來(lái)發(fā)現(xiàn)系統(tǒng)中的漏洞和弱點(diǎn),重點(diǎn)關(guān)注協(xié)議和系統(tǒng)的安全漏洞以及脆弱性;模糊測(cè)試通過(guò)向系統(tǒng)輸入隨機(jī)、異常或者無(wú)效的數(shù)據(jù)來(lái)發(fā)現(xiàn)協(xié)議棧在處理非預(yù)期輸入時(shí)可能出現(xiàn)的崩潰和安全漏洞,測(cè)試重點(diǎn)是協(xié)議棧實(shí)施的正確性以及協(xié)議本身的漏洞,相對(duì)滲透測(cè)試更為全面;合規(guī)性測(cè)試則側(cè)重于確認(rèn)系統(tǒng)是否符合特定的安全標(biāo)準(zhǔn)、行業(yè)規(guī)范或者法規(guī)要求。因此,本文將模糊測(cè)試與傳統(tǒng)安全測(cè)試進(jìn)行比較,重點(diǎn)闡述模糊測(cè)試在智能網(wǎng)聯(lián)汽車(chē)協(xié)議安全保障方面的應(yīng)用情況和研究現(xiàn)狀,為開(kāi)展智能網(wǎng)聯(lián)汽車(chē)協(xié)議安全測(cè)試提供參考。
02
模糊測(cè)試原理
模糊測(cè)試(Fuzzing Test)是一種通過(guò)將隨機(jī)數(shù)據(jù)(非預(yù)期輸入)輸入到目標(biāo)系統(tǒng)以評(píng)估是否會(huì)出現(xiàn)非預(yù)期行為的測(cè)試方法,已經(jīng)在計(jì)算機(jī)網(wǎng)絡(luò)安全測(cè)試領(lǐng)域獲得了廣泛應(yīng)用,在自動(dòng)化漏洞挖掘方面具備優(yōu)異表現(xiàn)。
按照測(cè)試者對(duì)于被測(cè)系統(tǒng)的了解程度,模糊測(cè)試可以分為三種類(lèi)型:黑盒測(cè)試、白盒測(cè)試和灰盒測(cè)試。這三種測(cè)試方式同時(shí)也會(huì)影響對(duì)于測(cè)試結(jié)果的分析。
· 黑盒測(cè)試(Black Box Testing)
不了解系統(tǒng)內(nèi)部工作原理時(shí)可以采用黑盒測(cè)試。測(cè)試者只需關(guān)注系統(tǒng)的輸入和輸出,而不用考慮系統(tǒng)的內(nèi)部邏輯或?qū)崿F(xiàn)細(xì)節(jié)。黑盒測(cè)試是最接近真實(shí)世界攻擊事件的方式,因?yàn)樗募僭O(shè)條件與真實(shí)攻擊者能力一致,即只能觀察系統(tǒng)的外部行為,而無(wú)法獲取系統(tǒng)的內(nèi)部信息。對(duì)測(cè)試結(jié)果的監(jiān)控也只能通過(guò)黑盒方式來(lái)觀測(cè)被測(cè)件的外部變化,例如協(xié)議連接中斷、硬件耗能異常、設(shè)備斷電等。
· 白盒測(cè)試(White Box Testing)
在獲得了系統(tǒng)內(nèi)部工作原理的情況下,可以采取白盒測(cè)試。測(cè)試者可以通過(guò)訪(fǎng)問(wèn)系統(tǒng)的源代碼、設(shè)計(jì)文檔等內(nèi)部信息,設(shè)計(jì)更具針對(duì)性的測(cè)試用例,以覆蓋系統(tǒng)的各個(gè)路徑和邏輯分支,發(fā)現(xiàn)潛在的漏洞和錯(cuò)誤。白盒測(cè)試的實(shí)施通常對(duì)設(shè)計(jì)者的技術(shù)能力和專(zhuān)業(yè)知識(shí)有一定的考驗(yàn)。白盒測(cè)試的結(jié)果監(jiān)控則較為清晰明確,可以通過(guò)源代碼/二進(jìn)制插樁等方法獲取系統(tǒng)信息反饋,以及測(cè)試覆蓋率、效率等關(guān)鍵指標(biāo)參數(shù)。
· 灰盒測(cè)試(Gray Box Testing)
灰盒測(cè)試介于黑盒測(cè)試和白盒測(cè)試之間,測(cè)試者在一定程度上了解系統(tǒng)的內(nèi)部工作原理,但并不具備完整的系統(tǒng)信息。灰盒測(cè)試在測(cè)試效率和覆蓋范圍之間取得了平衡,可以更全面地發(fā)現(xiàn)系統(tǒng)的漏洞和弱點(diǎn),同時(shí)又不需要測(cè)試者完全了解系統(tǒng)的所有細(xì)節(jié)。通常的灰盒測(cè)試是從一個(gè)黑盒被測(cè)件開(kāi)始,由專(zhuān)業(yè)測(cè)試人員利用逆向工程獲取系統(tǒng)的內(nèi)部知識(shí),具有較高的復(fù)雜性和技術(shù)門(mén)檻。
協(xié)議模糊測(cè)試通過(guò)模擬通信節(jié)點(diǎn)與被測(cè)件建立通信信道,通過(guò)發(fā)送對(duì)應(yīng)協(xié)議模糊報(bào)文、觀察系統(tǒng)的響應(yīng)情況,來(lái)發(fā)現(xiàn)潛在的漏洞和異常行為。協(xié)議模糊測(cè)試雖然已經(jīng)獲得了廣泛應(yīng)用,但是在智能網(wǎng)聯(lián)汽車(chē)安全評(píng)估中的應(yīng)用相對(duì)較少。這主要是因?yàn)橹悄芫W(wǎng)聯(lián)汽車(chē)在通信過(guò)程中使用了復(fù)雜的協(xié)議棧,不僅包括以太網(wǎng)類(lèi)型的協(xié)議(例如SOME/IP協(xié)議)還包括現(xiàn)場(chǎng)總線(xiàn)類(lèi)型的協(xié)議(例如CAN總線(xiàn)協(xié)議),這些協(xié)議在數(shù)據(jù)格式、傳輸速率、通信內(nèi)容等方面具有較大差異,對(duì)模糊測(cè)試工具的設(shè)計(jì)提出了較大挑戰(zhàn)。但很明顯地,協(xié)議模糊測(cè)試在自動(dòng)化漏洞挖掘方面具有巨大潛能,具備較高的研究?jī)r(jià)值。
03
模糊測(cè)試方法
按數(shù)據(jù)產(chǎn)生方式不同,模糊測(cè)試數(shù)據(jù)的生成可以分為生成式(Generation)和變異式(Mutation)兩種主要方式:
1. 生成(Generation)
生成是一種從頭開(kāi)始創(chuàng)建測(cè)試數(shù)據(jù)的方法。在生成過(guò)程中,測(cè)試者根據(jù)目標(biāo)系統(tǒng)的特征和預(yù)期的輸入格式,使用各種算法和技術(shù)生成符合條件的測(cè)試數(shù)據(jù)。這種方法可能包括使用隨機(jī)生成器、模型驅(qū)動(dòng)生成、語(yǔ)法驅(qū)動(dòng)生成等技術(shù)來(lái)生成測(cè)試數(shù)據(jù)。測(cè)試者可以根據(jù)系統(tǒng)的需求和特性,設(shè)計(jì)出具有特定結(jié)構(gòu)和屬性的測(cè)試數(shù)據(jù)。生成的測(cè)試數(shù)據(jù)可能更具有代表性,因?yàn)樗鼈兪歉鶕?jù)系統(tǒng)的特征和預(yù)期的輸入格式精心設(shè)計(jì)和生成的。然而,生成測(cè)試數(shù)據(jù)可能需要更多的時(shí)間和資源來(lái)創(chuàng)建。
2. 變異(Mutation)
變異是一種在現(xiàn)有測(cè)試數(shù)據(jù)的基礎(chǔ)上進(jìn)行修改和變化,生成新的測(cè)試數(shù)據(jù)的方法。在變異過(guò)程中,測(cè)試者會(huì)對(duì)現(xiàn)有的測(cè)試數(shù)據(jù)進(jìn)行一系列的隨機(jī)或有針對(duì)性的變換操作,以生成新的測(cè)試數(shù)據(jù)。這種方法通常包括對(duì)測(cè)試數(shù)據(jù)進(jìn)行隨機(jī)變換、替換、刪除、添加等操作,以創(chuàng)建與原始測(cè)試數(shù)據(jù)相似但又稍有不同的新測(cè)試數(shù)據(jù)。變異可以快速生成大量的測(cè)試數(shù)據(jù),因?yàn)樗昧爽F(xiàn)有測(cè)試數(shù)據(jù)的信息和結(jié)構(gòu)。然而,由于變異過(guò)程是基于現(xiàn)有數(shù)據(jù)進(jìn)行修改的,因此生成的測(cè)試數(shù)據(jù)可能不夠多樣化,可能無(wú)法覆蓋所有可能的邊界情況。
生成和變異是兩種常見(jiàn)的模糊測(cè)試數(shù)據(jù)生成方式。生成方法從頭開(kāi)始創(chuàng)建測(cè)試數(shù)據(jù),可能更具代表性但需要更多時(shí)間和資源;而變異方法則是基于現(xiàn)有數(shù)據(jù)進(jìn)行修改,可以快速生成大量測(cè)試數(shù)據(jù),但可能缺乏多樣性。在實(shí)際應(yīng)用中,可以根據(jù)具體的測(cè)試需求和情況選擇合適的生成方式,更廣泛使用的方式可能是采用兩種方法的結(jié)合。
04
智能網(wǎng)聯(lián)汽車(chē)協(xié)議模糊測(cè)試應(yīng)用
智能網(wǎng)聯(lián)汽車(chē)融合使用車(chē)載總線(xiàn)與車(chē)載以太網(wǎng)已經(jīng)成為了下一代車(chē)載網(wǎng)絡(luò)架構(gòu)的發(fā)展趨勢(shì)。以典型車(chē)載診斷協(xié)議DoIP為例,其下層傳輸協(xié)議可以為CAN總線(xiàn),也可以為T(mén)CP或者UDP等標(biāo)準(zhǔn)以太網(wǎng)協(xié)議。車(chē)載協(xié)議種類(lèi)的多樣性使得開(kāi)發(fā)人員在實(shí)現(xiàn)汽車(chē)通信協(xié)議棧時(shí),可能因?yàn)橹苯邮褂昧碎_(kāi)源代碼或者個(gè)人疏忽導(dǎo)致軟件代碼存在漏洞,需要對(duì)其進(jìn)行詳盡的模糊測(cè)試。由于汽車(chē)領(lǐng)域存在激烈的行業(yè)競(jìng)爭(zhēng),為保護(hù)自身企業(yè)的利益和知識(shí)產(chǎn)權(quán),仍有相當(dāng)一部分廠商在委托第三方安全測(cè)試時(shí)不愿意提供源代碼。因此黑盒測(cè)試是目前智能網(wǎng)聯(lián)汽車(chē)領(lǐng)域最適用的模糊測(cè)試方法。
車(chē)載通信協(xié)議通常運(yùn)行在汽車(chē)行業(yè)專(zhuān)有的嵌入式設(shè)備,很難在進(jìn)行測(cè)試時(shí)提取被測(cè)程序或者事先進(jìn)行插樁,因此基于協(xié)議字段規(guī)則變異的黑盒模糊測(cè)試格外適用于智能網(wǎng)聯(lián)汽車(chē)協(xié)議安全測(cè)試。測(cè)試人員只需要通過(guò)某種方法獲取協(xié)議知識(shí)并設(shè)置合適的監(jiān)控組件,就能通過(guò)分析測(cè)試的輸入輸出來(lái)獲取測(cè)試結(jié)果反饋。
獲取協(xié)議知識(shí)的方法目前大致可以分為3類(lèi):①利用領(lǐng)域?qū)<医?jīng)驗(yàn)或者分析協(xié)議標(biāo)準(zhǔn)文本;②利用機(jī)器學(xué)習(xí)方法;③利用協(xié)議逆向工程方法。第一種方法主要適用于公開(kāi)協(xié)議,通過(guò)梳理協(xié)議報(bào)文格式等信息來(lái)定義協(xié)議報(bào)文數(shù)據(jù)模型以及狀態(tài)轉(zhuǎn)換模型,然后可以利用Peach、Sulley、Boofuzz等知名模糊測(cè)試框架進(jìn)行測(cè)試。
第二種方法主要針對(duì)協(xié)議信息未公開(kāi)的情況。針對(duì)單條協(xié)議報(bào)文,對(duì)抗神經(jīng)網(wǎng)絡(luò)GAN能夠從截獲的協(xié)議通信流量數(shù)據(jù)中學(xué)習(xí)協(xié)議知識(shí)并構(gòu)造符合協(xié)議報(bào)文結(jié)構(gòu)分布特征的測(cè)試數(shù)據(jù)。而長(zhǎng)短期記憶網(wǎng)絡(luò)LSTM能夠?qū)W習(xí)序列報(bào)文的內(nèi)置關(guān)系,可以有效描述協(xié)議狀態(tài)的轉(zhuǎn)移。基于機(jī)器學(xué)習(xí)的協(xié)議知識(shí)獲取可以在未知協(xié)議結(jié)構(gòu)的情況下提高生成模糊測(cè)試用例的效率。
第三種方法與前兩種不同,需要前期針對(duì)某個(gè)特定協(xié)議進(jìn)行大量分析工作,不具備普適性,但能大幅提高對(duì)特定協(xié)議的測(cè)試效率。研究者曾通過(guò)模式識(shí)別的方式分析某私有通信協(xié)議的報(bào)文格式,并通過(guò)報(bào)文相似性對(duì)比重建該協(xié)議握手過(guò)程。然后使用學(xué)習(xí)到的協(xié)議知識(shí)構(gòu)建模糊測(cè)試原型系統(tǒng),發(fā)現(xiàn)了該協(xié)議多個(gè)嚴(yán)重漏洞。可用的私有協(xié)議逆向工程包括基于報(bào)文序列對(duì)齊分析Netzob、Discoverer等和基于程序執(zhí)行的分析Dispatcher、Replayer等。
除了獲取協(xié)議知識(shí),如何監(jiān)控黑盒模糊測(cè)試結(jié)果也是車(chē)載協(xié)議棧測(cè)試一大重點(diǎn)。常見(jiàn)的黑盒監(jiān)控包括連接檢查、主機(jī)存活檢查等,發(fā)現(xiàn)漏洞能力極其有限,還可能存在大量誤報(bào)。目前出現(xiàn)了一些基于電量波動(dòng)或者報(bào)文信號(hào)誤差的監(jiān)測(cè)方式,相較于存活檢查等更為精確,但需要硬件分析工具的支持。
05
結(jié)論與展望
目前,智能網(wǎng)聯(lián)汽車(chē)協(xié)議安全測(cè)試還處于發(fā)展中期,測(cè)試場(chǎng)景還不夠豐富,測(cè)試技術(shù)還比較欠缺,同時(shí),隨著新技術(shù)的應(yīng)用,協(xié)議安全測(cè)試面臨著更多的挑戰(zhàn)。未來(lái)智能網(wǎng)聯(lián)汽車(chē)協(xié)議安全測(cè)試研究應(yīng)從以下幾個(gè)方面開(kāi)展:
(1)提升模糊測(cè)試的自動(dòng)化程度。當(dāng)前模糊測(cè)試工具大多只支持單步和單步的執(zhí)行,未支持多步執(zhí)行。未來(lái)可以引入多步執(zhí)行模型來(lái)提升模糊測(cè)試的自動(dòng)化程度,同時(shí)也可以結(jié)合深度學(xué)習(xí)來(lái)提高模糊測(cè)試效率。
(2)提高模糊測(cè)試的覆蓋率。當(dāng)前的模糊測(cè)試技術(shù)大多基于機(jī)器學(xué)習(xí)算法對(duì)協(xié)議進(jìn)行分析,但是由于機(jī)器學(xué)習(xí)算法的訓(xùn)練數(shù)據(jù)集較大,導(dǎo)致其結(jié)果準(zhǔn)確率較低。未來(lái)可以研究基于深度學(xué)習(xí)算法進(jìn)行協(xié)議分析,提升模糊測(cè)試結(jié)果準(zhǔn)確率。
(3)增強(qiáng)協(xié)議安全模型。隨著汽車(chē)功能的增多以及更多新技術(shù)的應(yīng)用,協(xié)議安全模型需要進(jìn)行持續(xù)更新。目前已有許多公司在進(jìn)行相關(guān)研究,但是這些公司大多為傳統(tǒng)汽車(chē)廠商,未來(lái)可以考慮和互聯(lián)網(wǎng)企業(yè)合作,開(kāi)發(fā)新的協(xié)議安全模型來(lái)提高協(xié)議安全性能。
智能網(wǎng)聯(lián)汽車(chē)協(xié)議模糊測(cè)試技術(shù)是保障智能網(wǎng)聯(lián)汽車(chē)安全的重要手段之一。隨著智能網(wǎng)聯(lián)汽車(chē)技術(shù)的不斷發(fā)展和演進(jìn),模糊測(cè)試技術(shù)也將不斷完善和改進(jìn),以應(yīng)對(duì)日益復(fù)雜和多樣化的安全威脅。未來(lái),我們可以期待模糊測(cè)試技術(shù)在智能網(wǎng)聯(lián)汽車(chē)領(lǐng)域的更廣泛應(yīng)用,為汽車(chē)行業(yè)的安全發(fā)展貢獻(xiàn)力量。
審核編輯 黃宇
-
測(cè)試
+關(guān)注
關(guān)注
8文章
5649瀏覽量
128459 -
智能網(wǎng)聯(lián)汽車(chē)
+關(guān)注
關(guān)注
9文章
1149瀏覽量
31455
發(fā)布評(píng)論請(qǐng)先 登錄
從問(wèn)題管理到智慧實(shí)驗(yàn)室的蝶變之路

東軟與同濟(jì)大學(xué)共建未來(lái)車(chē)載人工智能聯(lián)合實(shí)驗(yàn)室
實(shí)驗(yàn)室安全管理成焦點(diǎn),漢威科技賦能實(shí)驗(yàn)室安全升級(jí)

TüV萊茵蘇州汽車(chē)零部件實(shí)驗(yàn)室獲奇瑞汽車(chē)認(rèn)可

卓品智能獲批建設(shè)無(wú)錫市汽車(chē)嵌入式電控系統(tǒng)重點(diǎn)實(shí)驗(yàn)室
上能電氣斬獲CNAS實(shí)驗(yàn)室認(rèn)可證書(shū)
面向教學(xué)科研智能網(wǎng)聯(lián)汽車(chē)仿真測(cè)試實(shí)驗(yàn)室

長(zhǎng)城汽車(chē)成立車(chē)載網(wǎng)絡(luò)聯(lián)合測(cè)試實(shí)驗(yàn)室
ETAS獲得亞馬遜智能汽車(chē)授權(quán)的集成測(cè)試實(shí)驗(yàn)室認(rèn)證
LIMS系統(tǒng)在芯片實(shí)驗(yàn)室中的應(yīng)用
上汽集團(tuán)與紫金山實(shí)驗(yàn)室簽署戰(zhàn)略合作協(xié)議
鑒源實(shí)驗(yàn)室·ISO 26262中測(cè)試用例的得出方法-等價(jià)類(lèi)的生成和分析

鑒源實(shí)驗(yàn)室·基于MQTT協(xié)議的模糊測(cè)試研究

鑒源實(shí)驗(yàn)室·HTTP協(xié)議網(wǎng)絡(luò)安全攻擊

評(píng)論