關于嵌入式安全性的6個要點
保護嵌入式設備正成為一個熱門話題,尤其是當這些設備開始連接到Internet時。嵌入式軟件設計人員可以做些什么來提高設備的安全性?以下是開發人員需要了解的七個關鍵要點。
1. 不是RTOS而是用戶代碼
有許多RTOS供應商非常擔心這些嵌入式系統中的后門和缺陷通常存在于何處。安全漏洞通常出現在用戶開發的代碼中,而不是RTOS本身。其中一個原因是RTOS往往是一個小功能集合,它們操縱低級硬件并且不會出現任何“低懸的果實”。相反,黑客更愿意首先查看可能為其提供設備管理權限的任何基于Web的管理代碼。
2. 當心第三方代碼
據調查顯示,許多安全漏洞是第三方代碼的結導致果,這些代碼包含在為每個OEM修改過的設備中。第三方代碼應該針對任何潛在的缺陷進行審查和審查,而不僅僅是假設它是無缺的。
3. 分析工具很便宜
人們可能會認為下載,分析和發現安全漏洞所需的工具相對昂貴,而且對于許多潛在的黑客來說是遙不可及的。所以很多人會把這個過程去除。
4. 禁用WAN訪問權限
嵌入式開發人員似乎認為他們的嵌入式設備位于本地網絡上并且禁止訪問WAN,那么為什么要關注可能存在的安全漏洞呢?如果設備無法訪問互聯網,那么黑客就無法訪問該設備,但卻不知道該技術允許潛在的黑客使用只有圖像標簽的網頁來啟用嵌入式設備中的WAN訪問。然后,這允許黑客訪問設備和網絡的其余部分。
5. 注意文本字符串文本字符串的
任何有興趣查看文本的人都可以輕松閱讀和理解文本。所以開發人員要非常小心設計中存儲的未加密的信息和數據。
6. 保護固件
黑客需要能夠查看和反向工程代碼才能輕松找到漏洞。防止黑客以任何格式訪問代碼會使他們的工作變得更加困難。例如,不要提供可以下載并閃存到設備的完整二進制固件更新映像。黑客也可以下載圖像,然后對其行為進行反向工程。
有時候,當更新圖像不可用時,黑客只會購買設備并從硬件下載代碼。防止黑客這樣做的方法是保護嵌入式閃存。許多微控制器和微處理器具有固定閃存的方法,使其無法讀取。使用這兩種方法不會使設備絕對安全,但它們將使其更難以利用。
嵌入式軟件工程師需要關注安全性。進入市場,增加產品功能以及創建強大產品的壓力經常讓開發人員爭先恐后地將產品推向市場。但是,一旦該產品進入這個世界,就不知道它將會存在多長時間,或者它如何被用于惡意目的。即使是最簡單的連接設備,忽略安全隱患也可能導致黑客獲得真正造成麻煩所需的計算能力。