對智能電網(wǎng)來說,因為電網(wǎng)基礎(chǔ)設(shè)施受到攻擊的幾率越來越高,各個國家穩(wěn)定的電力供應(yīng)都處在受到惡意攻擊危險之中,從而使得安全問題的重要性日益增加。對此,IT安全性尤為重要;很多方案支持端到端的通信數(shù)據(jù)加密,如:數(shù)據(jù)集中器、監(jiān)控器和數(shù)據(jù)采集器系統(tǒng)(SCADA)。對IT加密措施的關(guān)注是毋庸置疑的,因為需要確?!翱罩小眰鬏敂?shù)據(jù)的安全性。但是,即使采用強大的端到端加密也無法保護整個智能電網(wǎng)的安全:因為嵌入式設(shè)備本身易受攻擊。
加密等于安全?
雖然加密工具對于隱私保護和傳輸數(shù)據(jù)、命令的認證非常有效,但必須注意到這僅是解決方案的一部分。加密的作用在于防止被保護數(shù)據(jù)在傳輸或存儲過程中被解密或偽造。有些人認為復(fù)雜的RF或電力載波通信依賴調(diào)頻即可完全保證數(shù)據(jù)的安全性,其實此類保護很容易被攻破。假設(shè)攻擊者可以任意控制遠程電表拉合閘繼電器,那么電力公司將需要投入大量資源忙于處理故障。電力公司不但因此遭受經(jīng)濟損失,而且會帶來很大麻煩,對于那些必須使用空調(diào)的場所造成生存威脅。
那么,如何避免此類事故的發(fā)生呢?如果通信雙方都通過密鑰對通信線路上的數(shù)據(jù)進行加密、解密、簽名或驗證,從嵌入式傳感器到控制系統(tǒng)的數(shù)據(jù)加密非常關(guān)鍵,用于加密的密鑰保護也更加重要。一旦密鑰被竊取,整個網(wǎng)絡(luò)也就不再安全。智能電網(wǎng)的嵌入式終端需要一套更完備的安全方案,可以借鑒金融終端的安全技術(shù),著重于密鑰保護,采用芯片級硬件和防攻擊多重保護措施。
電力供應(yīng)的保護重點不能只放在智能電網(wǎng)的有效數(shù)據(jù)和命令驗證。蠕蟲病毒制造者了解攻擊嵌入式基礎(chǔ)設(shè)備的有效手段,即不容易被發(fā)現(xiàn)又對系統(tǒng)造成嚴重破壞。著名的“零日攻擊”利用檫除或修改系統(tǒng)程序的方式,對系統(tǒng)造成的破壞非常隱蔽。因此我們不但要關(guān)注設(shè)備的安裝,而且要關(guān)注任何一個容易遭受攻擊的編程環(huán)節(jié) (如生產(chǎn)過程)。
還有什么漏洞?
實現(xiàn)安全可靠的設(shè)計并非易事,需要花費大量的時間和對安全保護技術(shù)的深入了解。那么,這些投入值得嗎?讓我們先來分析一個掛網(wǎng)的智能電表,例如,安裝在我們自己家里、沒有保護措施的電表,外人很容易打開這樣的電表。如果電表采用的是通用MCU來處理通信和應(yīng)用功能,則很可能存在一個編程端口,攻擊者可以對他重新編程或讀取內(nèi)部信息。在有足夠資源和時間的前提下,一些人可以編寫出一個類似功能的程序,但在程序中植入獲取密鑰數(shù)據(jù)或篡改賬單的病毒。
即使掛網(wǎng)的電表都具備一定的保護措施,可在一定程度上防止篡改。我們?nèi)匀荒軌虬l(fā)現(xiàn)一些容易遭受攻擊的環(huán)節(jié)——生產(chǎn)環(huán)節(jié),所謂的“社交工程”為攻擊者侵入 IP和生產(chǎn)流程提供了機會?;ㄙM數(shù)千美金,攻擊者就有可能獲取程序,通過逆向工程修改后,將“新程序”植入產(chǎn)品。另外,攻擊者也可以將你的程序出售給競爭對手,造成巨大損失。
如何保證設(shè)備生命周期的安全性?
嚴格的產(chǎn)品生產(chǎn)流程應(yīng)該考慮從設(shè)計到生產(chǎn)每個環(huán)節(jié)的安全性,以及應(yīng)對篡改的策略。保障生命周期的安全性,需考慮以下幾點:
⒈確保拿到的芯片產(chǎn)自原廠,通過正規(guī)渠道采購來降低風險,當然,也要考慮加密技術(shù)。Maxim銷售的安全處理器和智能電網(wǎng)產(chǎn)品可以加入用戶密鑰或證書,以防他人解鎖和編程IC。
⒉保護您的IP。在工廠生產(chǎn)環(huán)節(jié)提供簽名、程序加密,協(xié)調(diào)從系統(tǒng)處理器的安全裝載,到芯片軟件解密和授權(quán)認證的每個環(huán)節(jié)。此類加密可以防止程序被克隆或破解。
⒊只運行您規(guī)定的程序。安全的程序裝載采用數(shù)字簽名的方式來驗證代碼的有效性,防止裝載或運行未經(jīng)授權(quán)的代碼。
⒋可靠通信。對新的配置、固件更新和指令進行加密和簽名,以驗證數(shù)據(jù)來源的可靠性。
⒌現(xiàn)場保護密鑰。不要將密鑰存于它處,如外部EEPROM。如果系統(tǒng)使用獨立的安全處理器和應(yīng)用處理器,應(yīng)將密鑰保存在安全處理器內(nèi),不要向外發(fā)送。以免攻擊者從線路板的通信數(shù)據(jù)中竊取密鑰。
⒍公司內(nèi)部的密鑰保護。工程師可以使用開發(fā)密鑰來開發(fā)產(chǎn)品的安全功能,產(chǎn)品級密鑰則要經(jīng)過多人簽名授權(quán)。通??梢允褂靡粋€更高級別的安全模塊完成授權(quán)。
⒎不放過每個微小漏洞。如果系統(tǒng)攻擊者僅從一塊電表竊取到重要信息,并投入大量的時間和資金研究這些信息,希望據(jù)此攻擊整個系統(tǒng)。經(jīng)驗老道的攻擊者可能打開IC封裝,從MCU的存儲器中尋找重要信息。因此,使用唯一密鑰或非對稱加密(如:橢圓曲線數(shù)字簽名)很有必要。
圖1. 產(chǎn)品生命周期內(nèi)的安全性需要考慮從開發(fā)到生產(chǎn)的每個細節(jié)。
當前電網(wǎng)的安全保護措施為攻擊者留出了很大的空間。為了讓嵌入式設(shè)備在整個生命周期內(nèi)確保安全,我們還需加強整個智能電網(wǎng)的安全設(shè)計,讓哪些攻擊者望而卻步。