基于ISO 21434的汽車網絡安全實踐

創提信息
2023/04/25

分享到

“轉載自維克多汽車技術(上海)有限公司,作者Vector China”


商業領域的IT系統和嵌入式産品的IT系統正在融合爲一種(zhǒng)多功能(néng)系統。相應地,關注汽車網絡安全的ISO 21434标準應運而生。該标準的意義在于提供了一個指南,可用于降低産品、項目和組織中存在的安全風險。爲了有效實施ISO 21434标準,本文介紹了遵循ISO 21434的系統級安全工程實踐方法,并通過(guò)實例進(jìn)行分析。


汽車網絡安全風險
 
汽車網絡領域的犯罪正在急劇增加。在過(guò)去幾年,網絡犯罪的投資回報發(fā)生了巨大變化。通過(guò)應用勒索軟件,如今的網絡犯罪比毒品交易更加有利可圖。據估計,網絡犯罪每年造成(chéng)的損失高達6000億美元,而毒品交易的同期金額是4000億美元[1]。由圖1可見,網絡攻擊幾乎呈現出指數增長(cháng)的趨勢[1]


基于ISO 21434的汽車網絡安全實踐-1 小.png


01 報告的針對(duì)車輛的嚴重網絡安全攻擊


網絡犯罪的影響是多方面(miàn)的,例如改變車輛功能(néng)導緻車輛意外行爲、操縱數據和軟件導緻故障,或通過(guò)DOS攻擊和勒索軟件破壞常規功能(néng)等。在上述所有網絡攻擊場景中,對(duì)于制造商發(fā)布的各種(zhǒng)組件,其質量不再能(néng)夠得到保證,而這(zhè)也意味著(zhe)車輛不應該繼續在道(dào)路上行駛,因爲車輛本身已成(chéng)爲安全風險。顯然,沒(méi)有網絡安全就(jiù)無法達到功能(néng)安全。爲應對(duì)汽車網絡安全的挑戰,主機廠和供應商必須對(duì)整車的電子電氣系統進(jìn)行有效保護。


以風險爲導向(xiàng)的網絡安全管理方法
 
面(miàn)向(xiàng)風險的網絡安全管理方法會(huì)將(jiāng)安全需求、設計決策以及測試聯系起(qǐ)來[1, 2, 3, 4]。爲實現安全性,在車輛開(kāi)發(fā)過(guò)程中需要考慮以下事(shì)項:
 
>  對(duì)于面(miàn)向(xiàng)完整開(kāi)發(fā)過(guò)程的系統級流程,需要流程模型來對(duì)其進(jìn)行标準化。這(zhè)一流程模型應當從需求分析開(kāi)始,覆蓋設計、開(kāi)發(fā)以及組件和網絡的測試環節。
 
>  通過(guò)快速的軟件更新來修複ECU軟件中的漏洞。
 
>  使用最先進(jìn)且滿足長(cháng)期安全需求的可靠協議。由于這(zhè)些協議通常要用到加密密鑰,因此,必須要實現覆蓋車輛全生命周期的密鑰管理。
 
>  車載網絡和系統架構必須具備靈活性和可擴展性,其在設計時(shí)應當充分考慮網絡安全問題。
 
以風險爲導向(xiàng)的網絡安全管理方法,有助于平衡日益嚴重的網絡安全威脅與産品在全生命周期中日益增加的複雜性。而在網絡安全的概念設計階段,要對(duì)遭受攻擊造成(chéng)損失所帶來的成(chéng)本與産品全生命周期進(jìn)行安全加固所産生的成(chéng)本進(jìn)行平衡。圖2顯示ISO 21434所要求的以風險爲導向(xiàng)的網絡安全方法。
 

基于ISO 21434的汽車網絡安全實踐-2 小.png

 
02 面(miàn)向(xiàng)風險的網絡安全分析流程


ISO 21434标準概括
 
在2021年發(fā)布之前的幾年,ISO 21434已經(jīng)成(chéng)爲汽車網絡安全領域的重要參考。由于傳統的信息安全标準主要關注管理和商業信息系統,對(duì)車輛場景下的安全問題指導意義有限。因此作爲ISO 21434标準的最初起(qǐ)草者之一,Vector Consulting長(cháng)期投入到ISO 21434标準的起(qǐ)草工作之中。
 
