在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

利用SAU和安全AHB控制器調查HardFault的方法

恩智浦MCU加油站 ? 來源:恩智浦MCU加油站 ? 作者:劉豪 ? 2021-11-21 09:47 ? 次閱讀

TrustZone

恩智浦基于Cortex M33內核的MCULPC55S6x/LPC55S1x, RT600/RT500等產品提供了對TrustZone的支持,并在SOC上提供了安全AHB控制器等功能,旨在幫助客戶完成良好的安全隔離,并建立可信執行環境。

在產品設計之初,我們就要有一個基本的“隔離”的概念。

需要考慮的問題大致有以下兩個方面:

產品中的哪些功能和模塊應該放在安全區?(這部分代碼往往是核心且精簡,且經過安全審查的,安全區的內容不允許非安全區的代碼觸碰);

哪些功能應該放在非安全區?(這樣放在非安全區中的代碼,即使出現安全漏洞(例如棧溢出漏洞等等)后被攻擊,MCU的安全區中的資源和外設也無法被攻擊者利用)。

令人頭疼的HardFault

對于MCU工程師,TrustZone是一個比較新的技術,在開發調試過程中,由于TrustZone配置問題,時常遇到各種意料之外的HardFault,我們也經常調侃,這個TrustZone也太安全了,連我們自己都進不去。

其實這種問題往往是由于在開發階段,我們實際的行為和我們對TrustZone的劃分不一致。

平常我們認為正常的行為與操作,對于TrustZone來說,已經越界違規了,這就會使TruztZone觸發HardFault,并阻止違規行為。

在這種情況下,我們就需要找到導致HardFault的原因,并調整對于TrustZone的配置。

注:TrustZone相關的故障會觸發SecureFault異常。在芯片上電后的默認情況下,SecureFault異常并沒有被使能,因此,此異常會被“升級”為HardFault。在通常情況下,建議使用默認的設置,因為HardFault擁有更高的中斷優先級,可以使故障在第一時間被響應。

獲取違規操作的蛛絲馬跡

Cortex M33內核本身在SAU中提供了兩個寄存器:SFSR(Secure FaultStatus Register,安全故障狀態寄存器)和SFAR(Secure Fault Address Register,安全故障地址寄存器)。

SFSR寄存器用于指示出現錯誤的類型,例如非安全區試圖訪問安全區,從安全區到非安全區的非法跳轉等。

SFAR寄存器用于指示出現錯誤的內存地址。

看起來這兩個寄存器就足以幫助我們查到問題的根源了。但是,有時候,我們從這兩個寄存器拿到了錯誤的原因和地址,仔細檢查后發現無論是安全區還是非安全區的程序,都沒有顯式的訪問這個地址。

這是由于MCU系統愈發復雜,總線上除了M33內核之外,還有許許多多的其他的外設,例如DMAUSB等等。肇事者不一定是M33內核,還有可能是其他的外設,例如DMA。

下面是一種常見的事故:被劃分為非安全的DMA在工作中訪問了安全區的地址或外設,違反了TrustZone的配置,造成了HardFault。

恩智浦的MCU在SOC層面提供了一個安全AHB控制器,能夠幫我們偵查肇事現場,找出肇事者的蛛絲馬跡。

其實原理很簡單,安全AHB控制器提供了三個寄存器,SEC_VIO_INFO_VALID,SEC_VIO_MISC_INFO和SEC_VIO_ADDR。

SEC_VIO_INFO_VALID用來指示肇事現場,這個寄存器中存儲了肇事現場的AHB 的端口號(port number),端口號與外設的對應關系參見用戶手冊的”Memory map overview”章節。

每一個AHB端口都相應有一個SEC_VIO_MISC_INFO寄存器,用來指示肇事的信息,例如違規操作是讀操作引起的還是寫操作引起的等等,最重要的是會指出肇事者的身份:

每個AHB端口還有一個SEC_VIO_ADDR,用來指示肇事現場的地址。

有了上述信息,我們就捉到了真正的肇事者。在開發階段,我們就可以利用這些信息去調整我們的TrustZone的配置。

