在汽車電子系統(tǒng)發(fā)展的早期,汽車電子基礎(chǔ)軟件是沒有統(tǒng)一標(biāo)準(zhǔn)的,各個(gè) OEM、Tier1、Tier2 等廠商針對(duì)不同領(lǐng)域的不同型號(hào) ECU 開發(fā)不同的軟件,開發(fā)工作量大、成本高。一些問題逐漸顯露出來(lái),如由于實(shí)時(shí)操作系統(tǒng)的應(yīng)用程序接口不同而導(dǎo)致的應(yīng)用程序移植性差等。隨著汽車電子技術(shù)的不斷發(fā)展,1993 年德國(guó)汽車工業(yè)界提出了 OSEK 汽車電子開放式系統(tǒng)及其接口的體系,這是汽車電子基礎(chǔ)軟件最初的行業(yè)標(biāo)準(zhǔn),解決了應(yīng)用軟件移植和重用的問題。但隨著汽車智能網(wǎng)聯(lián)化的飛速發(fā)展,傳統(tǒng)的汽車電子架構(gòu)已經(jīng)不能滿足整車的業(yè)務(wù)需要,汽車電子架構(gòu)正朝著由封閉到開放、由分布式到集中式,軟件定義汽車、面向服務(wù)的軟件架構(gòu)的出現(xiàn),都對(duì)汽車電子基礎(chǔ)軟件的發(fā)展提出了新的挑戰(zhàn)。同時(shí),汽車智能網(wǎng)聯(lián)化伴隨來(lái)的還有信息安全問題,不論是驅(qū)動(dòng)、OS 或是中間件,一旦遭受到信息安全攻擊,將不能安全穩(wěn)定地為汽車服務(wù)提供支撐,那么汽車會(huì)處于未知的風(fēng)險(xiǎn)中,不但影響駕駛體驗(yàn),甚至可能威脅生命。因此,一些基礎(chǔ)軟件相關(guān)信息安全標(biāo)準(zhǔn)應(yīng)運(yùn)而生。
2016 年,美國(guó)汽車工程師學(xué)會(huì)(SAE)發(fā)布了 SAE J3061 (Cybersecurity Guidebook for Cyber-Physical Vehicle Systems),其提供了車輛網(wǎng)絡(luò)安全的流程框架和指導(dǎo),考慮了車輛的整個(gè)生命周期,從概念到生產(chǎn)、運(yùn)行、維護(hù)和報(bào)廢。旨在幫助企業(yè)識(shí)別和評(píng)估網(wǎng)絡(luò)安全威脅,導(dǎo)入網(wǎng)絡(luò)安全到車輛的整個(gè)開發(fā)流程內(nèi)。
2021 年 8 月,國(guó)際標(biāo)準(zhǔn)化組織(ISO)和 SAE 聯(lián)合起草發(fā)布了 ISO/SAE 21434 《道路車輛信息安全工程》(Road vehicles - Cybersecurity engineering),ISO 21434 是基于 SAE J3061 制定的,針對(duì)車輛整個(gè)生命周期的標(biāo)準(zhǔn)。其主要從風(fēng)險(xiǎn)評(píng)估管理、產(chǎn)品開發(fā)、運(yùn)行維護(hù)、流程審核等四個(gè)方面來(lái)保障汽車信息安全工程工作的開展。目的是通過(guò)該標(biāo)準(zhǔn)設(shè)計(jì)、生產(chǎn)、測(cè)試的產(chǎn)品具備一定信息安全防護(hù)能力。從組織 / 企業(yè)級(jí)、項(xiàng)目級(jí)、分布式開發(fā)、持續(xù)網(wǎng)絡(luò)安全管理、概念階段、產(chǎn)品開發(fā)階段、后開發(fā)階段等明確了關(guān)于流程要求、人員職責(zé)分配要求等。提供了威脅分析與風(fēng)險(xiǎn)評(píng)估(TARA)統(tǒng)一的方法論,便于在產(chǎn)品開發(fā)過(guò)程中進(jìn)行漏洞的分析、定級(jí)以及安全目標(biāo)的制定。該標(biāo)準(zhǔn)對(duì)汽車軟件開發(fā)的信息安全過(guò)程提出了要求,相關(guān)要求適用于汽車基礎(chǔ)軟件。
2003 年 7 月,AUTOSAR(AUTomotive Open System ARchitecture)組織建立,旨在為汽車電氣/ 電子構(gòu)架開發(fā)一套開放的行業(yè)標(biāo)準(zhǔn)。AUTOSAR 核心成員主要由寶馬、博世、大陸、戴姆勒、福特、通用、標(biāo)致、豐田、大眾這 9 家世界頂級(jí)主機(jī)廠和供應(yīng)商組成,目前在全球范圍內(nèi)已發(fā)展成為包含 220+ 家合作伙伴,覆蓋整車 OEM 廠商、零部件供應(yīng)商、軟件供應(yīng)商、芯片和硬件供應(yīng)商、測(cè)評(píng)服務(wù)等汽車產(chǎn)業(yè)鏈相關(guān)企業(yè)和機(jī)構(gòu)的國(guó)際化組織。
AUTOSAR 平臺(tái)是目前國(guó)際上廣泛認(rèn)可的汽車電子系統(tǒng)基礎(chǔ)軟件平臺(tái)(包括汽車操作系統(tǒng)),在發(fā)布4.2.2 版本后,AUTOSAR 的標(biāo)準(zhǔn)體系分為基礎(chǔ)標(biāo)準(zhǔn)(Foundation)、經(jīng)典平臺(tái)(classic platform)、自適應(yīng)平臺(tái)(adaptive platform)和符合性測(cè)試(Acceptance Tests)等 4 個(gè)部分。在 AUTOSAR 經(jīng)典平臺(tái)中,以硬件安全模塊(HSM , Hardware Security Module)為基礎(chǔ),提供了密碼服務(wù)方面的層次架構(gòu),使得AUTOSAR 經(jīng)典平臺(tái)的服務(wù)分為四個(gè)方面:系統(tǒng)、存儲(chǔ)、密碼和通信。基于密碼服務(wù),AUTOSAR 經(jīng)典平臺(tái)提供了安全通信組件 SecOC(Secure Onboard Communication),為車內(nèi)網(wǎng)絡(luò) ECU 之間的通信提供了真實(shí)性、完整性方面的保護(hù)能力。此外,為了保證對(duì)信息安全持續(xù)監(jiān)控的實(shí)現(xiàn),AUTOSAR 從基礎(chǔ)軟件角度提供了 IDS(Intrusion Detection System,入侵檢測(cè)系統(tǒng) )。
在目前常見的 4.4.0 版本中針對(duì)信息安全做出了以下改進(jìn):
- 安全事件內(nèi)存(Security Event Memory)
- 密鑰管理 / 密鑰分發(fā)(Key Management / Key Distribution)
- 認(rèn)證同步的時(shí)間(Authentic Synchronized Time)
- 針對(duì)診斷訪問的動(dòng)態(tài)權(quán)限管理(Dynamic Rights Management for Diagnostic Access)
-
改進(jìn)的證書處理(Improved Certificate Handling)
另外,針對(duì) V2X 的通信安全,AUTOSAR 標(biāo)準(zhǔn)也提出了一系列的信息安全要求,包括消息簽名的加密驗(yàn)證、端到端安全、證書管理、應(yīng)用程序安全相關(guān)機(jī)制等。
嵌入式系統(tǒng)常用的 C 語(yǔ)言是一種 “不安全” 的語(yǔ)言,例如 C 語(yǔ)言的指針很容易導(dǎo)致堆棧溢出、內(nèi)存泄漏等各種問題。規(guī)范代碼的格式是有效解決辦法之一,即不要使用比較容易出錯(cuò)的代碼格式。
1998 年,汽車產(chǎn)業(yè)軟件可靠性協(xié)會(huì)(MISRA)針對(duì) C 語(yǔ)言易出錯(cuò)的特性,提出了 C 語(yǔ)言的編碼規(guī)范 MISRAC;旨在提高關(guān)鍵應(yīng)用程序中 C 代碼的可靠性,重點(diǎn)是避免容易出錯(cuò)的功能,而不是強(qiáng)制執(zhí)行特定的編程風(fēng)格。MISRAC 最初就應(yīng)用于汽車行業(yè),后經(jīng)過(guò)兩次修訂。當(dāng)前版本是 MISRA C:2012,在此版本的 Amendment 1 中,提供了針對(duì)信息安全的代碼規(guī)范。
隨著汽車為了提供更多更強(qiáng)大的功能,車載嵌入式軟件和物聯(lián)網(wǎng)設(shè)備越來(lái)越多,更多的代碼連接到Internet。研究表明,汽車上已包含超過(guò) 1 億行代碼,對(duì)于如此大型,復(fù)雜的系統(tǒng),我們必須開始認(rèn)真對(duì)待軟件安全性。嵌入式軟件中的安全漏洞增加了惡意行為者攻擊的機(jī)會(huì),這些攻擊會(huì)注入惡意軟件、竊取信息或執(zhí)行其他未經(jīng)授權(quán)的任務(wù)。
2008 年 10 月,美國(guó)軟件工程學(xué)院(SEI)提出了 CERT C 編程語(yǔ)言安全編碼規(guī)范,其目的是通過(guò)避免對(duì)安全性問題更敏感的編碼結(jié)構(gòu)來(lái)開發(fā)符合功能安全、信息安全的可靠的系統(tǒng)。它更加關(guān)注安全的編碼實(shí)踐,而不僅僅是癥狀(例如,始終驗(yàn)證輸入是一種安全的編碼實(shí)踐,而 SQL 注入是一種癥狀)。CERT 分析了哪些準(zhǔn)則最為關(guān)鍵,可以對(duì)其進(jìn)行認(rèn)真分析,然后分為應(yīng)遵循的 “規(guī)則” 和不太重要或缺乏聲音分析能力的 “建議” 。這有助于快速將靜態(tài)分析結(jié)果調(diào)整到最關(guān)鍵的水平。安全編碼實(shí)踐更大程度地消除了這些漏洞,減少了 “惡意軟件” 、“竊取信息” 或 “執(zhí)行其它未經(jīng)授權(quán)的任務(wù)” 等攻擊行為的攻擊面,減小了惡意行為者攻擊的機(jī)會(huì)。
CERT 提供了較為全面的安全措施,如敏感信息的保護(hù)、注入或劫持的預(yù)防等等是值得所有開發(fā)人員學(xué)習(xí)的。但 CERT 更專注于安全問題,適合與其他規(guī)范配合使用。
AutoMat Common Vehicle Information Model:歐盟于 2018 年 3 月發(fā)布了其 AutoMat 項(xiàng)目所研究的通用車輛信息模型(CVIM:Common Vehicle Information Model),即開放和品牌獨(dú)立的車輛大數(shù)據(jù)模型。針對(duì)大量持續(xù)收集的汽車數(shù)據(jù),AutoMat 項(xiàng)目的核心意圖是利用目前從聯(lián)網(wǎng)汽車收集的未使用信息,為汽車大數(shù)據(jù)創(chuàng)新一個(gè)開放的生態(tài)系統(tǒng),以跨境汽車大數(shù)據(jù)市場(chǎng)的形式實(shí)現(xiàn)。與市場(chǎng)的接口來(lái)自一個(gè)通用車輛信息模型 (CVIM),該模型使跨行業(yè)服務(wù)提供商可以訪問來(lái)自各個(gè) OEM 廠商挖掘的匿名車輛數(shù)據(jù)。隨著來(lái)自汽車的大量易失性數(shù)據(jù),AutoMat 生態(tài)系統(tǒng)極大地建立在當(dāng)前大數(shù)據(jù)趨勢(shì)的基礎(chǔ)上。該規(guī)范提供了模型的架構(gòu)、概念和方法、信號(hào)層規(guī)范、測(cè)量層規(guī)范、數(shù)據(jù)層規(guī)范。
NISTSP800是美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院NIST(NationalInstituteofStandardsandTechnolgy)發(fā)布的一系列關(guān)于信息安全的指南,已成為美國(guó)和國(guó)際安全界廣泛認(rèn)可的事實(shí)標(biāo)準(zhǔn)和權(quán)威指南。例如,NIST SP 800-131A 定義了有效的密碼算法,以及需要的密碼算法參數(shù)值以能夠在特定的時(shí)間段內(nèi)實(shí)現(xiàn)特定的安全強(qiáng)度。
2002 年 12 月,NIST 發(fā) 布 了 FIPS Publication 140-2(Federal Information Processing Standards 140),該標(biāo)準(zhǔn)是針對(duì)密碼模塊的安全需求,為密碼模塊評(píng)測(cè)、驗(yàn)證和最終認(rèn)證提供基礎(chǔ),作為聯(lián)邦
信息處理標(biāo)準(zhǔn)在政府機(jī)構(gòu)廣泛采用。
本文整理自中國(guó)汽車基礎(chǔ)軟件信息安全研究報(bào)告
轉(zhuǎn)自汽車ECU開發(fā)