0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

汽車芯片信息安全的必要性

璟琰乀 ? 來(lái)源:青驥信息安全 ? 作者:青驥信息安全 ? 2020-12-18 18:18 ? 次閱讀

1. 背景簡(jiǎn)介

汽車芯片信息安全的必要性

1. 早期由于ECU本身設(shè)計(jì)的資源有限,信息安全考慮的也比較少,導(dǎo)致自身的防護(hù)能力很弱,容易導(dǎo)致黑客攻擊。隨著智能車技術(shù)的發(fā)展,雖然芯片的數(shù)據(jù)處理能力不斷提升,如果芯片自身的安全防護(hù)能力過于薄弱,將導(dǎo)致芯片運(yùn)行的固件也很容易受到攻擊,比如固件篡改,敏感信息(如密鑰等)泄露。

2. 隨著智能車技術(shù)的不斷發(fā)展,越來(lái)越多的政府,行業(yè)組織的最佳實(shí)踐也明確提出智能車的安全需要構(gòu)建在安全的芯片基礎(chǔ)上,比如EVITA、GSMA關(guān)于汽車安全的要求,HSM已成為智能車的安全基礎(chǔ),成為行業(yè)默認(rèn)的標(biāo)準(zhǔn)。

3. 智能車功能安全(Safety)和信息安全(Security)在設(shè)計(jì)階段也有沖突的地方,比如過度基于軟件實(shí)現(xiàn)的安全特性,會(huì)導(dǎo)致控制指令的延時(shí),影響功能安全特性的實(shí)現(xiàn)。因此為了提升產(chǎn)品的性能,以及Safety和Secuirty的強(qiáng)隔離,也必然會(huì)要求將更多的信息安全特性集成到芯片里,或者基于芯片的能力來(lái)實(shí)現(xiàn)。

2. 芯片安全知識(shí)圖譜

芯片安全圖譜的兩個(gè)維度:

1. 一個(gè)維度是芯片自身的安全防護(hù)能力,比如能抵抗物理侵入式、半侵入式物理攻擊;能檢測(cè)和防御故障注入攻擊;以及耳濡目染的側(cè)信道攻擊。這就像是一輛坦克自身厚重的鋼板,能抵擋普通子彈和炸彈的攻擊。物理攻擊需要較強(qiáng)的專業(yè)能力,比如借助專用的測(cè)試儀器,以及可以近距離接觸的物理設(shè)備。

2. 另外一個(gè)維度是基于芯片的安全服務(wù),比如芯片直接固化的密碼類算法,密鑰管理機(jī)制,真隨機(jī)數(shù)生成器,PUF等機(jī)制。

汽車芯片信息安全知識(shí)圖譜V1.0

3. 常見的芯片攻擊手段

3.1 側(cè)信道攻擊

a)概念:利用設(shè)備的接口對(duì)芯片進(jìn)行電磁和功耗的分析,無(wú)需對(duì)芯片進(jìn)行破壞

b)常見測(cè)評(píng)、攻擊類型:時(shí)間分析、功耗分析,電磁輻射分析,光子分析

c)適用對(duì)象:集成電路/芯片、智能卡、智能門鎖、物聯(lián)網(wǎng)終端、車載電子等產(chǎn)品

d)防護(hù)原理:消除和降低側(cè)信道信息與密鑰的相關(guān)性,常用手段:

- 掩碼技術(shù):引入隨機(jī)掩碼,平衡“0”和“1”分布。

- 隱藏技術(shù):平均化側(cè)信道信息,降低數(shù)據(jù)的可區(qū)分度

- 混淆技術(shù):降低信噪比(有效側(cè)信道信息)如使用隨機(jī)時(shí)鐘等,增加側(cè)信道分析難度。

3.2 故障注入攻擊

利用故障(電壓、時(shí)鐘等)引起電路出現(xiàn)異常,根據(jù)異常信息分析芯片內(nèi)部的敏感信息;或者直接利用引起電路的異常來(lái)改變程序運(yùn)行等。

常用測(cè)評(píng)/攻擊類型:電壓注入、時(shí)鐘注入、電磁注入、溫度注入,激光注入。

案例:故障注入攻擊導(dǎo)致安全啟動(dòng)被成功繞開

(參考Source:樂鑫發(fā)布關(guān)于故障注入和安全啟動(dòng)的安全性公告 (CVE-2019-15894))

故障注入攻擊的防護(hù)技術(shù):

- 傳感器:專用傳感器(電壓、頻率、溫度等)對(duì)電壓、時(shí)鐘故障可以起到檢測(cè)和告警作用

- 邏輯&時(shí)鐘冗余:邏輯冗余分為面積冗余和時(shí)間冗余。面積冗余是指多分計(jì)算邏輯各計(jì)算一次,最終對(duì)比各個(gè)計(jì)算邏輯的結(jié)果來(lái)檢查是否有故障注入;時(shí)間冗余是指一份計(jì)算邏輯計(jì)算多次,比較多次的結(jié)果來(lái)檢查是否有故障注入。

- 金屬外殼&特殊封裝:通過金屬外殼,可以對(duì)激光故障注入,電磁故障注入等手段具有一定的抑制作用

