AUTOSAR R23-11發(fā)布有一段時(shí)間了,不知大家有沒有淺嘗一下。
據(jù)發(fā)布會(huì)介紹,這次版本主要面向下一代EE架構(gòu)新增了Safety、Security的特性,因此為了跟上節(jié)奏,現(xiàn)將最新CP AUTOSAR關(guān)于security機(jī)制進(jìn)行匯總。
1. CP AUTOSAR Security模塊
根據(jù)AUTOSAR架構(gòu)整理出信息安全框架,可以發(fā)現(xiàn)相較于之前R22-11模塊變化不大,灰色部分屬于關(guān)聯(lián)模塊,橙色部分和藍(lán)色部分屬于Security功能,如下圖:
SecOC(Secure Onboard Communication):板級(jí)安全通信
MKA(MACsec Key Agreement):提供MACsec 數(shù)據(jù)加密密鑰協(xié)商方法
IdsM(Instrusion Detection System Manager):收集和過濾板級(jí)信息安全事件并分發(fā)不同處理端
KeyM(Key Manager):密鑰和證書管理
CSM(Crypto Service Manager):為所有軟件組件提供提供基礎(chǔ)密碼服務(wù)
CryIf(Crypto Interface):提供統(tǒng)一接口管理不同加密驅(qū)動(dòng)等
SHE(Security Hardware Extension)
HSM(Hardware Security Module)
值得一提是,在R23-11的通信模塊中新增了Firewall模塊,根據(jù)預(yù)定義的防火墻規(guī)則對(duì)網(wǎng)絡(luò)流量進(jìn)行過濾,保護(hù)主機(jī)免受惡意報(bào)文的攻擊。 這一模塊的出現(xiàn)完善了整車的IDPS系統(tǒng),從而進(jìn)一步構(gòu)建了整車的網(wǎng)絡(luò)縱深防御體系。
2. CP AUTOSAR信息安全機(jī)制
2.1 SecOC
這個(gè)模塊一定是我們工程師最先接觸到的AUTOSAR信息安全機(jī)制,主要用于ECU板級(jí)的安全通信。 大家應(yīng)該有印象,在以往沒有該機(jī)制,CAN通信通常是使用Checksum和RollingCounter來檢驗(yàn)是否掉幀或者漏幀,并沒有一個(gè)機(jī)制來保證報(bào)文數(shù)據(jù)的有效和可信。 基于此,SecOC應(yīng)運(yùn)而生,用于實(shí)現(xiàn)板級(jí)整幀報(bào)文的完整性和真實(shí)性,實(shí)現(xiàn)ECU的Security;而Checksum和RollingCounter這類機(jī)制也沒有被拋棄,它被逐步優(yōu)化為E2E,用于實(shí)現(xiàn)信號(hào)級(jí)別的Safety,在此不表。 在AUTOSAR架構(gòu)下SecOC關(guān)聯(lián)模塊如下:
以CAN的接收?qǐng)?bào)文驗(yàn)證為例,數(shù)據(jù)流如下: CanIf-> PduR -> SecOC-> CSM ->CryIf ->Crypto Driver -> SHEHSM 當(dāng)加密模塊對(duì)CAN報(bào)文進(jìn)行驗(yàn)證后,會(huì)在SecOC處理驗(yàn)證結(jié)果,如果驗(yàn)證成功,則數(shù)據(jù)經(jīng)由SecOC->PduR-> COM傳至用戶端,否則丟棄該報(bào)文,并準(zhǔn)備開始診斷事件的處理。 進(jìn)一步的,SecOC整體驗(yàn)證流程如下:
假設(shè)左右兩個(gè)框分別為ECU1和ECU2,ECU1向ECU2發(fā)送一個(gè)安全報(bào)文,那么在ECU1這一端首先需要生成該報(bào)文的MAC值(根據(jù)SecOC規(guī)范一般使用對(duì)稱算法AES128-CMAC用于生成MAC值)。 用于生成MAC值的原始明文一般為該報(bào)文的ID+原始數(shù)據(jù)+完整新鮮度值(FV)。在生成完MAC值后,會(huì)將MAC和新鮮度值部分截取,并與原始報(bào)文組成一個(gè)安全PDU發(fā)送給ECU2。 ECU2首先檢查新鮮度值是否是在合理范圍內(nèi),同時(shí)對(duì)原始報(bào)文進(jìn)行MAC驗(yàn)證(對(duì)安全PDU進(jìn)行CMAC計(jì)算并與接收到的MAC比較),驗(yàn)證成功則放行至上層。 需要注意的是,SecOC目前使用MAC(通常為CMAC)保證完整性和身份認(rèn)證、使用新鮮度值(Freshness)防止重放攻擊,所以一般來講帶有SecOC屬性的報(bào)文不是加密的。 2.2 MKA MKA(MACsec Key Agreement protocol (IEEE Std 802.1X))模塊是在CP AUTOSAR R22-11首次提出,并在R23-11進(jìn)行了優(yōu)化。 在講MKA之前,首先需要了解MACsec的基本概念(以下來源華為官網(wǎng)技術(shù)文章)。
MACsec主要應(yīng)用在點(diǎn)對(duì)點(diǎn)組網(wǎng)的環(huán)境中,是基于802.1AE和802.1X協(xié)議的局域網(wǎng)上的安全通信方法,它通過身份認(rèn)證、數(shù)據(jù)加密、完整性校驗(yàn)、重放保護(hù)等功能保證以太網(wǎng)數(shù)據(jù)幀的安全性,防止設(shè)備處理有安全威脅的報(bào)文。
本端和對(duì)端之間使用安全密鑰對(duì)數(shù)據(jù)報(bào)文進(jìn)行加密和解密,密鑰的協(xié)商以及安全通道的建立和管理由MKA(MACsec Key Agreement)協(xié)議負(fù)責(zé)。
MKA協(xié)議定義了復(fù)雜的密鑰生成體系,確保MACsec數(shù)據(jù)傳輸?shù)陌踩浴?/p>
其中,CAK(secure Connectivity Association Key)是用戶在設(shè)備上配置的密鑰,不直接用于數(shù)據(jù)報(bào)文的加密,而是由它和其他參數(shù)派生出用于數(shù)據(jù)加密的SAK(Secure Association Key)。
MACsec的交互過程主要分為3步:會(huì)話協(xié)商、安全通信和會(huì)話保持。
會(huì)話協(xié)商
在兩端設(shè)備的接口上開啟MACsec功能,并配置相同的CAK后,兩端設(shè)備會(huì)通過MKA協(xié)議選舉出密鑰服務(wù)器(Key Server),密鑰服務(wù)器根據(jù)CAK生成用于加密數(shù)據(jù)報(bào)文的SAK,分發(fā)給對(duì)端設(shè)備。
安全通信
發(fā)送方使用SAK加密數(shù)據(jù)報(bào)文,接收方使用SAK解密數(shù)據(jù)報(bào)文。兩端設(shè)備既可以作為發(fā)送方,也可以作為接收方,通信過程都受到MACsec保護(hù)。
會(huì)話?;?/p>
MKA協(xié)議定義了一個(gè)MKA會(huì)話?;?a href="http://hljzzgx.com/tags/定時(shí)器/" target="_blank">定時(shí)器,用于規(guī)定MKA會(huì)話的超時(shí)時(shí)間。MKA會(huì)話協(xié)商成功后,兩端設(shè)備會(huì)通過交互MKA協(xié)議報(bào)文確認(rèn)連接的存在。設(shè)備收到對(duì)端的MKA協(xié)議報(bào)文后,啟動(dòng)定時(shí)器。 如果在該超時(shí)時(shí)間內(nèi)收到對(duì)端的MKA協(xié)議報(bào)文,則重啟定時(shí)器。 如果在該超時(shí)時(shí)間內(nèi)未收到對(duì)端的MKA協(xié)議報(bào)文,則認(rèn)為該連接已不安全,刪除建立的會(huì)話,重新進(jìn)行MKA協(xié)商。
而MKA模塊在AUTOSAR架構(gòu)如下:
該模塊的主要作用如下:
配置MACsec實(shí)體,使受MACsec保護(hù)的流量生效
生成處理MKPDUs
使用CSM生成和校驗(yàn)MKPDU的ICV(Integrity Check Value)
由于這個(gè)模塊才被加入到AUTOSAR中,在汽車ECU的車載以太網(wǎng)上的使用有一定的滯后性,不過這個(gè)在園區(qū)交換機(jī)早就廣泛應(yīng)用了。
2.3 IdsM
該模塊之前專門拿過一章講過,它的出現(xiàn)主要是為了建立起車載視角下的入侵檢測(cè)和防御系統(tǒng)。
該模塊被放在AUTOSAR的Crypto Stack的服務(wù)層,如下:
旨在用于檢測(cè)受保護(hù)系統(tǒng)的活動(dòng)狀態(tài),及時(shí)收集和過濾信息安全相關(guān)事件,并轉(zhuǎn)發(fā)到不同的處理端。
2.4 Firewall
Firewall在R23-11首次被提出,它主要通過檢測(cè)網(wǎng)絡(luò)數(shù)據(jù)包并根據(jù)預(yù)定義的規(guī)則集對(duì)其進(jìn)行過濾,從而保護(hù)AUTOSAR堆棧免受惡意消息的攻擊。 可以看到,該模塊其實(shí)與IdsM是一個(gè)互補(bǔ)的關(guān)系,雖然汽車MCU的性能逐步提升和電子電氣架構(gòu)的演進(jìn),車載以太網(wǎng)是一個(gè)趨勢(shì),因此借鑒其他行業(yè)成熟方案可以提高整車的網(wǎng)絡(luò)安全。 在R22-11AUTOSAR_FO_RS_Firewall 中,提出了域控架構(gòu)的防火墻部署場(chǎng)景,如下:
并且提出了IDS體系和防火墻之前的關(guān)系,防火墻可以作為IdsM的Sensor傳輸安全事件(SEv):
而在CP AUTOSRA視角下, Firewall是處在EthIf和IdsM之間
Firewall在EthIf層對(duì)以太網(wǎng)報(bào)文進(jìn)行檢測(cè)和過濾
Firewall在遇到阻塞網(wǎng)絡(luò)幀后會(huì)向IdsM發(fā)送安全事件
Firewall狀態(tài)受BswM管理
3.小結(jié)
從上面幾個(gè)機(jī)制可以看到,網(wǎng)絡(luò)安全正逐步受到各大汽車組織、OEM和供應(yīng)商的重視; 而這些機(jī)制關(guān)聯(lián)的模塊和開發(fā)內(nèi)容對(duì)于汽車人來說是全新且有難度的, 從Crypto Stack的構(gòu)建,再到HSM信息安全固件解決方案的開發(fā),最后如何適配上述機(jī)制以構(gòu)建整車的網(wǎng)絡(luò)安全體系,這無疑是需要大量網(wǎng)絡(luò)安全人才的寶貴經(jīng)驗(yàn)。 果然,工作就是不停地打怪升級(jí),難度極大,而所謂舒適區(qū)是需要自己內(nèi)心來把控。
審核編輯:黃飛
-
數(shù)據(jù)傳輸
+關(guān)注
關(guān)注
9文章
1880瀏覽量
64554 -
CAN
+關(guān)注
關(guān)注
57文章
2744瀏覽量
463612 -
防火墻
+關(guān)注
關(guān)注
0文章
417瀏覽量
35608 -
AUTOSAR
+關(guān)注
關(guān)注
10文章
360瀏覽量
21552 -
ecu
+關(guān)注
關(guān)注
14文章
886瀏覽量
54482
原文標(biāo)題:CP AUTOSAR的信息安全機(jī)制匯總
文章出處:【微信號(hào):eng2mot,微信公眾號(hào):汽車ECU開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論