嵌入式在智能家居領域的應用越來越廣泛,因此,大家需要對嵌入式安全更加的關注。為增進大家對嵌入式的認識,本文將對嵌入式安全要點、提高嵌入式系統(tǒng)安全性的方法予以介紹。如果你對嵌入式、嵌入式安全具有興趣,不妨繼續(xù)往下閱讀哦。
一、嵌入式安全要點
要點 1 – 開發(fā)成功率很高
嵌入式系統(tǒng)的安全漏洞有多普遍,安全性真的是需要擔心的事情。95% 的系統(tǒng)都存在允許設備被征用的缺陷,95% 的成功率不僅表明大多數(shù)嵌入式系統(tǒng)都存在安全漏洞,而且嵌入式系統(tǒng)開發(fā)人員需要開始考慮他們所做工作的安全隱患。
要點2——不是RTOS,而是用戶代碼
安全缺陷通常出現(xiàn)在用戶開發(fā)的代碼中,而不是RTOS本身。其中一個原因是,RTOS 往往是一組操縱低級硬件的小功能,相反,黑客更喜歡首先查看任何基于網(wǎng)絡的管理代碼,這些代碼可能為他們提供對設備的管理權限。
要點3——分析工具便宜
有人可能會認為,下載、分析和發(fā)現(xiàn)安全漏洞所需的工具相對昂貴,對于許多潛在的黑客來說遙不可及。不幸的是,這與事實相去甚遠。完成這些壯舉所需的工具大部分都是免費的。對于黑客來說,僅僅1000美元和一兩周的工作可能引發(fā)的潛在破壞無疑是非常值得的。
要點4–禁用廣域網(wǎng)接入還不夠
嵌入式開發(fā)人員似乎認為他們的嵌入式設備在本地網(wǎng)絡上,其對廣域網(wǎng)的訪問是禁用的,所以為什么要擔心可能的安全缺陷呢?如果設備看不到互聯(lián)網(wǎng),那么黑客就無法訪問設備,對嗎?不對。有一項有趣的技術,該技術使用標準HTML,允許潛在黑客使用一個只有圖像標簽的網(wǎng)頁來實現(xiàn)嵌入式設備中的廣域網(wǎng)訪問,這使得黑客可以訪問設備和網(wǎng)絡的其他部分。
二、如何提高嵌入式系統(tǒng)安全性
第一類:設計和軟件配置1.使用安全的語言。在編寫第一行代碼之前,請針對你選擇的語言研究嵌入式軟件開發(fā)標準。例如,如果你要使用C或C ++,請首先學習MISRA-C / C ++。2.啟用安全啟動。此功能允許微處理器在執(zhí)行固件之前驗證加密密鑰和固件的位置。為了增強這種保護,您還可以啟用處理器的受信任執(zhí)行環(huán)境功能,該功能在微處理器中創(chuàng)建一個安全區(qū)域來存儲固件。3.禁用不安全和不必要的服務。要定義此類服務,你需要分析系統(tǒng)的操作。通常,此類服務的列表包括Telnet和瑣碎文件傳輸協(xié)議,調(diào)試代理,開放端口等。
第2類:內(nèi)存和應用程序安全1.限制內(nèi)存分配。實現(xiàn)一個內(nèi)存管理單元,為緩沖區(qū)、操作系統(tǒng)和應用程序分配足夠的內(nèi)存。內(nèi)存管理單元有助于保持嵌入式系統(tǒng)運行的平衡,并防止內(nèi)存緩沖區(qū)溢出。此外,盡可能將內(nèi)存切換到只讀模式。2.創(chuàng)建分區(qū)。將嵌入式系統(tǒng)的重要部分(如操作系統(tǒng)、GUI和安全應用程序)劃分為不同的分區(qū),有助于將它們彼此隔離并包含攻擊。分區(qū)可以是物理分區(qū)和虛擬分區(qū)。
第3類:通訊安全1.實施訪問控制。不受保護地訪問嵌入式系統(tǒng)的任何部分都是對黑客的公開邀請。要保護您的訪問點,請使用強憑據(jù)并對其進行加密,實現(xiàn)最小權限原則,并盡可能啟用身份驗證。2.保護通信通道。實現(xiàn)IPsec、DNS-SEC、SSH或SSL協(xié)議,并使用VPN保護與嵌入式系統(tǒng)的任何通信。部署防火墻來過濾流量也是一個很好的做法。
第4類:數(shù)據(jù)保護1.加密所有內(nèi)容。所有固件更新、傳輸和處理的數(shù)據(jù)以及存儲的憑證都必須加密。使用加密簽名來驗證從可信來源獲得的文件并檢測可疑的修改。
2.混淆目標代碼?;煜且粋€過程,使你的代碼糾纏在一起,對黑客來說不清楚,但在嵌入式系統(tǒng)中是可執(zhí)行的。甚至可以通過混淆來加速代碼的執(zhí)行。這項措施將使黑客更難對你的代碼進行反向工程。
第5類:發(fā)布和支持1.進行端到端威脅評估。完整的安全評估包括:a.從設備制造商,軟件開發(fā)人員和最終用戶的角度執(zhí)行完整的生命周期分析并識別潛在威脅b.創(chuàng)建風險矩陣,并通過每個可能的渠道估算攻擊的可能性和成功率c.自己模擬黑客攻擊或進行黑盒滲透測試2.定期更新軟件。無論為舊的嵌入式系統(tǒng)開發(fā)軟件有多么困難,這樣做總是有益的。在新的軟件版本中,你可以推出其他安全措施,以抵消新型攻擊或修補漏洞(如果在產(chǎn)品發(fā)布后發(fā)現(xiàn)一個漏洞)。別忘了添加如上所述的黑名單和白名單保護。這些方法將阻止從不受信任的來源安裝軟件。有了這些實踐,你就可以使網(wǎng)絡犯罪分子更難為嵌入式系統(tǒng)盜用你的軟件。
最后為嵌入式系統(tǒng)開發(fā)軟件是一個很大的挑戰(zhàn)。開發(fā)人員必須實現(xiàn)所有必需的功能,同時要考慮多個設備的限制并保護軟件免受攻擊。
當然,威脅可能來自不同的來源和渠道,因此在微處理器和少量內(nèi)存中安裝針對所有這些威脅的保護似乎是不可能的。
以上便是此次帶來的嵌入式相關內(nèi)容,通過本文,希望大家對嵌入式已經(jīng)具備一定的了解。如果你喜歡本文,不妨持續(xù)關注我們網(wǎng)站哦,將于后期帶來更多精彩內(nèi)容。最后,十分感謝大家的閱讀,have a nice day!