- 邏輯深埋:將關(guān)鍵電路邏輯部署在芯片內(nèi)層,而不是直接部署在芯片表層,使得故障注入的難度增加

- CRC校驗(yàn)

3.3 物理攻擊

a)概念:去除芯片封裝,對(duì)內(nèi)部電路進(jìn)行電接觸,結(jié)合其他攻擊手段獲取保存在芯片內(nèi)部的敏感信息

b)常見攻擊類型:FIB電路修改/探針攻擊、單板級(jí)走線篡改/探聽、整機(jī)攻擊。

c)防護(hù)技術(shù):

- Passive shield:被動(dòng)屏蔽層,例如在芯片表面構(gòu)建鈍化層,金屬屏蔽層,增加攻擊者解封裝難度

- Active shield:主動(dòng)屏蔽層構(gòu)建一個(gè)電路檢測(cè)網(wǎng),覆蓋在關(guān)鍵電路表面檢測(cè)電路一旦有損壞,就會(huì)發(fā)出告警

- 特殊封裝:對(duì)電路(芯片)采用特殊封裝

- 信號(hào)完整性、機(jī)密性保護(hù)等: 針對(duì)單板走線篡改&竊聽總線探針竊聽&篡改等,通過對(duì)信號(hào)完整性和機(jī)密性進(jìn)行保護(hù)來(lái)應(yīng)對(duì)此類攻擊

4. 驗(yàn)證輔助的安全特性

1. Hardware Trust Anchor(HTA)

- 以軟件無(wú)法操作的方式保護(hù)敏感數(shù)據(jù)

- 提供加解密功能

2. HTA不同標(biāo)準(zhǔn):

- SHE

- HSM

- TPM

3. Evita Full-Medium-Light與SHE差異

以下為詳細(xì)的案例介紹。

4.1 NXP高級(jí)加解密引擎

(1)架構(gòu)與功能描述:

YBRBve.png

(2)核心能力:

1) 滿足HSM Full等級(jí);

2) 芯片內(nèi)支持4個(gè)并發(fā)加解密任務(wù)(job),每個(gè)任務(wù)帶有資源ID、TZ(Trustzone標(biāo)記)和任務(wù)ID,并能和Trustzone機(jī)制配合使用,具有很強(qiáng)的權(quán)限控制能力。

4.2 專用算法密碼引擎

(1)NXP針對(duì)Flash讀寫直接加解密引擎-Bus Encryption Engine, BEE

2aYzmy.png

BEE 邏輯架構(gòu)圖

總線加密引擎(BEE)被實(shí)現(xiàn)為實(shí)時(shí)解密引擎,用于CPU直接讀取并同時(shí)解密Flash(FlexSPI接口)中的數(shù)據(jù)。BEE的主要功能是:

- 即時(shí)AES-128解密,支持ECB和CTR模式

- 別名內(nèi)存空間支持。重新映射最多兩個(gè)單獨(dú)的區(qū)域

- 針對(duì)這兩個(gè)區(qū)域的獨(dú)立AES密鑰管理

- 基于安全標(biāo)簽的非安全訪問的過濾

- 非法訪問檢查和過濾

(2)NXP 針對(duì)RAM在線加解密引擎-Inline Encryption Engine

支持的功能:

- AES-XTS模式下的DDR加密和解密

- QSPI閃存解密,在AES-CTR模式下

- /O DMA直接加密的存儲(chǔ)和檢索(AES CTR 128)

- 多核資源域分離

- 使用專用總線安全地加載片上密鑰

- 差分功率分析(DPA)電阻

- 檢測(cè)物理篡改并響應(yīng)

4.3 小結(jié)

1. SHE規(guī)范奠定了汽車安全基礎(chǔ),引入了汽車可配置的安全子系統(tǒng)概念

2. EVITA的HSM規(guī)范擴(kuò)展了SHE,并采用了Full,Medium、Light三種規(guī)格,從而滿足更多場(chǎng)景的要求

3. 如今,OEM正在創(chuàng)建自己的技術(shù)規(guī)范,包括SHE、EVITA和FIPS 140-2的某些方面,以及區(qū)域/行業(yè)性特殊要求(比如支持國(guó)密算法)

4. 還有一些廠商定義特定的輕量級(jí)加密引擎,比如NXP的IEE、BEE、PRINCE算法等

5. 啟動(dòng)安全

先講一個(gè)概念:信任鏈 (chain of trust)

在可信計(jì)算體系中,建議信任需要先擁有可信根(Root of Trust),然后建立一條可信鏈(chain of Trust),再將信任傳遞到系統(tǒng)的各個(gè)模塊,之后就能建立整個(gè)系統(tǒng)的可信。

安全啟動(dòng)的原理就是硬件信任錨+信任鏈。

網(wǎng)絡(luò)設(shè)備的安全性嚴(yán)重依賴設(shè)備上運(yùn)行軟件的完整性,通常使用信任鏈確保軟件完整性,啟動(dòng)期間每個(gè)階段在執(zhí)行前檢查下一個(gè)階段,如下圖所示,這個(gè)過程有一個(gè)特例,這一步之前沒有任何東西可以進(jìn)行任何檢查,此階段稱為信任根(Root of Trust)。