更進一步

當然,上述功能不只能在開發階段幫我們排查HardFault。我們也可以利用這個機制在產品出廠之后為我們提供防御措施。

產品出廠后,當我們檢測到由TrustZone產生的HardFault的原因之后,可以將其記錄,以便于后續分析。如果設備有聯網能力,可以將其傳輸至服務器。利用這些信息我們可以發現產品的哪些模塊受到了攻擊,方便我們后續針對性地進行OTA升級。云端和設備本地也可在此時檢測鏡像以及存儲介質的完整性,以檢查程序和存儲介質是否被惡意篡改。

小結

綜上所述,利用SAU和安全AHB控制器調查HardFault的方法并不復雜,NXP的MCUXpresso SDK也提供了一個完整的demo。

以LPC55S69為例,demo的路徑如下:SDKoardslpcxpresso55s69 rustzone_examplessecure_faults。

這個demo中,人為制造了幾種TrustZone觸發HardFault的案例,在產生HardFault后,使用上文描述的方法,處理相關寄存器并打印事故信息。

通常來說,在開發階段,我們可以參考demo中HardFault的處理代碼,按需移植到自己的工程中。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17353

    瀏覽量

    352788
  • 控制器
    +關注

    關注

    112

    文章

    16464

    瀏覽量

    179613
  • 恩智浦
    +關注

    關注

    14

    文章

    5884

    瀏覽量

    108469

原文標題:調試TrustZone時,如何處理HardFault

