【導(dǎo)讀】物聯(lián)網(wǎng)的安全問題一向都是熱門關(guān)注的焦點。嵌入式開發(fā)過程中尤其要注意物聯(lián)網(wǎng)設(shè)計安全。在這里小編提出嵌入式開發(fā)的三大物聯(lián)網(wǎng)安全守則,希望未來的設(shè)計工作者能夠謹(jǐn)慎對待物聯(lián)網(wǎng)的設(shè)計安全,謹(jǐn)遵三大守則。
人們對物聯(lián)網(wǎng)的安全性有著廣泛的高度關(guān)注?;ヂ?lián)網(wǎng)中充斥著大批游手好閑的人,他們以入侵網(wǎng)絡(luò)設(shè)備為樂,這是不諍的事實。但許多嵌入式開發(fā)團(tuán)隊在之前從來沒有處理過安全問題,且仍在試圖決定什么是他們需要做的,如果有的話。
為了要獲得有許多物聯(lián)網(wǎng)設(shè)計經(jīng)驗人士的觀點,筆者日前采訪了物聯(lián)網(wǎng)平臺制造商Electric Imp的共同創(chuàng)辦人和首席執(zhí)行長Hugo Fiennes,他日前才在今年的ESC Boston中針對物聯(lián)網(wǎng)的安全發(fā)表過演講。他提出了很多建議,其中最重要的三條守則將是一個很好的起始點,讓開發(fā)團(tuán)隊可以順利地邁向物聯(lián)網(wǎng)的安全大道。
第一,制定一份計劃,讓你的設(shè)備能夠以安全的方式在遠(yuǎn)程更新的固件。安全領(lǐng)域的市場態(tài)勢一直都在不斷地變化。那些今天可以壓制攻擊者的方法,明天可能就不管用了。但客戶還是會有合理的期望,希望他們所購買的設(shè)備將可提供一段很長時間的良好服務(wù),而且不會帶來許多麻煩。所以,幾乎可以肯定是,物聯(lián)網(wǎng)設(shè)備將隨著時間的推移而需要一種安全的更新方法,因此進(jìn)行這種更新的設(shè)施,將會是其設(shè)計中的一個基本部分。對物聯(lián)網(wǎng)而言,那種賣了就忘(sell-and-forget)的時代已經(jīng)結(jié)束了。
此一規(guī)則會產(chǎn)生多方面的影響。這種產(chǎn)品需要某種形式的支持服務(wù),以創(chuàng)建、管理,并提供所需的更新,以及一種可提供這種服務(wù)的安全通道,而這種服務(wù)需要以產(chǎn)品開發(fā)的一部分來規(guī)畫。而這項產(chǎn)品也要設(shè)計成在接受更新之前,可驗證其所接收到的更新通知,且要在更新在加載時,還能夠繼續(xù)運(yùn)作,且在理想情況下,如果由于某種原因,此一更新為使用者帶來了問題,還要能夠恢復(fù)回已知的良好狀態(tài)(a known good state)。且這整個過程都應(yīng)該自動完成的。
其次,在設(shè)計的早期步驟就應(yīng)該把安全性納入考慮。安全并不是那種你只要將它插入工作系統(tǒng)中,并讓它即刻生效的東西。我們不能把它視為是一種事后添加的功能。它必須是裝置整體設(shè)計中的一部份,而不是圍繞在外的裝甲鋼板。否則,該設(shè)計就會存在著一條你所不知道的攻擊途徑。檢視一下像數(shù)據(jù)流、功能集、和設(shè)定流程等,以確保你在設(shè)計的各個方面都已將安全的需求和所涉及的問題都已考慮在內(nèi)。
當(dāng)然,沒有那一種安全是完美的,但它要夠堅固,讓攻擊該設(shè)計的成本會非常高。并不是所有的攻擊是一樣的,有些會打開IC的封裝,再以電子顯微鏡讀出其閃存中的內(nèi)容,你可能不需要對此提供保護(hù)。你需要將決定提供多少保護(hù),所愿意承擔(dān)的風(fēng)險等作為設(shè)計過程中考慮的一部分。
第三,請確保有足夠的預(yù)算來實現(xiàn)安全性。對物聯(lián)網(wǎng)的安全性而言,具有成本意識的管理充其量只是口惠而實不至的,這種情況經(jīng)常會發(fā)生。最糟的是,安全并不是一具有市場性的功能的這樣的想法,他們也表示認(rèn)同;或以"沒有人會想"攻擊這樣的產(chǎn)品來自我說服。于是,即使有的話,他們也并未將資金正確地配置在實現(xiàn)安全性上。
這種失敗讓產(chǎn)生嚴(yán)重后果的可能性大增。對無法在其設(shè)備上提供充分安全性一事,消費(fèi)產(chǎn)品的開發(fā)人員早已被認(rèn)為是要對此負(fù)責(zé)的。即使沒有財務(wù)上的沖擊,安全失敗也會連累產(chǎn)品 (和公司) 的聲譽(yù),長遠(yuǎn)來看,對銷售還是有影響的。即使該產(chǎn)品并沒有吸引潛在攻擊者的誘因,像是并沒有有價值的數(shù)據(jù)或控制的區(qū)域,但單是它是一款可連接到網(wǎng)絡(luò)上的智能型設(shè)備,就有可能會被有心人士利用,拿它來當(dāng)作殭尸網(wǎng)絡(luò)的一環(huán),或是把它當(dāng)作是一個后門進(jìn)入點,藉由此一進(jìn)入點進(jìn)入一個擁有貴重數(shù)據(jù)的網(wǎng)絡(luò)。
開發(fā)人員可以采取許多具體的行動來確保其物聯(lián)網(wǎng)的設(shè)計更加安全,但前文所指出的這三個步驟卻是建立這些行動的基礎(chǔ)。如果你還沒有規(guī)劃可以在現(xiàn)場升級,如果你沒有從頭開始就把安全性納入考慮,如果你沒有編入足夠的預(yù)算來實現(xiàn)所需的安全性,那么,其它的行動就顯得毫無意義。你可能可以完成一項設(shè)計,在它發(fā)表的當(dāng)時看起來似乎擁有足夠的安全性,但它可能無法承受那些來自網(wǎng)絡(luò)連接另一端的那么多的有心人士的覬覦目光,他們都在伺機(jī)而動,隨時準(zhǔn)備侵入你的產(chǎn)品之中。
相關(guān)閱讀:
誰能保證物聯(lián)網(wǎng)邊緣節(jié)點的安全性?
物聯(lián)網(wǎng)產(chǎn)品隱私設(shè)計為何如此重要?
用WiFi路由器給物聯(lián)網(wǎng)設(shè)備“充點電”!