ECU CAN匯流排 訊息驗證碼 BMS 硬體安全模組 安全元件

外置硬體模組媲美安全MCU 車載系統防駭要求滴水不漏

2023-02-07
一般而言汽車安全在半導體產業,通常被認為一定是跟汽車警報器和遙控鑰匙有關。儘管汽車竊盜仍是一個普遍的問題,但與內部電子控制單元(ECU)及其車內外通訊相關的安全威脅明顯更大。

在2022年銷售的所有新車中,大約有50%的車輛支援聯網功能,很多人估計到2030年,這一數字將達到95%左右。這些連接透過Bluetooth、USB、LTE、5G和Wi-Fi等無線傳輸技術,可為消費者提供諸多便利,但由於受攻擊面顯著增加,駭客也同樣感到興奮。在Google上快速搜尋駭客攻擊汽車的主題,將搜尋到無數個實際安全性漏洞,這些漏洞會導致成本高昂的召回、訴訟,並導致品牌聲譽受損。不爭的事實是,軟體容易出現漏洞,而這些漏洞會被駭客利用。雖然可以透過很多做法盡可能地減少漏洞並在發現漏洞後迅速採取補救措施;但是,只要人們持續編寫新程式碼,就會產生新的漏洞。

入侵汽車的控制器區域網路(CAN匯流排)是駭客的共同目標。在之前的一些駭客攻擊中,駭客能夠先後利用藍牙及汽車作業系統中的漏洞,透過CAN匯流排遠端篡改訊息。現代汽車可能擁有多達100個ECU(Eletronic Control Unit),其中很多安全關鍵型ECU透過匯流排通訊。CAN匯流排具有諸多優點,它使用一種低成本、極其穩健且相對不易受到電子干擾的簡單協定,因此是安全關鍵型節點彼此通訊的可靠選擇。

缺點在於,數十年來,這項協定一直沒有任何安全措施,這意味著駭客一旦成功入侵,便能發送偽造的訊息,導致車載通訊遭到嚴重破壞。例如,開/關雨刷、關閉頭燈、透過操縱音訊分散司機注意力、生成虛假儀表板警報、顯示錯誤的速度、移動座椅甚至將車駛離道路。好消息是,隨著CAN FD的出現,訊息有效負載中預留了額外的位元組來儲存訊息驗證碼(Message Authentication Code, MAC),可用於以加密方式驗證訊息的真實性,過濾掉所有偽造的訊息,進而提高安全性。技術上有兩種MAC可供選擇:基於雜湊演算法的HMAC或基於AES對稱金鑰區塊編碼器的CMAC。而現實中絕大多數情況下採用的都是CMAC技術。

強化安全啟動 更新網路安全規範

OEM一直忙於因應已發生過的駭客攻擊更新其網路安全規範。幾乎所有OEM都要求要升級安全關鍵型ECU來滿足其全新網路安全要求,更有一些OEM要求全部聯網ECU都要升級。最基本的安全措施,用於實現涉及加密驗證的安全啟動,主機控制器上運行的啟動和應用程式碼保持不變,在Power On和Reset時處於可信狀態,並且通常在啟動後按照規定的頻率重複執行。其次的安全要求是支援安全韌體更新。回顧一下,所有軟體都會產生漏洞;因此,通常需要產生可現場進行的韌體漏洞補丁。

完整的車聯網安全防護,需透過多重防護才得以逐步完善
資料來源:Continental

此外,這些韌體更新還需要加密安全來把關,它們通常需要使用對稱(AES)金鑰對傳入韌體有效負載進行加密並使用非對稱私密金鑰對其進行簽名,最常見的私密金鑰是橢圓曲線加密(ECC)。這樣一來,向主機控制器提供升級映像檔(Image)時,在透過控制器中嵌入的ECC公開金鑰驗證有效負載的簽名前,不會執行任何操作。完成簽名驗證後,才可解密映像檔,讓控制器韌體透過漏洞補丁或功能增強進行升級。安全演進的第三層措施則是上述所提的訊息驗證。

電動車電池驗證需求增加

電動車領域的獨特之處在於對電池驗證的需求不斷增加。大多數電池組都在較大的電池組內部設計了可更換的電池模組,因此當其中一個模組發生故障時,只需更換該故障模組,無需更換整個電池組或處理效能不佳的電池組。設計不佳的模組可能成為安全隱患,導致車輛起火;因此,OEM必須加強生態系統管理,這意味著每個模組都必須以加密方式進行驗證,確保模組製造經審查通過OEM認證,之後模組才能在電池組中正常工作。不引發火災但效能欠佳的模組會損害OEM品牌聲譽,引發負面新聞和收入損失。這是對模組製造商的來源進行加密驗證的另一個原因。