ISO 21434基于以風險爲導向(xiàng)的方法,明确區分了産品、項目和組織級别的措施,并與ISO 26262密切相關。與ISO 26262相比,ISO 21434更加抽象:既沒(méi)有規定任何具體的技術、解決方案或補救方法,也沒(méi)有對(duì)自動駕駛汽車或道(dào)路基礎設施提出獨特的要求。這(zhè)是爲了避免安全标準對(duì)産品造成(chéng)過(guò)度約束。另一方面(miàn),雖然ISO 21434涵蓋最先進(jìn)的網絡安全原則,但并沒(méi)有爲實施過(guò)程提供太多的指導。因此這(zhè)一标準將(jiāng)随著(zhe)時(shí)間的推移而不斷擴展。
 
ISO 21434問世後(hòu),人們常常難以分辨ISO 21434與SAE J3061的區别。事(shì)實上,幾年前SAE J3061曾被(bèi)作爲汽車網絡安全問題的短期修複方案。但由于多方面(miàn)的原因,ISO 21434在發(fā)布後(hòu)已直接取代SAE J3061。乍看之下,這(zhè)兩(liǎng)個标準的高層面(miàn)安全流程大體兼容。其中SAE J3061在附錄A中介紹了威脅和風險分析(TARA)的各種(zhǒng)方法。而ISO 21434提供了一個與功能(néng)安全解耦的網絡安全流程,它隻關注網絡安全。而且爲了提高效率和減少冗餘,ISO 21434引用了ISO 26262,并與之共享一些方法。總之,ISO 21434對(duì)網絡安全的工作産品、組織和方法(如TARA)的要求更爲精确。Vector Consulting的經(jīng)驗表明,如果已經(jīng)成(chéng)功應用了SAE J3061,那麼(me)可以很容易地切換到ISO 21434。
 
ISO 21434可用于構建網絡安全管理系統(UNECE R.155 CSMS),包括網絡安全風險管理和治理。其中,組織層面(miàn)的活動主要是建立所需的網絡安全管理條例,并在公司中灌輸網絡安全文化。這(zhè)還(hái)應包括在不同項目團隊之間建立信息共享系統,采購所需的新網絡安全工具并提供培訓。組織應重新評估現有的IT安全系統并計劃組織層面(miàn)的審計。
 
根據ISO 21434,要開(kāi)展項目層面(miàn)的活動,首先需要一個定義明确的管理系統,在項目中明确定義角色和職責。通過(guò)應用諸如Automotive SPICE(ASPICE)這(zhè)樣(yàng)的流程框架,可以滿足ISO 21434标準對(duì)于流程方面(miàn)的大部分要求。在實踐中,Vector Consulting在功能(néng)安全、網絡安全和ASPICE領域識别到了一些相似的弱點,比如項目團隊在需求工程、可追溯性、測試方法、項目管理和風險管理等方面(miàn)通常存在不足。
 
ISO 21434标準建議,在網絡安全規劃之初,就(jiù)應當清晰地定義相關角色和職責。同時(shí),ISO 21434還(hái)包含了使用複用組件,引入第三方組件,直接使用像開(kāi)源模塊這(zhè)樣(yàng)的非市場流通組件等的指南。最後(hòu),ISO 21434還(hái)提供了在項目層面(miàn)進(jìn)行網絡安全評估的相關信息。


基于ISO 21434的汽車網絡安全實踐-3 小.png

 
03 ISO/SAE 21434:2021結構(來源:ISO)


基于ISO 21434的安全工程實踐
 
本節通過(guò)一個簡化後(hòu)的ADAS客戶項目案例,展示如何在實踐中逐步應用ISO 21434。雖然示例經(jīng)過(guò)簡化,但意義在于介紹安全工程。


第1步:相關項定義
 
相關項定義不僅是确定元素邊界所必須的,而且一直都(dōu)是定義系統資産所需的重要參考。在該案例中,廣義的相關項就(jiù)是整個ADAS系統,其頂層網絡架構如圖4所示。


