保護(hù)嵌入式設(shè)備的安全正在成為一個(gè)熱門(mén)話(huà)題,尤其是當(dāng)這些設(shè)備開(kāi)始連接到互聯(lián)網(wǎng)時(shí)。黑客對(duì)連接的設(shè)備進(jìn)行逆向工程是一個(gè)真正的威脅,這種攻擊很容易做到。嵌入式開(kāi)發(fā)人員可以做些什么來(lái)提高他們?cè)O(shè)備的安全性? 以下是開(kāi)發(fā)人員需要注意的七個(gè)關(guān)鍵要點(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,而是用戶(hù)代碼
安全缺陷通常出現(xiàn)在用戶(hù)開(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)的訪(fǎng)問(wèn)是禁用的,所以為什么要擔(dān)心可能的安全缺陷呢?如果設(shè)備看不到互聯(lián)網(wǎng),那么黑客就無(wú)法訪(fǎng)問(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)訪(fǎng)問(wèn),這使得黑客可以訪(fǎng)問(wèn)設(shè)備和網(wǎng)絡(luò)的其他部分。
要點(diǎn)5——注意文本字符串
文本字符串的一個(gè)問(wèn)題是,它是文本。任何有興趣閱讀的人都可以很容易地閱讀和理解文本。這些信息有助于網(wǎng)絡(luò)專(zhuān)家破譯設(shè)備的工作原理。這個(gè)故事的寓意是要非常小心你的設(shè)計(jì)中存儲(chǔ)的未加密的信息和數(shù)據(jù)。
要點(diǎn)6——保護(hù)你的固件
保護(hù)你的嵌入式軟件免受外部查看者的攻擊。黑客需要能夠看到代碼并對(duì)其進(jìn)行逆向工程,以便輕松找到漏洞。阻止黑客獲取任何格式的代碼都會(huì)讓他們的工作變得更加困難。例如,不要提供可以下載并閃存到設(shè)備的完整二進(jìn)制固件更新映像。黑客也可以下載圖像,然后對(duì)其行為進(jìn)行逆向工程。
有時(shí),當(dāng)更新圖像不可用時(shí),黑客會(huì)購(gòu)買(mǎi)設(shè)備并從硬件上下載代碼。防止黑客這樣做的最好方法是保護(hù)嵌入式閃存。許多微控制器和微處理器都有保護(hù)flash不被讀取的方法。采用這兩種方法不會(huì)使設(shè)備絕對(duì)安全,但它們會(huì)使設(shè)備更難被利用。
結(jié)論
嵌入式軟件工程師需要關(guān)注安全性。推向市場(chǎng)、添加產(chǎn)品特性和創(chuàng)建健壯產(chǎn)品的壓力經(jīng)常讓開(kāi)發(fā)人員爭(zhēng)先恐后地推出產(chǎn)品。但是一旦這種產(chǎn)品進(jìn)入世界,沒(méi)有人知道它會(huì)存在多久,也不知道它會(huì)如何被用于邪惡的目的。因此,忽視哪怕是最簡(jiǎn)單的聯(lián)網(wǎng)設(shè)備的安全隱患,都可能導(dǎo)致為黑客提供他們真正制造麻煩所需的計(jì)算能力。安全性可能不是嵌入式開(kāi)發(fā)人員的最高優(yōu)先級(jí),但現(xiàn)在至少應(yīng)該把它放在優(yōu)先級(jí)列表上。