5.1 安全啟動(dòng)

安全啟動(dòng)(Secure Boot):安全啟動(dòng)也叫Verify boot,就是在啟動(dòng)過程中,前一個(gè)部件驗(yàn)證后一個(gè)部件的數(shù)字簽名,驗(yàn)證通過后,運(yùn)行后一個(gè)部件。

目前安全啟動(dòng)基本上是對(duì)安全要求比較高的場(chǎng)景下,芯片必備功能。

5.2 可信啟動(dòng)

可信啟動(dòng)(Trusted Boot):也稱為Measure boot,就是在啟動(dòng)過程中,前一個(gè)部件度量(計(jì)算HASH)后一個(gè)部件,然后把度量值安全保存下來(lái),比如放到一個(gè)集中的部件(或云端),設(shè)備啟動(dòng)后的一致性(完整性)的校驗(yàn)由集中的部件負(fù)責(zé)完成。

擴(kuò)展:在IoT領(lǐng)域,以微軟為主推出了輕量級(jí)的類TPM技術(shù)-DICE,就使用了基于硬件信任錨的可信啟動(dòng)方式。

5.3 加密啟動(dòng)

顧名思義,就是存儲(chǔ)在flash中的image是密文,啟動(dòng)過程中會(huì)解密在啟動(dòng),下圖是NXP加密啟動(dòng)的流程圖:

注:

1.加密啟動(dòng)過程本身沒有信任鏈的構(gòu)建過程

2.安全啟動(dòng)(Secure boot)、可信啟動(dòng)(Trusted boot)和加密啟動(dòng)(Encryptedboot)三種啟動(dòng)方式并不是互斥的,可以結(jié)合實(shí)際應(yīng)用場(chǎng)景、性能要求結(jié)合起來(lái)使用。比如安全啟動(dòng)(Secure Boot)和加密啟動(dòng)(Encrypted boot)相結(jié)合,既可以確保啟動(dòng)過程系統(tǒng)軟件的一致性(沒有加載被篡改過的軟件系統(tǒng)),又能確保Flash中的軟件image不被逆向破解(因?yàn)閕mage已被加密)

3.需要注意的,如采用加密啟動(dòng),可以借助前面講的IEE硬件加密引擎,就可以顯著提升解密性能,從而提升啟動(dòng)啟動(dòng)。

6. 安全存儲(chǔ)

6.1 OTP存儲(chǔ)器

一次性可編程存儲(chǔ)器(On Chip One Time Programmable ROM, On-Chip OTP ROM)OTP存儲(chǔ)器,也稱為eFuse,是芯片中特殊存儲(chǔ)模塊;字段中的任何eFuse位都只能從0編程為1(融合),但是讀取操作沒有限制。OTP在安全中的應(yīng)用一般可以存放一些固定不變的值,比如:

每個(gè)設(shè)備唯一的根密鑰(Master Key)

設(shè)備唯一ID(Device Unique ID)或者M(jìn)AC 地址

一些安全配置或者秘密值(軟件的Hash值,啟動(dòng)模式等)

下面簡(jiǎn)單介紹一下OTP和Secure Boot的配合案例,在一些低端設(shè)備,限于成本和性能等原因,會(huì)采用對(duì)稱加密的方式來(lái)驗(yàn)證啟動(dòng)過程bootloader image合法性,那又是如何做到的呢?

芯片第一次 boot 時(shí),軟件 bootloader 根據(jù)以下步驟使能 Secure boot:

(1)硬件產(chǎn)生一個(gè) secure boot key,將這個(gè) key 保存在 efuse 中,利用這個(gè) key、一個(gè)隨機(jī)數(shù) IV 和 bootloader image 計(jì)算出 secure digest。

(2)securedigest 與隨機(jī)數(shù) IV 保存在 flash 的 0x0 地址,用于在后續(xù) boot 時(shí)驗(yàn)證 bootloader image 是否被篡改。

(3)bootloader通過燒寫 efuse 中的 ABS_DONE_0 永久使能 secure boot。

(4)芯片在后面的 boot 中,ROM bootloader 發(fā)現(xiàn) efuse 中的 ABS_DONE_0 被燒寫,于是從 flash 的地址 0x0 讀取第一次boot 時(shí)保存的 secure digest 和隨機(jī)數(shù) IV,硬件使用 efuse 中的 secure boot key 、隨機(jī)數(shù) IV 與當(dāng)前的 bootloader image 計(jì)算當(dāng)前的 secure digest,若與 flash 中的 secure digest 不同,則 boot 不會(huì)繼續(xù),否則就執(zhí)行軟件 bootloader。

(5)軟件 bootloader 使用 bootloader image 中保存的公鑰對(duì) flash 中的 partition table 和 app images 簽字進(jìn)行驗(yàn)證,驗(yàn)證成功之后才會(huì) boot 到 app 代碼中。

第一次boot時(shí)secure boot與flashencryption的生效過程如下圖所示,圖中藍(lán)色框是 secure boot 的步驟,綠色框是 flash encryption 的步驟:

yqeEBb.png

后續(xù) boot 時(shí)流程圖如下,圖中綠色框中的步驟會(huì)執(zhí)行解密,解密是由硬件自動(dòng)完成:

rye6Bv.png

Source:https://www.cnblogs.com/aaronLinux/p/9198725.html

6.2 Flash空間保護(hù)機(jī)制

Flash空間保護(hù)主要是Flash某些區(qū)域設(shè)置只讀或者只寫,防止非法訪問和篡改。Flash保護(hù)區(qū)域的數(shù)量和大小會(huì)根據(jù)Flash的類型和該Flash塊的大小而有所不同。主要的應(yīng)用場(chǎng)景有:

保護(hù)包含代碼的閃存的所有區(qū)域,以保護(hù)應(yīng)用程序本身不被覆蓋。用于存儲(chǔ)數(shù)據(jù)的閃存區(qū)域?qū)⒉皇鼙Wo(hù)。

保護(hù)向量表和駐留在閃存中的引導(dǎo)加載程序應(yīng)用程序,并使其余閃存不受保護(hù)。這將防止意外刪除引導(dǎo)加載程序,但閃存的其他部分仍未受保護(hù),以允許引導(dǎo)加載程序執(zhí)行固件更新。

下面以NXP Flash的空間保護(hù)機(jī)制為例做個(gè)簡(jiǎn)要說(shuō)明:

YJRbEv.png

有個(gè)flash存儲(chǔ)空間保護(hù)寄存器,F(xiàn)PROT0–FPROT3,默認(rèn)值由應(yīng)用程序image根據(jù)在flash配置字段中編程的值來(lái)確定。FPOROTn- 四個(gè)寄存器保護(hù)Flash 的32區(qū)域。

Source: https://www.nxp.com/docs/en/application-note/AN4507.pdf

6.3. 內(nèi)存的保護(hù)機(jī)制:

目前操作系統(tǒng)也可以設(shè)置一些區(qū)域的不可讀或者寫的機(jī)制,也有芯片級(jí)內(nèi)存保護(hù)機(jī)制,下面仍然以NXP芯片為例。

安全存儲(chǔ)區(qū)具備嚴(yán)格的訪問控制機(jī)制,安全存儲(chǔ)區(qū)域具備Domain ID,權(quán)限級(jí)別(TZ or NS)和權(quán)限列表(Permissions),只有硬件訪問時(shí)具備這些能力的訪問才能訪問成功,否則會(huì)失敗,這個(gè)是完全硬件級(jí)的訪問控制,可以和Trust Zone和業(yè)務(wù)的訪問控制權(quán)限等配合使用。

Source: i.MX 8Security Overview

7. FOTA(Firmware over the air)

能夠?qū)ζ噲?zhí)行現(xiàn)場(chǎng)軟件更新的優(yōu)勢(shì)已得到充分確立:它將為制造商節(jié)省資金,使關(guān)鍵錯(cuò)誤得以立即修復(fù)并在其生命周期內(nèi)隨時(shí)向汽車添加引人注目的新功能。理想情況下,對(duì)車輛操作至關(guān)重要的更新應(yīng)在后臺(tái)無(wú)縫且不可見地進(jìn)行。

上圖顯示了關(guān)鍵組件,這些組件將更新文件從OEM服務(wù)器獲取到車輛中的特定ECU。通過蜂窩網(wǎng)絡(luò)在單個(gè)車輛和服務(wù)器之間建立安全連接。這樣就可以將新的,更新的固件安全地發(fā)送到車輛的Telematics Unit,然后再發(fā)送到OTA Manager。OTA管理器管理車輛內(nèi)所有ECU的更新過程。它控制固件更新到ECU的分配,并告訴ECU何時(shí)執(zhí)行更新。

這在需要同時(shí)更新多個(gè)ECU的情況下非常重要。為涉及多個(gè)ECU的車輛添加新功能。更新過程完成后,OTA管理器將向OEM發(fā)送確認(rèn)。

可以在運(yùn)行OTA Manager的ECU上安裝外部NAND閃存,以存儲(chǔ)固件更新,直到需要它們?yōu)橹埂M獠块W存還可以用于存儲(chǔ)其他車輛ECU的固件備份副本,如果ECU更新出現(xiàn)重大故障,則可以調(diào)用該備份副本,從而使ECU沒有任何可用的固件。這些備份副本將通過加密和身份驗(yàn)證保護(hù)來(lái)保護(hù),以防止在存儲(chǔ)在外部存儲(chǔ)模塊中的同時(shí)對(duì)固件進(jìn)行任何篡改。

OTA管理器包含車輛內(nèi)每個(gè)ECU的表格,其中包括序列號(hào)和當(dāng)前固件版本等信息。這樣,OTA Manager可以驗(yàn)證到達(dá)的固件更新,并確保已授權(quán)將其用于該車輛。如果要更新的ECU不具有安全功能,則OTA管理器還將負(fù)責(zé)解密和驗(yàn)證傳入的更新。

7.1 ECU的更新過程

完整二進(jìn)制文件:新固件完整發(fā)送。這具有不依賴于先前固件的優(yōu)點(diǎn),從而即使先前版本已損壞也可以進(jìn)行更新。該方法的兩個(gè)缺點(diǎn)是傳輸二進(jìn)制文件所花費(fèi)的時(shí)間以及在接收方ECU中存儲(chǔ)二進(jìn)制文件所需的空間。許多傳統(tǒng)的ECU在CAN總線上的典型速度為500kbit/ s。