基于ISO 21434的汽車網絡安全實踐-4 小.png

 
04 ADAS網絡架構示例

 
簡單起(qǐ)見,假設所有通信都(dōu)通過(guò)CAN總線完成(chéng)。對(duì)于外部接口,要根據底層架構來識别。該系統可通過(guò)4G網絡與OEM雲基礎設施進(jìn)行通信,并擁有可連接到網關的OBD接口。


第2步:資産識别
 
下一步是識别并列出相關項中的所有資産。在選擇資産時(shí),要基于其價值或受到損害時(shí)的風險等,比如功能(néng)安全目标、财務風險、運營成(chéng)本和隐私等。以下是ADAS系統的資産示例:
 
>  A1:ADAS接收或發(fā)送的網絡報文
 
>  A2:ADAS軟件,包括安全機制
 
>  A3:安全密鑰
 
>  A4:駕駛曆史和記錄的數據


第3步:威脅分析和風險評估
 
基于已經(jīng)識别出的資産,下一步要進(jìn)行TARA分析。通過(guò)TARA可以系統性地分析在受到攻擊時(shí)威脅所帶來的影響程度,以及實現攻擊的難易程度。然後(hòu)結合影響等級和攻擊可行性等級,按照從1(非常低)到5(非常高)的尺度來劃定風險等級。之後(hòu),根據風險等級的高低來計劃和實施進(jìn)一步的風險應對(duì)措施。除此之外,ISO 21434還(hái)建議按照從CAL1(低)到 CAL4(高)的尺度,對(duì)每項資産劃定網絡安全保障級别(CAL)。
 
示例中,我們列出了一些針對(duì)已識别資産的攻擊,以及相應的威脅,資産和威脅都(dōu)各自有專屬ID。以下是一些攻擊路徑的示例:
 
>  A1-AT1:車輛制動相關報文被(bèi)阻塞;
 
>  安全機制(即手動接管期間無車道(dào)保持)遭到破壞,無法正常工作。
 
在此基礎上,可識别出相應的威脅,即:
 
>  A1-AT1-T1:盡管駕駛員踩下制動踏闆,但車輛不制動(危害:如果制動失效,可能(néng)引發(fā)事(shì)故并造成(chéng)傷害)
 
>  A2-AT1-T1:手動接管期間保持車道(dào)(危害:因接管失敗而造成(chéng)重傷)。
 
表1顯示了根據識别出的攻擊内容和威脅場景進(jìn)行評估所獲得的攻擊可行性等級和影響等級,進(jìn)而判定出風險級别和網絡安全保障級别(CAL)。


基于ISO 21434的汽車網絡安全實踐-5 小.jpg

 
表1 TARA分析示例


第4步:安全目标和安全要求
 
爲了降低風險,要根據風險可能(néng)造成(chéng)的影響來識别和評估安全目标。安全目标是高層面(miàn)的安全要求。從每個安全目标出發(fā),可以衍生出一個或多個功能(néng)級安全要求,而對(duì)于每個功能(néng)級安全要求,又可以衍生出一個或多個技術級安全要求。在這(zhè)個例子中:
 
>  安全目标:A1-AT1-T1-SG1:系統必須阻止對(duì)駕駛員輔助系統所發(fā)送消息的操縱行爲。
 
>  功能(néng)級安全要求:SG1-FSecR1:必須确保駕駛員輔助系統和傳感器之間通信的完整性。
 
>  技術級安全要求:SG1-FsecR1-TSecR1:MAC應由符合安全硬件擴展(SHE)的硬件信任錨(HTA)使用算法RSA2048計算獲得。SG1-FsecR1-TSecR2:MAC值應在x字節後(hòu)進(jìn)行截斷。


第5步:可追溯性
 
可追溯性有助于保持一緻性并降低責任風險。即使在發(fā)生變更,增量構建或持續構建的過(guò)程中,可追溯性對(duì)于确保覆蓋率和一緻性也是必不可少的。
 
圖5展示了將(jiāng)需求、設計和測試相關聯的一種(zhǒng)抽象模型。在應用該模型時(shí),設計者從負面(miàn)需求(即黑客的需求)開(kāi)始,提煉出解決方案以降低這(zhè)些攻擊的可行性,進(jìn)而确保從初始TARA分析結果和安全要求定義出發(fā)的追溯關系的完整性。


基于ISO 21434的汽車網絡安全實踐-6 小.png


