上一篇寫了嵌入式系統(tǒng)的12條常見攻擊方式,借以希望可以幫助防止或防止特定類型的攻擊。在這一篇中,針對嵌入式系統(tǒng)網(wǎng)絡(luò)安全11條防護(hù)措施進(jìn)行分析,也希望能有效保護(hù)嵌入式硬件和軟件。
在編碼之前,請學(xué)習(xí)嵌入式軟件開發(fā)的行業(yè)標(biāo)準(zhǔn),了解有效的安全措施,并制定切實(shí)可行的方法。
嵌入式系統(tǒng)網(wǎng)絡(luò)安全11條防護(hù)措施
第一類:軟件設(shè)計(jì)和配置
1、使用安全的語言
在編寫第一行代碼之前,請注意所選語言學(xué)習(xí)嵌入式軟件開發(fā)標(biāo)準(zhǔn)。例如,要使用C或C++,請考慮misra-C/C++。
2、此功能允許微處理器在運(yùn)行加密密鑰和連接器之前驗(yàn)證位置
您還可以設(shè)置CPU環(huán)境功能的可靠運(yùn)行,以改善這種保護(hù)。此功能允許在微處理器上創(chuàng)建安全區(qū)域來存儲(chǔ)固件。
3、禁止提供不安全和不必要的服務(wù)
要定義這些服務(wù),必須分析系統(tǒng)操作。通常,這些服務(wù)的列表包括telnet和scrusoft文件傳輸協(xié)議、調(diào)試代理、開放端口等。
第二類:內(nèi)存和應(yīng)用程序安全
4、限制內(nèi)存分配
創(chuàng)建內(nèi)存管理模塊,為緩沖區(qū)、操作系統(tǒng)和應(yīng)用程序分配足夠的內(nèi)存。內(nèi)存管理模塊有助于在嵌入式系統(tǒng)運(yùn)行時(shí)保持平衡,并防止內(nèi)存緩沖區(qū)溢出。您還可以將內(nèi)存轉(zhuǎn)換為只讀模式。
5、創(chuàng)建分區(qū)
將嵌入式系統(tǒng)的主要組件(如操作系統(tǒng)、GUI和安全程序)劃分為不同的區(qū)域有助于隔離和抑制攻擊。分區(qū)可以是物理分區(qū)或虛擬分區(qū)。
第三類:通信安全
6、訪問控制
對嵌入式系統(tǒng)任何部分的無保護(hù)訪問也是黑客的公開請求。為了保護(hù)接入點(diǎn),使用強(qiáng)證書并對其進(jìn)行加密,以實(shí)現(xiàn)最小訪問原則。如果可能,請使用身份驗(yàn)證。
7、保護(hù)通信通道
實(shí)施IPSec、DNS sec、SSH或SSL協(xié)議,并使用VPN保護(hù)內(nèi)置系統(tǒng)消息。安裝防火墻來過濾流量也是一個(gè)很好的例子。
第四類:數(shù)據(jù)保護(hù)
8、加密所有內(nèi)容
所有固件更新、數(shù)據(jù)傳輸、處理和存儲(chǔ)的文檔都必須加密。使用加密簽名審查來自可信來源的文件,并識(shí)別可疑更改。
9、混淆目標(biāo)代碼
混淆是連接代碼的過程。黑客并不十分清楚,但它可以應(yīng)用于嵌入式系統(tǒng)。即使混淆了,也有必要提高代碼的執(zhí)行速度。這一措施將使黑客難以恢復(fù)代碼。
第五類:釋放和支持
10、執(zhí)行最終威脅分析
綜合安全評估應(yīng)包括:從硬件制造商、軟件開發(fā)人員和最終用戶的角度完成生命周期分析。
10.1、融洽識(shí)別潛在威脅;
10.2、生成風(fēng)險(xiǎn)矩陣,以評估每個(gè)通道的攻擊概率和成功率;
10.3、進(jìn)行黑客模擬或黑盒滲透測試。
11、定期更新軟件
無論為舊的嵌入式系統(tǒng)開發(fā)軟件有多困難,它總是有用的。新版本的軟件可以引入額外的安全措施來抵消新的攻擊或修復(fù)漏洞。(產(chǎn)品發(fā)布后發(fā)現(xiàn)的漏洞)別忘了添加上述黑名單和白名單進(jìn)行保護(hù)。這種方法可以防止安裝不可靠的軟件。
這種實(shí)用的方法可以使網(wǎng)絡(luò)罪犯很容易通過嵌入式系統(tǒng)竊取您的軟件。
嵌入式系統(tǒng)的軟件開發(fā)是一項(xiàng)艱巨的任務(wù)。開發(fā)人員應(yīng)考慮各種硬件的限制,并執(zhí)行所有必要的功能,以保護(hù)軟件免受攻擊。當(dāng)然,威脅可能來自不同的來源和途徑,因此微處理器和少量內(nèi)存似乎無法保護(hù)所有這些威脅。
好了,寫到這里也算是把嵌入式系統(tǒng)網(wǎng)絡(luò)安全11條防護(hù)措施都寫完了,有更好的建議或者需要完善的地方,有勞提出。只有不斷地改善、完善,才能把網(wǎng)絡(luò)安全做的更好!