文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    溫度控制器參數含義,溫度控制器參數設置方法

    在現代工業自動化和溫控系統中,溫度控制器扮演著至關重要的角色。它通過對環境溫度的精確監測與調控,確保生產過程的穩定性和產品質量。然而,要充分發揮溫度控制器的效能,了解其參數含義并掌握正確的設置方法顯得尤為重要。本文將深入探討溫度
    的頭像 發表于 01-29 15:27 ?227次閱讀

    電機控制器故障排除方法

    電機控制器故障排除方法 1. 故障診斷前的準備 在進行故障排除之前,確保您已經做好了以下準備: 安全措施 :關閉電源,確保電機和控制器處于斷電狀態,以防止觸電或設備損壞。 工具和設備
    的頭像 發表于 01-22 09:25 ?244次閱讀

    usb主機控制器位于ahp總線上嗎

    關于“USB主機控制器是否位于AHP總線上”的問題,首先需要明確幾個概念: USB主機控制器 :在USB系統中,主機控制器控制所有USB設備通信的關鍵組件。它負責組織數據傳輸,管理U
    的頭像 發表于 09-25 09:20 ?372次閱讀

    風機溫度控制器的調整方法

    風機溫度控制器是一種用于控制風機運行溫度的設備,它能夠根據設定的溫度范圍自動調節風機的運行狀態,以保持設備在最佳工作溫度下運行。調整風機溫度控制器方法需要根據具體的設備型號和功能來操
    的頭像 發表于 09-20 14:53 ?1024次閱讀

    軟啟動控制器的參數調整方法

    至關重要。本文將詳細介紹軟啟動控制器的參數調整方法,包括參數設置、調整步驟、注意事項等內容。 一、軟啟動控制器的基本原理 1.1 軟啟動控制器的工作原理 軟啟動
    的頭像 發表于 07-02 09:42 ?6094次閱讀

    組合邏輯控制器的基本概念、實現原理及設計方法

    廣泛應用于計算機、通信、控制等領域。 本文將詳細介紹組合邏輯控制器的基本概念、實現原理、設計方法、應用場景等方面的內容,以幫助讀者全面了解組合邏輯控制器。 基本概念 1.1 組合邏輯
    的頭像 發表于 06-30 10:26 ?2439次閱讀

    組合邏輯控制器和硬布線控制器一樣嗎

    、設計方法、實現技術以及應用場景。通過對兩者的比較分析,揭示它們在計算機控制系統中的不同作用和優勢。 關鍵詞: 組合邏輯控制器;硬布線控制器;計算機
    的頭像 發表于 06-30 10:24 ?1070次閱讀

    伺服控制器的常見故障及解決方法

    伺服控制器作為工業自動化領域的核心部件,其穩定性和可靠性對于整個系統的運行至關重要。然而,在實際應用中,伺服控制器也會遇到各種故障。本文將對伺服控制器的常見故障進行分析,并提出相應的解決方法
    的頭像 發表于 06-20 18:25 ?2601次閱讀

    機械壓力控制器使用與調整方法

    機械壓力控制器是一種廣泛應用于工業領域,用于監測和控制壓力的設備。它通過機械結構實現對壓力的測量和控制,具有結構簡單、可靠性高、維護方便等優點。本文將詳細介紹機械壓力控制器的使用
    的頭像 發表于 06-19 11:00 ?1199次閱讀

    壓力控制器的正確接線方法

    壓力控制器是一種用于監測和控制壓力的自動化設備,廣泛應用于工業、科研和民用領域。正確接線是確保壓力控制器正常工作的關鍵。本文將詳細介紹壓力控制器的接線
    的頭像 發表于 06-19 10:46 ?3254次閱讀

    壓力控制器使用與調整方法

    詳細介紹壓力控制器的使用方法和調整方法。 一、壓力控制器的工作原理 壓力控制器主要由壓力傳感、
    的頭像 發表于 06-19 10:44 ?2744次閱讀

    移動機械控制器 車載智能控制器 CAN總線控制器

    控制器機械
    長沙碩博電子科技股份有限公司
    發布于 :2024年06月13日 17:02:51

    電機控制器電控系統的作用

    隨著電動汽車技術的快速發展,電機控制器電控系統作為電動汽車的核心技術之一,其重要性日益凸顯。電機控制器電控系統不僅關系到電動汽車的動力性能、操控性能,還涉及到能源利用效率、行駛安全等方
    的頭像 發表于 06-04 16:02 ?1016次閱讀

    電機控制器的原理和應用

    電機控制器作為現代電機系統中的重要組成部分,其性能的優劣直接影響到電機的工作效率、穩定性和安全性。隨著科技的不斷進步,電機控制器的設計和應用也日趨成熟和多樣化。本文將從電機控制器的原理
    的頭像 發表于 06-03 18:17 ?1739次閱讀

    MPPT控制器的安裝方法與注意事項

    的正常運行和延長其使用壽命,正確的安裝方法和注意事項至關重要。本文將對MPPT控制器的安裝方法和注意事項進行詳細闡述。
    的頭像 發表于 06-03 18:09 ?2082次閱讀
    主站蜘蛛池模板: 5x性区m免费毛片视频看看 | 日本黄色美女网站 | 亚洲综合色网 | 黄色一级视频网 | 午夜影院啊啊啊 | 狠狠色综合久久婷婷 | 五月婷婷激情六月 | 美女被啪到哭网站在线观看 | 色婷婷综合在线视频最新 | 日本黄色小视频网站 | 国产一级特黄高清免费大片 | 朋友夫妇和交换性bd高清 | free性日韩 | 欧美极品另类xxx | 欧美成人伊人久久综合网 | 日本不卡免费高清视频 | 欧美日韩伦理 | 亚洲成人激情电影 | 国产伦子系列视频6 | 日韩在线一区视频 | 午夜性视频播放免费视频 | 美国人与性xxxxxxx | eeuss影院www影院夜场 | 精品在线一区二区 | 国产综合在线视频 | 男女一区二区三区免费 | www.91大神| 美女视频黄又黄又免费高清 | 四虎影院最新网址 | 免费的国语一级淫片 | 亚洲播播播 | 免费看h的网站 | 欧美一区高清 | 亚洲婷婷国产精品电影人久久 | 亚洲视频黄 | 亚洲影视久久 | 日本精品视频一视频高清 | ww欧洲ww欧洲视频 | 黄网站观看 | 在线视频 一区二区 | 免费的黄色大片 |