05 網絡安全可追溯性


第6步:設計
 
由于在安全相關資産的TARA分析中發(fā)現了相應風險,因此ADAS系統需要在設計上進(jìn)行變更來應對(duì)這(zhè)一風險。根據安全目标SG1,系統必須具備識别和預防機制來避免攻擊者對(duì)網絡信号的操縱。通過(guò)落實功能(néng)級安全要求和技術級安全要求,可設計出相應的識别和預防機制。
 
在落實安全要求的過(guò)程中,硬件設計可能(néng)會(huì)相應地發(fā)生變更。在本文所研究的案例中,必須使用HTA。同時(shí),通過(guò)應用MISRA和CERT提供的指南進(jìn)行安全編碼,可以避免設計和代碼錯誤可能(néng)導緻的安全漏洞。應當始終牢記,大多數攻擊得逞的原因是設計不足,而非密碼學(xué)的限制。


第7步:集成(chéng)和驗證
 
該步驟的主要目的是驗證實施和集成(chéng)的安全機制是否滿足網絡安全目标和要求。爲實施這(zhè)一步驟,推薦以下具有相互依賴性的典型方法:
 
>  單元級驗證:靜态和動态代碼質量分析側重于MISRA和CERT等安全編碼指南以及單元級魯棒性。自動工具用于執行代碼質量分析(CQA)并生成(chéng)測試報告。
 
>  功能(néng)測試:基于需求的測試有助于識别系統設計和架構中的基本缺陷。在該案例中,對(duì)最初在相關項定義中描述的實際功能(néng)進(jìn)行了系統級别的測試,以确保功能(néng)表現不會(huì)因爲額外的安全措施而受到損害。
 
>  模糊測試:模糊測試用于測試超出預期範圍和邊界的各類車輛通信協議。
 
>  滲透測試:滲透測試是在組件和系統級别上獨立執行的測試策略。灰盒滲透測試[5]因其高效率和有效性,已被(bèi)證明能(néng)夠實現這(zhè)一策略。


第8步:開(kāi)發(fā)後(hòu)階段
 
在開(kāi)發(fā)階段,除了做好(hǎo)充分的測試,也必須爲開(kāi)發(fā)後(hòu)的活動做好(hǎo)相關準備。這(zhè)包括相關項的生産、運行、維護以及最終報廢。因此需要爲這(zhè)些活動預留預算、時(shí)間和能(néng)力儲備,比如緊急事(shì)件響應團隊、安全警報通知和軟件補丁交付等。該階段可分成(chéng)以下幾個環節:
 
>  生産:在相關項的制造和組裝過(guò)程中,必須遵循一些網絡安全要求。例如,在這(zhè)個案例中,對(duì)于在下線階段向(xiàng)HTA的内存中注入供應商或OEM關鍵材料的過(guò)程,應當進(jìn)行充分的計劃和處理。
 
>  運營和維護:作爲持續網絡安全活動的一部分,每個組織都(dōu)需要維護一個獨立的項目監控團隊。當網絡安全事(shì)件觸發(fā)時(shí),運營團隊必須按照預先定義和商定的網絡安全事(shì)件響應計劃來進(jìn)行事(shì)件響應。
 
>  報廢:報廢過(guò)程與網絡安全密切相關,因爲相關項可能(néng)包含需要安全處置的信息。


結論
 
随著(zhe)車輛信息系統與企業信息系統在開(kāi)發(fā)、生産及運營階段的融合,汽車網絡安全相關問題日益顯著[1, 2, 3, 4]。由于汽車網絡安全是功能(néng)安全的先決條件,因此必須全面(miàn)而系統地應對(duì)網絡安全問題。ISO 21434爲汽車網絡安全提供了一個框架,但它還(hái)不是指南,不能(néng)直接用于定義開(kāi)發(fā)過(guò)程。因此,在應用ISO 21434時(shí)需要強有力的指導來有效且高效地進(jìn)行實施。對(duì)未來需要在法律訴訟中證明安全措施有效性的場景,尤其如此。
 
網絡安全不僅僅是一個安全團隊的職責,更是每個工程師的責任。網絡安全需要一個整體方法去應對(duì),即以系統工程的方式深化落實,并在整個産品生命周期中建立完整的追溯關系。