• 招生咨詢(xún)熱線(xiàn):4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢(xún)熱線(xiàn)
4008-569-579
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料 > 嵌入式開(kāi)發(fā):嵌入式系統(tǒng)安全中的10個(gè)致命錯(cuò)誤
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料>嵌入式開(kāi)發(fā):嵌入式系統(tǒng)安全中的10個(gè)致命錯(cuò)誤

嵌入式開(kāi)發(fā):嵌入式系統(tǒng)安全中的10個(gè)致命錯(cuò)誤

來(lái)源:廣州達(dá)內(nèi)教育        時(shí)間:2023-05-30        熱度:24℃        返回列表

  對(duì)于嵌入式系統(tǒng)來(lái)說(shuō),這是一個(gè)不幸的事實(shí):一旦部署到野外,它們永遠(yuǎn)不會(huì)100%安全,尤其是在世界變得更加互聯(lián)的情況下。這一事實(shí)由于應(yīng)用于這些系統(tǒng)的安全工程方法在歷史上的松懈而更加復(fù)雜。大多數(shù)嵌入式開(kāi)發(fā)設(shè)備專(zhuān)注于特定設(shè)備的軟件,并且經(jīng)常忽略操作系統(tǒng)和較低級(jí)別的組件。


  隨著全球數(shù)十億嵌入式系統(tǒng)的使用和日益互聯(lián),攻擊者有巨大的動(dòng)機(jī)設(shè)計(jì)出新的、隱蔽的方法來(lái)提取敏感數(shù)據(jù)和/或重新利用現(xiàn)場(chǎng)設(shè)備謀取私利。因此,設(shè)備本身和特定功能的軟件通常需要隨著時(shí)間的推移進(jìn)行更新,以應(yīng)對(duì)新的安全威脅。


  讓我們來(lái)分析10個(gè)致命的安全錯(cuò)誤,它們可能會(huì)危及我們業(yè)務(wù)、金融和關(guān)鍵基礎(chǔ)架構(gòu)中的嵌入式系統(tǒng)。


  1.讓你的敏感數(shù)據(jù)和應(yīng)用程序處于安全狀態(tài)


  罪犯可以讀取、提取和利用你以明文形式留下的數(shù)據(jù)和應(yīng)用程序。對(duì)數(shù)據(jù)和應(yīng)用程序進(jìn)行加密是不夠的;你還必須擔(dān)心加密密鑰存儲(chǔ)的位置和方式以及使用的算法。假設(shè)我們可以使用SSL/TLS來(lái)保護(hù)傳輸中的數(shù)據(jù)是錯(cuò)誤的,因?yàn)槲覀兘?jīng)常忘記相同的數(shù)據(jù)存儲(chǔ)在邊緣設(shè)備和云平臺(tái)的本地。


  2.在沒(méi)有安全、經(jīng)過(guò)身份驗(yàn)證的引導(dǎo)的情況下啟動(dòng)系統(tǒng)


  網(wǎng)絡(luò)犯罪分子可以對(duì)未使用安全引導(dǎo)過(guò)程引導(dǎo)的設(shè)備進(jìn)行根攻擊。此外,它們還可以更改引導(dǎo)加載程序、操作系統(tǒng)、UEFI

