我目前正在嘗試評估我制作的實驗性 IoT 設備的安全級別,該設備使用 ESP32 在 Firebase 資料庫中“寫入”其狀態。目前,我正在使用資料庫機密來連接到資料庫。建立連接的方法是傳遞名為 FIREBASE_HOST(資料庫 URL)和 FIREBASE_AUTH(這是秘密)的值。
讓我擔心的是,由于秘密直接寫在代碼中,惡意代理可能會看到那段代碼并檢索資料庫秘密。
所以這就是我的問題,以無線或物理方式(如果可能的話)連接到 ESP32 的人是否可以掃描其運行代碼以獲取秘密令牌?
uj5u.com熱心網友回復:
ESP32 系統中的所有內容 - 代碼、資料、非易失性存盤 - 都存盤在外部閃存芯片中。這意味著通過對設備的物理訪問,任何人都可以讀取閃存芯片的內容。我可以將除錯器連接到設備并使用官方的 Espressif 工具讀取整個 Flash。如果除錯介面不可用,我可以直接連接到 Flash 芯片(我可以使用另一個 ESP32 構建我自己的 Flash 介面并重新連接到它的 Flash 連接)并讀取它,甚至無需啟動 ESP32 微控制器。如果您的秘密未加密地存盤在那里,它們會通過物理訪問暴露。不知道WiFi,所以會聽從知識淵博的人。
在設備端解決這個問題的方法是加密 Flash并且只啟動簽名的二進制檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/416029.html
標籤:
