在車載以太網(wǎng)絡(luò)中,影響網(wǎng)絡(luò)安全的因素主要有:
1、廣播通信:在廣播消息、組播消息以及目的地址不明確的消息傳播時會使用廣播的傳遞方式,主要處于這個網(wǎng)絡(luò)就可以接受到對應(yīng)的廣播報文;
2、缺乏相應(yīng)措施控制車載節(jié)點在車載網(wǎng)絡(luò)中發(fā)送過多流量,工程師在設(shè)計ECU時應(yīng)考慮限制自身發(fā)送過多流量,而除了設(shè)計錯誤和設(shè)備故障,安全策略主要用于抵抗網(wǎng)絡(luò)攻擊產(chǎn)生的較大流量。
僅是一個節(jié)點發(fā)送的大量廣播和過量消息就可以引起車載網(wǎng)絡(luò)控制器中MAC層服務(wù)的癱瘓和故障,此外,隨處可偵聽的廣播也是安全隱患(無法區(qū)分廣播報文接受者用意是好還是壞)。
因此交換機(jī)的安全保障主要分為以下兩點:
1、禁止接受過多流量;
2、禁止發(fā)送過多流量。
對應(yīng)上述需求,有以下措施可以借鑒:
一、VLAN
在構(gòu)建車載網(wǎng)絡(luò)數(shù)據(jù)信息時,可以根據(jù)娛樂、控制和盡力而為流量的區(qū)別來對信息進(jìn)行分類。也可以通過VLAN技術(shù)做出了詳盡描述,該技術(shù)的核心是在以太網(wǎng)中虛擬分割出許多子網(wǎng),屬于同一個子網(wǎng)的節(jié)點擁有形同的VLANID。使用VLAN技術(shù)后,即使是廣播信息,或是物理連接于統(tǒng)一交換機(jī)的不同節(jié)點,也可以通過VLANID進(jìn)行消息的隔離
從安全的層面考慮,VLAN技術(shù)不僅可以隔絕虛擬網(wǎng)絡(luò)之間的消息,還可以減少廣播范圍(避免廣播風(fēng)暴)。此外,VLAN隱藏了過濾/丟棄數(shù)據(jù)包的功能:攜帶有交換機(jī)不支持的VLAN標(biāo)簽的數(shù)據(jù)包,將被拋棄(這個功能一般沒有被提起)。如果交換機(jī)接受的數(shù)據(jù)不含有VLAN信息,交換機(jī)可以直接將其丟棄或根據(jù)端口、協(xié)議、報頭等賦予該數(shù)據(jù)VLAN標(biāo)簽。
如下圖:不同應(yīng)用場景設(shè)置不同VLAN
VLAN技術(shù)不僅有助于網(wǎng)絡(luò)安全的提升,還可以簡化不少問題:
數(shù)據(jù)記錄和測試:由于VLAN的劃分與設(shè)備的物理位置無關(guān),它為ECU的網(wǎng)段分配提供了極大的靈活性,有助于日益增長的汽車以太網(wǎng)絡(luò)中的數(shù)據(jù)記錄和分析。
2. 性能:可以將特定的通信分配至特定VLAN,并在交換機(jī)中進(jìn)行優(yōu)先處理。
如上圖中對汽車以太網(wǎng)的流量隔離做出了詮釋。在此例中,“汽車交換機(jī)”作為對流量進(jìn)行隔離的ECU。此ECU可以放置在汽車部位任意位置,每個端口均配置了VLAN過濾策略。在交換機(jī)接受到診斷流量時,會根據(jù)診斷流量的VLAN將此流量轉(zhuǎn)發(fā)至相應(yīng)節(jié)點。如此操作簡單有效,如同建立了一個防火墻,對車載信息安全提供了更大的可能性。
對于汽車上其他為外部接口而言,VLAN同樣能夠發(fā)揮作用。進(jìn)出汽車的流量可以在同一個接口處分別打上或去除VLAN標(biāo)簽。在ECU內(nèi)部,只有特定區(qū)域才有權(quán)對標(biāo)記的數(shù)據(jù)進(jìn)行處理,此方法有效隔離了數(shù)據(jù)。汽車制造商應(yīng)在開發(fā)過程中重視VLAN的開發(fā)。
交換機(jī)的主要任務(wù)是讀取接受數(shù)據(jù)的目的地址,找到目的轉(zhuǎn)發(fā)端口后,將數(shù)據(jù)發(fā)送出去。
因此,交換機(jī)內(nèi)部存在一個轉(zhuǎn)發(fā)表,該表記錄了接收到數(shù)據(jù)的源端口和MAC地址。當(dāng)接受到的數(shù)據(jù)需要轉(zhuǎn)發(fā)到轉(zhuǎn)發(fā)表中存儲的目的MAC地址時,交換機(jī)只要根據(jù)轉(zhuǎn)發(fā)表進(jìn)行轉(zhuǎn)發(fā)即可。另外,當(dāng)轉(zhuǎn)發(fā)到未知目的地址的情況時。這時,交換機(jī)會向所有端口發(fā)送數(shù)據(jù)(廣播)。上述也是交換機(jī)的工作原理。
許多黑客利用交換機(jī)工作原理,不斷向交換機(jī)發(fā)送未知目的地址的數(shù)據(jù)包,使得交換機(jī)不斷廣播,導(dǎo)致網(wǎng)絡(luò)癱瘓。
當(dāng)然可以采取一些措施避免黑客進(jìn)行上述攻擊,如:
1、設(shè)置交換機(jī)僅在啟動階段只進(jìn)行一次地址學(xué)習(xí),或者完全關(guān)閉交換機(jī)的地址學(xué)習(xí)功能,改用靜態(tài)IP地址的映射。同樣可以使用用這些方法建立ARP地址表,完成MAC地址和IP地址的映射。對于汽車這樣一個靜態(tài)網(wǎng)絡(luò),完全可以采用這些方法建立地址表,還可以根據(jù)地址條目數(shù)量、地址范圍和變化頻率對地址學(xué)習(xí)進(jìn)行限制。
2、還可以建立組播消息的過濾策略。交換機(jī)會將組播消息轉(zhuǎn)發(fā)至滿足組播要求的端口,因此只有同組內(nèi)成員可以接受都組播消息。但是,同樣需要對非組內(nèi)成員接受到組播消息的行為進(jìn)行會話,可以將其拋棄或者轉(zhuǎn)發(fā)至特定地址。
3、交換機(jī)現(xiàn)在還可以使用強(qiáng)制認(rèn)證策略,使得端口處于禁用狀態(tài),直到成功認(rèn)證后方可啟用。網(wǎng)絡(luò)節(jié)點的認(rèn)證需要由交換機(jī)固件或直連到交換機(jī)的微控制器完成,這樣可以保證快速啟動。
密鑰管理
密碼學(xué)的基本原理要求:不能將同一密碼用于不同功能或者設(shè)備,且同一密碼的使用時間不宜過長。
不同的過程,如數(shù)據(jù)認(rèn)證、密鑰交換和數(shù)據(jù)加密應(yīng)分別使用各自的密碼。這樣,在某一密碼收到損害時,如數(shù)據(jù)加密,仍可以正常地通過密鑰交換更改數(shù)據(jù)加密的密碼。保證密鑰安全的方式有:宣布照顧密鑰的使用時間,保證它僅用于有限的數(shù)據(jù);跟還有不同地汽車功能和適用范圍進(jìn)行分類,各類通信分別使用不同地密鑰。
汽車不同ECU的密鑰分配是一項十分復(fù)雜的工作,在IT網(wǎng)絡(luò)中,密鑰分配有相關(guān)規(guī)范。由于這些密鑰管理辦法消耗大量資源且需要一個線上的授權(quán)服務(wù)器,無法對實時和速度保證,因此不適用于汽車網(wǎng)絡(luò)。在汽車網(wǎng)絡(luò)中,可以由一個專用于ECU作為密鑰master,給網(wǎng)絡(luò)內(nèi)的其他ECU分配密碼。
實現(xiàn)上述想法的基本思路為:密鑰交換是通過對稱加密實現(xiàn)的,由診斷請求、定期或者外部的服務(wù)后端服務(wù)器觸發(fā)。密鑰master是唯一與后端服務(wù)器進(jìn)行密鑰相關(guān)通信的ECU,當(dāng)然也可以使用非對稱密碼學(xué)方法來完成密鑰管理。
上述內(nèi)容,是將傳統(tǒng)以太網(wǎng)中應(yīng)用到信息安全策略移植到車載以太網(wǎng)應(yīng)用中,多方面、分層級保護(hù)信息安全措施。
自媒體提供了一個展現(xiàn)自己觀點的平臺,我有幸參與其中,來暢所欲言的表達(dá)自己觀點。但鑒于眼界和以往經(jīng)驗,闡述的觀點有可能具有一定的局限性,望讀者批判性的閱讀。
若您有所收獲,我將萬分激動,因為他人的認(rèn)可是我幸福度提高的動力和源泉,也是我不斷更新的動力。