BIOS和硬件/軟件配置,或者用惡意版本替換它們。更糟糕的是,即使嵌入式開(kāi)發(fā)人員完全重新安裝主機(jī)操作系統(tǒng),其中一些惡意修改也會(huì)持續(xù)存在。


  除了在硬件基礎(chǔ)上實(shí)現(xiàn)經(jīng)過(guò)身份驗(yàn)證的安全引導(dǎo)外,你無(wú)法保護(hù)你的引導(dǎo)序列免受攻擊,這些攻擊會(huì)篡改引導(dǎo)加載程序,并隨后危及系統(tǒng)的網(wǎng)絡(luò)彈性。此外,缺乏安全引導(dǎo)也會(huì)導(dǎo)致各種各樣的攻擊和設(shè)備重新調(diào)整用途。




  3.允許未經(jīng)授權(quán)的軟件訪(fǎng)問(wèn)未經(jīng)授權(quán)的組件


  犯罪黑客可以利用一個(gè)組件中的漏洞或隱含信任來(lái)泄漏關(guān)鍵信息,如內(nèi)存內(nèi)容和地址,從而實(shí)現(xiàn)多種二階攻擊。


  在不限制僅訪(fǎng)問(wèn)完成任務(wù)所需的組件的情況下,你會(huì)留下意外的漏洞,使攻擊者能夠從一個(gè)組件轉(zhuǎn)到另一個(gè)組件。例如,共享硬盤(pán)驅(qū)動(dòng)器或內(nèi)存組件的兩個(gè)軟件可以通過(guò)該硬件進(jìn)行通信(可能通過(guò)利用各種側(cè)通道攻擊),利用其中一個(gè)漏洞訪(fǎng)問(wèn)另一個(gè)。


  4.忽視或錯(cuò)誤配置集裝箱化或隔離機(jī)制


  錯(cuò)誤配置軟件容器或忽略軟件隔離可能會(huì)允許網(wǎng)絡(luò)罪犯升級(jí)權(quán)限并獲得對(duì)系統(tǒng)的未經(jīng)授權(quán)的根級(jí)別訪(fǎng)問(wèn)(完全控制)。所謂的容器和/或VM突破使攻擊者能夠內(nèi)省和修改系統(tǒng)上其他容器的內(nèi)容,并可能以非預(yù)期方式與基于云的服務(wù)交互。


  5.留下太多的攻擊面


  使用過(guò)多的接口和功能擴(kuò)充軟件越多,攻擊面就越大—攻擊者可以利用漏洞攻擊你的系統(tǒng)。類(lèi)似地,操作系統(tǒng)映像或應(yīng)用程序包中包含的庫(kù)越多,攻擊面越大,嵌入式開(kāi)發(fā)人員更新、修補(bǔ)和解決各種可能的安全漏洞的負(fù)擔(dān)就越重。犯罪黑客只需要掃描你的系統(tǒng)就知道攻擊什么。


  通過(guò)采用最低限度的軟件開(kāi)發(fā)方法,僅添加實(shí)現(xiàn)軟件任務(wù)所需的功能,網(wǎng)絡(luò)攻擊者將更難利用你的代碼為自己謀利。


  6.發(fā)放不受限制的特權(quán)


  當(dāng)你給予應(yīng)用程序比所需更多的訪(fǎng)問(wèn)權(quán)限(自主訪(fǎng)問(wèn)控制、系統(tǒng)級(jí)權(quán)限、命名空間等)時(shí),網(wǎng)絡(luò)罪犯可以利用該訪(fǎng)問(wèn)權(quán)限解鎖權(quán)限并操縱你的軟件。一旦攻擊者利用多余的權(quán)限獲得管理權(quán)限,他們可能會(huì)在網(wǎng)絡(luò)上橫向移動(dòng),獲得對(duì)云基礎(chǔ)設(shè)施的訪(fǎng)問(wèn),從那里可能獲得對(duì)所有設(shè)備的訪(fǎng)問(wèn),從而執(zhí)行拒絕服務(wù)攻擊、降低性能、注入惡意軟件等。


  有一些簡(jiǎn)單但相對(duì)未使用的機(jī)制可用于限制對(duì)各種權(quán)限的訪(fǎng)問(wèn)。在Linux環(huán)境中最簡(jiǎn)單的情況下,我們可以從標(biāo)準(zhǔn)用戶(hù)/組訪(fǎng)問(wèn)控制開(kāi)始,添加在使用后丟棄功能的能力(可以使用特權(quán)端口啟動(dòng)服務(wù)),然后進(jìn)入Linux環(huán)境中的各種其他安全選項(xiàng)集。


  雖然我們特別關(guān)注邊緣設(shè)備上的無(wú)限制權(quán)限,但同樣的概念也適用于整個(gè)DevOps管道、云基礎(chǔ)設(shè)施和企業(yè)網(wǎng)絡(luò)。


  7.假定信任并允許未經(jīng)驗(yàn)證的通信


  你必須主動(dòng)檢查和確認(rèn)安全協(xié)議,只向經(jīng)過(guò)身份驗(yàn)證的用戶(hù)和系統(tǒng)提供信任,并且只使用加密通道與這些用戶(hù)和系統(tǒng)通信。當(dāng)然,還有另一個(gè)隱含的假設(shè),即我們的設(shè)備本身是可信的。如果我們與之通信和交換數(shù)據(jù)的設(shè)備不可信,那么我們必須解決各種其他問(wèn)題,如本地?cái)?shù)據(jù)加密、基于硬件的密鑰管理和安全引導(dǎo)。


  使用默認(rèn)設(shè)置或易受攻擊的協(xié)議會(huì)導(dǎo)致未經(jīng)授權(quán)的訪(fǎng)問(wèn),并導(dǎo)致惡意流量進(jìn)入你的系統(tǒng)。




  8.未能檢查輸入


  當(dāng)嵌入式開(kāi)發(fā)人員不檢查輸入時(shí),攻擊者可以將格式錯(cuò)誤的數(shù)據(jù)引入系統(tǒng),導(dǎo)致下游組件出現(xiàn)故障。使用格式錯(cuò)誤數(shù)據(jù)的常見(jiàn)攻擊包括SQL注入和緩沖區(qū)溢出。


  程序員檢查從web表單提交到RF

capture的所有類(lèi)型數(shù)據(jù)的輸入,以確??尚庞脩?hù)向其軟件發(fā)送預(yù)期數(shù)據(jù)。預(yù)期數(shù)據(jù)包括數(shù)據(jù)的格式和內(nèi)容。輸入驗(yàn)證可防止不受信任的用戶(hù)發(fā)送帶有惡意意圖的意外數(shù)據(jù),并假定所有非源于應(yīng)用程序本身的數(shù)據(jù)都不受信任。


  9.安全編碼中錯(cuò)失的機(jī)會(huì)


  易受攻擊的編碼實(shí)踐會(huì)讓軟件缺陷在開(kāi)發(fā)過(guò)程中不被發(fā)現(xiàn),更糟糕的是,許多此類(lèi)實(shí)踐和訪(fǎng)問(wèn)可能導(dǎo)致攻擊。如果你不使用安全的開(kāi)發(fā)工具和技術(shù),網(wǎng)絡(luò)犯罪分子將經(jīng)常突破你軟件中的這些漏洞,并可能利用你的漏洞訪(fǎng)問(wèn)其他網(wǎng)絡(luò)和組織。


  但通過(guò)安全的編碼工作流和自動(dòng)化測(cè)試,你可以在開(kāi)發(fā)過(guò)程中盡早發(fā)現(xiàn)并修復(fù)漏洞。請(qǐng)記?。喊踩_(kāi)發(fā)過(guò)程不是解決方案,并且需要一起實(shí)踐。


  10.將希望作為一項(xiàng)安全戰(zhàn)略


  對(duì)于有限的安全人員來(lái)說(shuō),手動(dòng)查看事件日志、搜索攻擊和違規(guī)跡象所需的時(shí)間太長(zhǎng)。相反,你需要利用自動(dòng)化工具,不斷監(jiān)視你的系統(tǒng),并檢查你的記錄,尋找入侵的歷史證據(jù)。當(dāng)然,這一切都假設(shè)我們記錄了正確的事情,有足夠的細(xì)節(jié)來(lái)做出決定。


  現(xiàn)代技術(shù)可以接收和審核整個(gè)系統(tǒng)的日志集合,行為工具可以識(shí)別網(wǎng)絡(luò)和軟件中的可疑活動(dòng)。嵌入式開(kāi)發(fā)人員甚至可以從使用當(dāng)前威脅特征識(shí)別攻擊的惡意軟件掃描中獲益。通過(guò)結(jié)合這些努力,你可以繪制完整的安全狀態(tài)圖,并隨時(shí)更新。

電話(huà)咨詢(xún)

電話(huà)咨詢(xún)

咨詢(xún)電話(huà):
4008-569-579
回到頂部

回到頂部