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