差異文件:在服務(wù)器上,OEM將新固件與以前的版本進(jìn)行比較,并創(chuàng)建一個(gè)“差異”文件,其中包含它們之間的差異列表。

根據(jù)更改的數(shù)量,此文件通常是:

“ A / B”方法(“A/B” approach):這會(huì)使每個(gè)ECU上的閃存數(shù)量增加一倍,以便它可以在“主”閃存中包含當(dāng)前固件,并在“第二”閃存中具有用于全新版本的空間。從最終用戶的角度來(lái)看,這種方法是理想的,因?yàn)镋CU可以使用主存儲(chǔ)器保持正常運(yùn)行,而新固件可以在后臺(tái)寫入輔助存儲(chǔ)器。更新完成后,ECU在方便的時(shí)間使用新更新的固件(在輔助閃存塊中)(例如,在下次啟動(dòng)時(shí),也可以等待將開關(guān)與要更新的其他ECU進(jìn)行同步) 。由于始終有可用的固件,因此沒有將ECU置于不可操作狀態(tài)的危險(xiǎn),因?yàn)槭冀K可以立即“回滾”到先前的可用固件。一個(gè)明顯的缺點(diǎn)是在MCU上實(shí)現(xiàn)兩倍于執(zhí)行閃存的成本。

“就地”方法(“In place” approach):在這種情況下,設(shè)備上僅存在固件的一個(gè)版本,并且作為更新的一部分擦除并編程了各個(gè)塊。當(dāng)ECU處于正常運(yùn)行狀態(tài)時(shí),更新無(wú)法運(yùn)行-這意味著車輛將在一段時(shí)間內(nèi)無(wú)法運(yùn)行。該時(shí)間段主要由重新編程ECU Flash所需的時(shí)間決定。車輛中的主要ECU(如發(fā)動(dòng)機(jī)控制器)將具有數(shù)MB的閃存,如果需要對(duì)完整的固件進(jìn)行重新編程,則可能需要數(shù)十秒的時(shí)間才能完成。對(duì)于OEM廠商來(lái)說(shuō),這是一個(gè)挑戰(zhàn)-客戶是否會(huì)接受這樣的事實(shí),即他們無(wú)法在長(zhǎng)達(dá)一分鐘的時(shí)間內(nèi)啟動(dòng)引擎。A / B方法的增加成本必須與“就地”方法給客戶帶來(lái)的不便之間進(jìn)行權(quán)衡。由于“就地”方法中僅存在固件的一個(gè)版本,因此更新過程中的錯(cuò)誤或重置可能很難從中恢復(fù),并且如果未仔細(xì)處理,則可能導(dǎo)致模塊(以及汽車)不再功能正常運(yùn)行,直到在車庫(kù)對(duì)其進(jìn)行更新之前,車輛無(wú)法使用。

8. 安全診斷(Secure Debug)

現(xiàn)代處理器配備了基于硬件的調(diào)試功能,以促進(jìn)片上調(diào)試過程。

-例如,硬件斷點(diǎn)和基于硬件的跟蹤。

-通常需要電纜連接(例如JTAG [1])才能使用這些功能。

如果診斷過程沒有合適的安全機(jī)制,很容易被黑客利用,如下圖所示:

安全JTAG模式通過使用基于挑戰(zhàn)/響應(yīng)的身份驗(yàn)證機(jī)制來(lái)限制JTAG訪問。檢查對(duì)JTAG端口的任何訪問。只有授權(quán)的調(diào)試設(shè)備(具有正確響應(yīng)的設(shè)備)才能訪問JTAG端口。未經(jīng)授權(quán)的JTAG訪問嘗試將被拒絕。此功能需要支持基于質(zhì)詢/響應(yīng)的身份驗(yàn)證機(jī)制的外部調(diào)試器工具(例如Lauterbach Trace32,Arm?RVDS / DS5調(diào)試器等)。通常在設(shè)備制造期間而不是在開發(fā)板上啟用安全JTAG模式。目前很多芯片廠商都提供自己的安全診斷方案,下面僅以NXP為例:

1.用戶通過JTAG接口請(qǐng)求調(diào)試

2.SOC以芯片唯一ID響應(yīng)

3.服務(wù)器找到相應(yīng)的秘密(TZ或normal world)

4.用戶通過JTAG界面提交秘密

5.安全的JTAG模塊將密鑰與預(yù)先配置的密鑰進(jìn)行比較

6.如果匹配,則啟用調(diào)試(對(duì)于TZ或normal world)

注:

1. 這里的安全診斷是針對(duì)芯片的調(diào)測(cè),不要跟測(cè)試設(shè)備通過OBD口和車內(nèi)ECU進(jìn)行通訊爭(zhēng)端協(xié)議(UDS)進(jìn)行混淆了。

2. 從安全角度通常建議設(shè)備真正投入使用時(shí),應(yīng)關(guān)閉芯片的JTAG口或者其他類型的調(diào)測(cè)端口。

9. 安全運(yùn)行環(huán)境