對一個模組進行加密驗證意味著什麼?加密驗證是透過設置客戶特定的簽名密鑰來實現,該簽名密鑰用於為設備提供客戶特定的X.509憑證鏈和基於唯一ECC密鑰對的唯一設備等級憑證。配置好的設備安裝在每個電池模組上。當更換電池組中的電池模組時,電池管理系統(BMS)將向模組查詢其唯一的X.509證書,並驗證簽名鏈直至可信根。完成簽名驗證後,系統會向要使用相關私鑰簽名的模組提出質詢,證明其知道密鑰,而無需在匯流排上傳輸(或某些情況下透過RF傳輸),模組層級的案例到此為止。在BMS內,OEM通常需要更複雜的案例。由於BMS/閘道是連通外界、向雲端提供例行電池健康狀態報告的通訊,因此安全案例擴展為包含安全啟動、安全韌體更新和傳輸層安全(TLS),以便與雲端建立安全的通訊通道。

有效專屬安全元件需承受長時間攻擊

此處探討的所有安全功能都需要安全的金鑰儲存,而此類儲存只能透過真正的硬體安全來實現。透過微型探測、故障注入(Fault Injection)、電磁旁路攻擊、溫度/迴圈上電(Power Cycling )/電源故障(Supply Glitching)和時序攻擊(Timing Attacks)等執行一些標準攻擊,即可從標準微控制器,甚至許多所謂的安全微控制器中提取金鑰。因此,選擇合適的元件來執行加密重任,防止金鑰遭受此類攻擊至關重要。

專屬安全元件有各種架構和名稱,例如內建和外部硬體安全模組(HSM)、安全元件、安全儲存子系統、金鑰庫和智慧卡等。這些元件必須包含針對上述攻擊的防篡改功能以保護其安全記憶體中的金鑰。

但是,一級(Tier 1)供應商或OEM如何驗證採行的安全功能確實足夠?安全元件供應商證明其安全價值的最佳方法是將元件提交給協力廠商進行弱點評估(Vulnerability Assessment)。協力廠商應獲得北美認可的美國國家標準及技術研究所(NIST)、德國認可的聯邦資訊安全局(BSI)或全球認可的資訊系統安全高級官方合作組織(SOGIS)等可信機構的認證。SOGIS認可的實驗室採用全球公認的聯合解析庫(JIL)弱點評分系統,這套系統需要白盒(White Box)評估,即提交IC的供應商必須提供有關元件設計資料流程、子系統和記憶體映射定義、硬體和韌體啟動序列、安全保護機制說明、完整資料手冊、安全和開機載入器(Bootloader)的說明文件、所有可用程式碼(RTL和C level、加密函式庫和韌體)、演算法實現、程式設計腳本、通訊協定、晶片布局及原始程式碼的實驗室文件。

實驗室隨後將查看所有文件,制訂針對所提交樣本的攻擊計畫。評分系統根據提取機密資訊金鑰花費的時間、所需的專業知識水準(從入門到專家等級)、對評估物件(TOE)的瞭解、對TOE的存取(執行一次成功攻擊需要的樣本數)、駭客攻擊設備的複雜程度和成本以及存取樣本的難易程度進行評分。得到的JIL評分依次為無評級(No Rating)、基本(Basic)、增強基本(Enhanced Basic)、中等(Moderate)和高(High),其中高評級是能夠實現的最高評分。JIL高評級以下的所有等級表示實驗室能夠從元件成功提取私密金鑰。獲得JIL高評級的Microchip CryptoAutomotive TrustAnchor100(TA100)外部HSM等元件能夠承受超過三個月的攻擊,達到這一時間後,實驗室將宣布元件遭到的攻擊無效。

安全MCU挑選有眉角

整合式(On Die)還是外部獨立式(Off Die),這是個問題。透過32位元雙核心MCU等整合式解決方案,來升級前一代ECU的成本高昂,而在OEM要求實現真正的安全之前,標準MCU即可完全滿足前一代ECU的要求。如果要求完全重新構建應用程式碼,這些整合式解決方案還會明顯耽誤上市時間。內部開發安全程式碼需要承擔極高的風險,而交給協力廠商處理則要支付高昂的費用。

此外,一級供應商也很難將此類解決方案大量應用於多種類型的ECU,因為每種類型都有不同的性能和周邊要求。在這種背景下,外部HMS或配套安全元件能夠幫助一級供應商大幅減輕安全升級負擔。它們可以添加到現有設計中的標準MCU旁邊,也可以整合到具有不同主機MCU要求的所有新設計中。 TA100等外部HSM預先配置了全部安全程式碼、金鑰和證書,可縮短上市時間。給定與MCU無關的相關加密函式庫後,便可移植到任何MCU。外部HSM可降低風險、縮短上市時間及降低總成本,為一級供應商提供了一條領先於完全重構方案的競爭對手、獲得商業成功的捷徑。

由於當今很多車輛支援聯網功能且車載網路通訊量很大,因此對車輛安全的需求明顯遠超車輛警報應用。由於安全和品牌聲譽不容有失,因此在升級ECU時,需選擇經過協力廠商審查的真正安全元件,以滿足眾多全新OEM網路安全規範、SAE、ISO標準和各國政府的安全要求。

(本文作者任職於Microchip Technology安全產品行銷部)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!