2012年末,嵌入式系統(tǒng)的被攻擊的新聞在媒體上頻繁出現(xiàn),許多嵌入式設(shè)備均傳出被發(fā)現(xiàn)安全漏洞,進(jìn)而遭到攻擊,并導(dǎo)致嚴(yán)重的后果。這些設(shè)備包括打印機(jī)、門市收銀系統(tǒng)或大型的SCADA系統(tǒng)。攻擊造成的危害包括打印機(jī)可能被更改系統(tǒng)設(shè)定值、被存取欲打印的敏感數(shù)據(jù);而結(jié)賬用的卡片閱讀機(jī)一旦被黑客攻破,將導(dǎo)致消費(fèi)者的信用卡、結(jié)賬卡資料外泄等情形。
提供金融終端的安全芯片廠商Maxim Integrated營(yíng)銷經(jīng)理Christophe Tremlet認(rèn)為,在目前針對(duì)嵌入式設(shè)備而來(lái)的攻擊當(dāng)中,故障注入攻擊(Fault injection attacks)算是較難應(yīng)付的一種,它會(huì)改變?cè)O(shè)備的正常運(yùn)作。攻擊者可以借助制造微控制器的主電源引腳上的毛刺,來(lái)修改執(zhí)行程序。因此一個(gè)安全的微控制器必須能確保執(zhí)行程序不被改變。
Tremlet也對(duì)嵌入式設(shè)備商提出建議,若要提升系統(tǒng)安全可以從以下四方面著手:首先,對(duì)要被保護(hù)的資產(chǎn)以及潛在的威脅作一個(gè)徹底的分析?!拔覀円Wo(hù)什么且為什么要保護(hù)它?”,“攻擊者的預(yù)算與技能是什么?”--這些問(wèn)題都是應(yīng)該去討論的部分。因?yàn)檫@將決定所需的保護(hù)等級(jí)。
當(dāng)以上的問(wèn)題已有答案,此時(shí)就可建立安全目標(biāo)和安全功能,且也將在此時(shí)確定預(yù)期的強(qiáng)度。舉例來(lái)說(shuō),加密算法密鑰長(zhǎng)度的選擇取決于期望的對(duì)抗性(resistance)水平。通常使用公認(rèn)和公開(kāi)技術(shù)(如標(biāo)準(zhǔn)算法)是比較好的方式。
一旦上述條件已建立,下一步就該執(zhí)行先前確定的功能,并進(jìn)行全面測(cè)試。許多安全弱點(diǎn)來(lái)自于執(zhí)行錯(cuò)誤(bugs)或漏洞,使用加密庫(kù)或安全I(xiàn)C可降低這種風(fēng)險(xiǎn)發(fā)生。最后一個(gè)步驟就是檢查驗(yàn)證所有涵蓋的威脅。將系統(tǒng)交由外部安全實(shí)驗(yàn)室來(lái)進(jìn)行檢測(cè),會(huì)是較理想的做法。