安全運(yùn)行環(huán)境主要是指芯片向OS和APP提供安全的隔離的計(jì)算環(huán)境,以及配套的虛擬機(jī)管理程序或者SDK,通常包括芯片計(jì)算多分區(qū)(Multi Partitions)機(jī)制和可信計(jì)算環(huán)境(Trust zone)

1.ARM Trustzone + 虛擬化

(1)Arm V8.4架構(gòu)開始引入了Secure EL2擴(kuò)展,在Secure 世界中增加了對(duì)虛擬化的支持。這使得可以在非安全狀態(tài)下進(jìn)行虛擬化的功能進(jìn)入安全狀態(tài)。虛擬化的一個(gè)關(guān)鍵特性是增加了虛擬機(jī)管理程序控制兩階段的地址翻譯過程(如下圖)。

(2)Secure EL1中安全分區(qū)具有隔離的地址空間,其他安全分區(qū)無(wú)法訪問此空間,是一個(gè)沙箱環(huán)境。

(3)使用Secure EL2安全分區(qū)來(lái)實(shí)現(xiàn)安全世界的虛擬機(jī),安全分區(qū)管理器:EL3和Secure EL2中通用的固件負(fù)責(zé)管理這些安全分區(qū),這里的關(guān)鍵組件是安全分區(qū)管理器(SPM)

2. 系統(tǒng)資源隔離(以NXP的XRDC特性為例)

1) 什么是分區(qū):

資源集合(主/從外圍設(shè)備,內(nèi)存區(qū)域)

具有域ID和安全屬性

內(nèi)核,外圍設(shè)備和內(nèi)存可以屬于多個(gè)分區(qū)

2) 分區(qū)的工作原理

系統(tǒng)控制器將外圍設(shè)備和內(nèi)存區(qū)域提交到特定域中(這是客戶定義的)

域之間的任何通信都必須使用消息傳遞協(xié)議

如果某個(gè)域外設(shè)試圖非法訪問其他域,則會(huì)發(fā)生總線錯(cuò)誤

3) 分區(qū)的好處:

非法訪問時(shí)報(bào)告立即的,有助于在投入實(shí)際應(yīng)用之前發(fā)現(xiàn)難以追查資源競(jìng)爭(zhēng)問題(又名沙盒方法)

提供成品的安全性:保護(hù)系統(tǒng)關(guān)鍵的SoC外設(shè)免受不太信任的應(yīng)用程序的攻擊

注:限于篇幅,本文沒有講述Trustzone 技術(shù)本身,這方面的技術(shù)在網(wǎng)上有大量的論述,本文不再重復(fù)。

3. 多核虛擬化

目前很多車載ECU具有多核,每個(gè)核可以根據(jù)實(shí)際需要運(yùn)行不同ASIL等級(jí)的應(yīng)用程序,也可以把Security和Safety應(yīng)用嚴(yán)格隔離開,或者通過虛擬化技術(shù)運(yùn)行不同的操作系統(tǒng)等。因此多核虛擬化技術(shù)應(yīng)用也會(huì)越來(lái)越多。第一節(jié)講的ARM Trustzone最近的架構(gòu)已經(jīng)支持虛擬化技術(shù),下面是NXP虛擬化技術(shù)的一個(gè)例子

10. 總結(jié)

1.芯片的安全為什么這么重要?

最重要原因是汽車容易近距離和物理接觸,所以黑客可以較容易實(shí)施物理攻擊,如果沒有安全的芯片設(shè)計(jì),很難保障整車的安全。比如密鑰和隱私數(shù)據(jù)的盜取,篡改等;同時(shí)行業(yè)標(biāo)準(zhǔn),整車性能要求也促使大家不得不把更多安全功能建立在芯片安全輔助的基礎(chǔ)之上。

2.汽車芯片級(jí)安全技術(shù)層次以及各技術(shù)之間的關(guān)系

2.1首先要關(guān)注芯片自身的物理安全能力,汽車芯片必須能抵抗一定級(jí)別的物理攻擊,比如黑客可以利用側(cè)信道攻擊獲取芯片內(nèi)部的密鑰信息,一旦獲取密鑰,就可以成功突破車內(nèi)其他部件,甚至突破一批汽車的安全控制措施,因?yàn)槟壳昂芏嘬囆褪鞘褂孟嗤荑€的,安全強(qiáng)度低。

2.2 汽車汽車智能化和網(wǎng)聯(lián)化的加強(qiáng),從封閉的安全世界走向了一個(gè)相對(duì)開放的危險(xiǎn)世界。那么整車的信任源在哪里?因?yàn)闆]有信任源,整車的信任體系就無(wú)法建立起來(lái)。這個(gè)時(shí)候我們就要求車內(nèi)核心的芯片自身必須嵌入信任根或者引入第三方TPM芯片,確保上電的“第一行代碼就是完全可信的,由此通過安全啟動(dòng),構(gòu)建整車的信任鏈。

2.3 有個(gè)信任根,就需要關(guān)注安全存儲(chǔ)。汽車的密鑰,設(shè)備的唯一身份,以及一些特殊的安全度量值(比如軟件hash),安全配置等,都需要安全的存儲(chǔ)機(jī)制,確保黑客看不見,拿不走,改不了,這類安全技術(shù)比如OTP,PUP,芯片級(jí)訪問控制等。

2.4. 有個(gè)硬件層面的安全底座,就要考慮上層應(yīng)用的安全機(jī)制,尤其是安全隔離?,F(xiàn)在ECU計(jì)算能力的增強(qiáng),運(yùn)行的功能越來(lái)越集中,就需要考慮功能之間的隔離,確保一個(gè)功能被黑客攻破,讓攻擊不能蔓延開,從而不會(huì)影響其他功能的正常運(yùn)行,因此就出現(xiàn)了各種安全運(yùn)行的機(jī)制,比如trust zone,虛擬化技術(shù),運(yùn)行期內(nèi)存一致性檢查技術(shù),控制流一致性(CFI)技術(shù)等

2.5.另外還有一些特殊場(chǎng)景的安全,比如內(nèi)置數(shù)字版權(quán)技術(shù),芯片安全調(diào)測(cè)技術(shù),固件安全刷寫等場(chǎng)景,都需要考慮安全性,否則都會(huì)帶來(lái)嚴(yán)重后果。

最后,我們需要強(qiáng)調(diào)的是,沒有一個(gè)單點(diǎn)安全技術(shù)可以包治百病,安全沒有“銀彈”,必須確保各個(gè)芯片設(shè)計(jì),軟件設(shè)計(jì),系統(tǒng)設(shè)計(jì)各環(huán)節(jié)的安全。從威脅分析入手,再基于成本,功耗,基礎(chǔ)設(shè)施配套情況等來(lái)綜合設(shè)計(jì)系統(tǒng)的安全機(jī)制。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    452

    文章

    50006

    瀏覽量

    419696
  • 汽車電子
    +關(guān)注

    關(guān)注

    3019

    文章

    7790

    瀏覽量

    165698
  • 汽車安全
    +關(guān)注

    關(guān)注

    4

    文章

    261

    瀏覽量

    34538
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AD603輸入阻抗很小,輸入端用電容耦合的必要性在哪里?

    請(qǐng)問,關(guān)于603的級(jí)聯(lián)耦合,它輸入阻抗很小,輸入端用電容耦合的必要性在哪里,還有多個(gè)數(shù)量級(jí)的電容并聯(lián)來(lái)級(jí)間耦合的,是為了增加可通過的頻帶范圍吧。 而且,雖然理論上是零偏置的交流信號(hào)輸入,若有直流干擾的時(shí)候,輸入耦合的電容前段有沒有必要加泄流電阻到地呢?
    發(fā)表于 09-19 08:14

    安科瑞銀行用電安全監(jiān)管的必要性分析,能起到什么關(guān)鍵的作用?

    的發(fā)生。 【關(guān)鍵詞】銀行;電氣火災(zāi);智能安全配電裝置 銀行用電安全監(jiān)管的必要性分析 近年來(lái),銀行業(yè)緊緊把握創(chuàng)新發(fā)展理念,積極擁抱新技術(shù)促進(jìn)智能化升級(jí),深入開展數(shù)據(jù)創(chuàng)新推進(jìn)服務(wù)轉(zhuǎn)型,科學(xué)穩(wěn)健運(yùn)用AI、5G、區(qū)塊鏈、云計(jì)
    的頭像 發(fā)表于 09-10 13:13 ?119次閱讀
    安科瑞銀行用電<b class='flag-5'>安全</b>監(jiān)管的<b class='flag-5'>必要性</b>分析,能起到什么關(guān)鍵的作用?

    FPGA教學(xué)實(shí)驗(yàn)室建設(shè)必要性 解決方案概述

    FPGA教學(xué)實(shí)驗(yàn)室建設(shè)必要性&解決方案概述
    的頭像 發(fā)表于 07-26 08:33 ?176次閱讀
    FPGA教學(xué)實(shí)驗(yàn)室建設(shè)<b class='flag-5'>必要性</b> 解決方案概述

    智能開關(guān)柜一鍵順控的必要性有哪些?

    開關(guān)柜一鍵順控技術(shù)的必要性:通過預(yù)設(shè)的操作邏輯和自動(dòng)化控制,實(shí)現(xiàn)了對(duì)開關(guān)柜的快速、準(zhǔn)確操作。工作人員只需通過簡(jiǎn)單的操作界面,即可實(shí)現(xiàn)對(duì)開關(guān)柜的遠(yuǎn)程控制和監(jiān)控,大大提高了操作效率。
    的頭像 發(fā)表于 07-12 10:49 ?179次閱讀
    智能開關(guān)柜一鍵順控的<b class='flag-5'>必要性</b>有哪些?

    無(wú)人機(jī)主動(dòng)防御系統(tǒng)的必要性和重要

    安全性問題也日益凸顯,無(wú)人機(jī)的非法入侵、惡意攻擊等行為給人們的生活和國(guó)家安全帶來(lái)了嚴(yán)重威脅。因此,研究無(wú)人機(jī)主動(dòng)防御系統(tǒng)的必要性和重要性具有十分重要的現(xiàn)實(shí)意義。 二、無(wú)人機(jī)的安全隱患
    的頭像 發(fā)表于 07-08 09:45 ?449次閱讀

    行車記錄儀CCC認(rèn)證的必要性分析

    CCC認(rèn)證的詳細(xì)解析:CCC認(rèn)證的必要性法規(guī)要求:根據(jù)相關(guān)規(guī)定,行車記錄儀作為音視頻設(shè)備的一種,屬于3C認(rèn)證目錄里第八大類“音視頻設(shè)備”中的0805小類“播放及處理
    的頭像 發(fā)表于 07-05 16:25 ?291次閱讀
    行車記錄儀CCC認(rèn)證的<b class='flag-5'>必要性</b>分析

    集成芯片的重要必要性

    集成芯片在現(xiàn)代科技和工業(yè)中占據(jù)著至關(guān)重要的地位,其重要必要性主要體現(xiàn)在以下幾個(gè)方面。
    的頭像 發(fā)表于 03-18 15:17 ?880次閱讀

    示波器測(cè)量交流電壓不能接地的原因和必要性

    示波器測(cè)量交流電壓不能接地的原因和必要性? 示波器是一種非常重要的測(cè)試儀器,用于測(cè)量信號(hào)的振幅、頻率、相位等參數(shù)。在測(cè)量交流電壓時(shí),通常需要將示波器的地端(GND)與待測(cè)點(diǎn)的接地進(jìn)行連接。然而
    的頭像 發(fā)表于 01-08 16:36 ?1212次閱讀

    LED電路保護(hù)的必要性 LED損壞的原因 保護(hù)LED電路小絕招

    LED電路保護(hù)的必要性 LED損壞的原因 保護(hù)LED電路小絕招? LED電路保護(hù)的必要性 LED是一種新型的發(fā)光器件,具有功率小、高亮度、長(zhǎng)壽命、可靠高等優(yōu)點(diǎn)。然而,由于其工作特性以及外部環(huán)境
    的頭像 發(fā)表于 01-03 11:31 ?822次閱讀

    防雷檢測(cè)認(rèn)證服務(wù)的作用和必要性

    的發(fā)生和擴(kuò)大,保護(hù)人身和財(cái)產(chǎn)安全,促進(jìn)防雷行業(yè)的規(guī)范和發(fā)展。防雷檢測(cè)認(rèn)證服務(wù)的意義是實(shí)現(xiàn)雷電防護(hù)裝置的科學(xué)化、標(biāo)準(zhǔn)化和法制化,提高防雷檢測(cè)的公信力和權(quán)威,增強(qiáng)社會(huì)公眾的防雷意識(shí)和信心。防雷檢測(cè)認(rèn)證服務(wù)的必要性
    的頭像 發(fā)表于 01-02 10:25 ?437次閱讀
    防雷檢測(cè)認(rèn)證服務(wù)的作用和<b class='flag-5'>必要性</b>

    何謂正確去耦?有何必要性?

    電子發(fā)燒友網(wǎng)站提供《何謂正確去耦?有何必要性?.pdf》資料免費(fèi)下載
    發(fā)表于 11-30 09:25 ?0次下載
    何謂正確去耦?有何<b class='flag-5'>必要性</b>?

    如何正確去耦?去耦技術(shù)的必要性

    何謂正確去耦?有何必要性? 如果電源引腳上存在紋波和/或噪聲,大多數(shù)IC都會(huì)有某種類型的性能下降。數(shù)字IC的噪聲裕量會(huì)降低,時(shí)鐘抖動(dòng)則可能增加。對(duì)于高性能數(shù)字IC,例如微處理器和FPGA,電源額定容
    發(fā)表于 11-28 16:16 ?0次下載
    如何正確去耦?去耦技術(shù)的<b class='flag-5'>必要性</b>

    汽車行業(yè)軟件代碼滿足功能安全信息安全的最佳實(shí)踐

    21434信息安全必要性。這兩種功能標(biāo)準(zhǔn)都需要使用諸如MISRA C或C++之類的編碼標(biāo)準(zhǔn)。因此,我們將討論最新的MISRA規(guī)則,以及如何使用靜態(tài)分析工具Helix
    的頭像 發(fā)表于 11-23 20:05 ?547次閱讀
    <b class='flag-5'>汽車</b>行業(yè)軟件代碼滿足功能<b class='flag-5'>安全</b>與<b class='flag-5'>信息</b><b class='flag-5'>安全</b>的最佳實(shí)踐

    汽車功能安全芯片測(cè)試

    正常運(yùn)行。因此,對(duì)汽車功能安全芯片進(jìn)行細(xì)致、詳實(shí)的測(cè)試就顯得尤為重要。 汽車功能安全芯片測(cè)試主要
    的頭像 發(fā)表于 11-21 16:10 ?1482次閱讀

    使用Cache的必要性與可行

    使用Cache的必要性 所謂Cache即高速緩沖存儲(chǔ)器,它位于CPU與主存即DRAM之間,是通常由SRAM構(gòu)成的規(guī)模較小但存取速度很快的存儲(chǔ)器。 目前計(jì)算機(jī)主要使用的內(nèi)存為DRAM,它具有價(jià)格低
    的頭像 發(fā)表于 10-31 11:53 ?710次閱讀