PRPL基金會(Prpl Foundation)日前發(fā)布了關(guān)于如何構(gòu)建物聯(lián)網(wǎng)產(chǎn)品和同類系統(tǒng)的基礎(chǔ)指導(dǎo)手冊。這本圖文并茂的指導(dǎo)手冊并不涉及處理器架構(gòu)之類的深度解讀,只要接觸過ARM處理器,有X86和MIPS基礎(chǔ)的技術(shù)人員都能夠看得懂。
手冊旨在幫助進(jìn)行聯(lián)網(wǎng)設(shè)備產(chǎn)品設(shè)計的技術(shù)人員,做出不受惡意代碼攻擊的物聯(lián)網(wǎng)設(shè)備。如果你已經(jīng)是物聯(lián)網(wǎng)領(lǐng)域的技術(shù)大牛,那這本僅僅55頁的小冊子或許幫不上你什么大忙,但如果你是想涉足該領(lǐng)域的新人,這或許是一本不錯的入門讀物。
手冊以免費(fèi)PDF的形式發(fā)布,很多都集中在軟件方面,介紹如何構(gòu)建底層引導(dǎo)裝載程序、操作系統(tǒng)、應(yīng)用程序和可選配的管理程序,以確保應(yīng)用程序中從固件復(fù)位向量到最終終止輸出都執(zhí)行的是正確的代碼。我們都不希望任何的部分內(nèi)核或驅(qū)動交換采用的是未知的代碼,所以我們就需要一套構(gòu)建ROOT級可信應(yīng)用的指導(dǎo)書,來防止此類情況的發(fā)生。
手冊倡導(dǎo)安全分離
換句話說,就是將每個功能都隔離開來,不允許相互干涉。為了保持運(yùn)行的快速和穩(wěn)定,為微控制器和資源相對緊張的系統(tǒng)編寫的用于嵌入式工程的軟件,往往把什么東西都堆在一起,但是對于安全來說,簡直是一團(tuán)糟。然而,現(xiàn)代芯片早就可以使用內(nèi)存保護(hù)機(jī)制和固件域?qū)⒊绦虼a分為圍墻花園(walled gardens),那為什么不利用呢?
關(guān)鍵點是調(diào)試
作為程序員,如果設(shè)備設(shè)計為阻止人們深入到系統(tǒng)的最底層,那又該如何進(jìn)行單步指令調(diào)試、設(shè)置斷點并捕捉BUG呢?那么又該如何在受限制的環(huán)境中,對產(chǎn)品進(jìn)行安全測試,并解決編程錯誤呢?該手冊都給出了相應(yīng)的建議。
我們前面強(qiáng)調(diào)過,這本手冊并不是一本硬件參考手冊,它只是對物聯(lián)網(wǎng)的安全狀態(tài)進(jìn)行了概述,并沒有對物聯(lián)網(wǎng)設(shè)備的構(gòu)建方法和原理進(jìn)行深入的解讀。但這并不妨礙它一經(jīng)發(fā)布就在業(yè)內(nèi)倍受好評。
完整報告下載:
http://106.186.118.91/201601/prpl.pdf