張菊玲 向思嶼 潘文分 張凌浩 唐超
(1.國網(wǎng)四川省電力公司電力科學(xué)研究院,四川成都 610000;2.國家電網(wǎng)四川省電力公司涼山供電公司,四川涼山 615000)
在科學(xué)技術(shù)水平不斷提高的時代背景下,信息技術(shù)及物聯(lián)網(wǎng)技術(shù)得到了極大的發(fā)展,應(yīng)用于我國各個領(lǐng)域。對于電力企業(yè)而言,由于信息技術(shù)的脆弱性,極易出現(xiàn)網(wǎng)絡(luò)安全問題。因此,研究電力物聯(lián)網(wǎng)終端通信協(xié)議檢測技術(shù)是十分必要的。
在當前時代背景下,落實新型數(shù)字基礎(chǔ)設(shè)施建設(shè)、推動傳統(tǒng)電網(wǎng)設(shè)備業(yè)務(wù)與信息通信新技術(shù)融合發(fā)展是電力公司發(fā)展的主要趨勢。我國大部分電力企業(yè)紛紛開展信息化轉(zhuǎn)型發(fā)展工作,但在實際過程中,由于互聯(lián)網(wǎng)技術(shù)的脆弱性,使得電力物聯(lián)網(wǎng)終端設(shè)備方面存在一定的安全問題,影響電力相關(guān)設(shè)備運作的安全性和穩(wěn)定性,甚至極易造成電力數(shù)據(jù)的泄露及篡改,不僅影響電力供應(yīng)質(zhì)量,對電力企業(yè)的發(fā)展也具有一定的影響。但是,通過使用相關(guān)技術(shù)對電力物聯(lián)網(wǎng)終端通信協(xié)議進行檢測,能夠?qū)吘墏?cè)設(shè)備安全接入認證、網(wǎng)絡(luò)信息數(shù)據(jù)的傳輸?shù)忍峁┌踩珯z測保護,并強化邊緣代理、接入平臺、匯聚節(jié)點的安全防護測評能力,以檢測技術(shù)為基礎(chǔ)構(gòu)建邊緣側(cè)整體網(wǎng)絡(luò)安全防護技術(shù)體系,從而加強對電力物聯(lián)網(wǎng)終端設(shè)備的安全保護,提高其運作的安全性和穩(wěn)定性,促進電力企業(yè)健康、可持續(xù)發(fā)展。由此可見,采取相關(guān)技術(shù)檢測電力物聯(lián)網(wǎng)重點通信協(xié)議具有極強的現(xiàn)實意義,對該技術(shù)進行研究是十分必要的。
在開展電力物聯(lián)網(wǎng)終端通信協(xié)議檢測工作時,由于互聯(lián)網(wǎng)技術(shù)的脆弱性,應(yīng)在測試開始前搭建安全的測試環(huán)境,為后續(xù)工作的開展及電力信息數(shù)據(jù)的安全提供有效保障。同時,在對安全測試環(huán)境進行搭建時,應(yīng)立足于項目的實際需求,要在滿足邊緣側(cè)設(shè)備安全接入認證、網(wǎng)絡(luò)傳輸、協(xié)議等方面的安全測試能力建設(shè)的要求上,構(gòu)建安全的固件測試環(huán)境。具體搭建內(nèi)容如下:針對邊緣物聯(lián)代理,應(yīng)使用傳感器或采集裝置組網(wǎng)對數(shù)據(jù)進行接入,開展邊緣計算分析;針對匯聚節(jié)點,相關(guān)工作人員可使用無線或有線的方式對各類傳感器或采集裝置組網(wǎng)所接入的信息數(shù)據(jù)進行接收,構(gòu)建傳感網(wǎng)絡(luò),并將其接入邊緣物聯(lián)代理的終端;使用五套數(shù)據(jù)串口轉(zhuǎn)換模式,從而保證各類傳感器及采集裝置組網(wǎng)能夠通過各種通訊方式進行接入,例如LoRa通訊方式或是ZigBee通訊方式等;使用協(xié)議一致性測試工具,用于支持各類傳感器協(xié)議的一致性測試和安全接入認證作業(yè)[1];使用協(xié)議安全模糊測試工具開展節(jié)電設(shè)備與傳感器設(shè)備之間的雙向滲透測試;應(yīng)用傳感器固件驗證電力物聯(lián)網(wǎng)終端通信協(xié)議檢測環(huán)境的安全性;應(yīng)用PC 機以及其他輔助支撐設(shè)備,保證各類測試工具的穩(wěn)定運作,為其提供正常運行的軟硬件環(huán)境,促進電力物聯(lián)網(wǎng)終端通信協(xié)議檢測作業(yè)的順利開展;準備作業(yè)指導(dǎo)書,對固件安全測試工作進行指導(dǎo),確保其正常運行[2]。
在開展固件安全檢測作業(yè)時,主要是對電力信息數(shù)據(jù)匯聚層設(shè)備進行安全防護檢查,也就是節(jié)點設(shè)備。具體而言,在對固件進行安全檢測時,主要分為兩個部分,分別是網(wǎng)絡(luò)通信安全和邊緣物聯(lián)代理及匯聚節(jié)點本體安全,該設(shè)備作為電力物聯(lián)網(wǎng)終端體系的第一道安全防線,對其進行安全檢測和分析是十分必要的。安全檢查對象主要是匯聚節(jié)點及邊緣物聯(lián)代理,在對其進行安全檢測時,可分為五方面,具體為:首先,對固件的物理安全防護進行檢查。第一,對固件設(shè)備外殼的安全防護等級檢測報告進行詳細查看,并對部署裝置等級進行核查,判斷室外部署和室內(nèi)部署的其是否滿足IP67等級和IP20等級。第二,對固件設(shè)備的閑置端口和調(diào)試接口情況進行檢查,查看其是否關(guān)閉,避免逆向工程非法接入情況的發(fā)生。第三,對固件的電磁兼容性進行把握,主要是對相關(guān)檢測報告進行查看,并對安裝位置進行檢查,使其滿足電磁兼容性試驗結(jié)果要求。其次,對固件的安全加密情況進行檢測。第一,查看固件中是否存在軟件加密模塊和硬件安全加密芯片;第二,對其進行密碼算法方面的檢查,判斷其是否滿足SM1、SM3等算法;第三,對固件設(shè)備的數(shù)字證書和密鑰管理方面進行檢查。另外,對固件設(shè)備安全認證方面進行檢測。第一,對設(shè)備的指紋認證功能進行檢查;第二,對設(shè)備固件的安全加密芯片認證功能的有效性進行檢查;第三,對設(shè)備的軟件認證功能進行檢查;第四,對固件設(shè)備的漏洞補丁程序代碼、控制指令等操作的驗證能力進行檢查。最后,對固件設(shè)備的風險上報情況進行檢測。第一,對其自身安全監(jiān)測能力進行檢查;第二,對軟件定義安全策略進行檢查;第三,對風險預(yù)警信號的輸出進行檢查。
在對電力物聯(lián)網(wǎng)終端通信協(xié)議進行安全模糊測試時,主要使用的是自動或半自動的檢測技術(shù),該技術(shù)能夠有效對操作系統(tǒng)、代碼以及軟件的問題進行檢測,尤其是對軟件的脆弱性進行檢測,幫助相關(guān)人員掌握軟件中存在的漏洞,提升應(yīng)用軟件的運作的安全性。在開展協(xié)議安全模糊測試作業(yè)時,其流程主要是進行設(shè)備的接入,配置相關(guān)文件,運行安全模糊測試工具,對目標系統(tǒng)、軟件進行全面識別,確定輸入文件,產(chǎn)生模糊數(shù)據(jù),再以此為基礎(chǔ)執(zhí)行測試工作,對目標系統(tǒng)和軟件的行為進行監(jiān)控,掌握并記錄暴露的缺陷,最后對測試結(jié)果進行反饋。一般情況下,在開展協(xié)議安全模糊測試工作時,所采用的工具一般是AFL,所謂AFL,其主要是一款基于覆蓋引導(dǎo)的模糊測試工具,通過對輸入樣本代碼的覆蓋率進行記錄,通過對樣本進行調(diào)節(jié)能夠有效提升代碼的覆蓋率,進而及時發(fā)現(xiàn)系統(tǒng)漏洞[3]。具體流程為如圖1所示。
圖1 AFL 工作流程Fig.1 AFL workflow
在使用該模糊檢測工具開展電力物聯(lián)網(wǎng)終端通信協(xié)議檢測時,應(yīng)做好準備工作,具體內(nèi)容為:第一,明確檢測目標。對于電力物聯(lián)網(wǎng)終端通信協(xié)議檢測項目而言,主要是基于輸變電設(shè)備物聯(lián)網(wǎng)傳感器數(shù)據(jù)規(guī)范的模糊數(shù)據(jù)測試,主要對邊緣物聯(lián)代理及傳感器等進行模糊測試,根據(jù)測試結(jié)果對配置文件進行合理修改,并記錄邊緣物聯(lián)代理響應(yīng),從而掌握邊緣物聯(lián)代理微應(yīng)用性能。第二,對語料庫進行構(gòu)建。在使用AFL 工具時,需要輸入種子文件,在輸入時應(yīng)選擇盡量小的體積,這主要是為了有效縮短數(shù)據(jù)處理時間,進而提高檢測效率。另外,雖然種子文件的數(shù)據(jù)可以是無意義的,但在開展實際的檢測作業(yè)時,應(yīng)盡量進行有效輸入,這是因為有效輸入不僅能夠快速找到多條執(zhí)行路徑,還能夠避免bug的產(chǎn)生。
由于電力物聯(lián)網(wǎng)終端通信協(xié)議主要是對協(xié)議進行安全模糊檢測,所以,主要是對測試輸出文件進行查看和分析。但是,在實際運行過程中,fuzz的運行是不會自己停止的,所以,相關(guān)檢測人員應(yīng)根據(jù)自身檢測需要及時結(jié)束測試。具體而言,在對電力物聯(lián)網(wǎng)終端通信協(xié)議進行安全模糊檢測時,可以將狀態(tài)窗口cycles done的字體顏色作為結(jié)束參考,具體顏色變化為黃、藍、綠。除此之外,可以通過把控錯誤的報文條數(shù)時間間隔進行把控,若是長時間沒有出現(xiàn)新問題,則可以結(jié)束測驗。在結(jié)束測試之后,該工具會將存在問題的報文以十六進制的形式記錄下來,相關(guān)人員在對其進行分析時,可以使用aflfuzz 對bug 的可利用性進行確定,或是使用triage_crashes、crashwalk、alf-collect等進行數(shù)據(jù)分析。
為有效解決電力物聯(lián)網(wǎng)終端通信協(xié)議一致性方面的問題,需要對其進行協(xié)議一致性檢測,以往的協(xié)議一致性檢測需要投入較多的人力資源,但在時代不斷發(fā)展的背景下,使協(xié)議一致性檢測工具具有自動化的功能,從而對電力物聯(lián)網(wǎng)終端通信協(xié)議一致性進行自動化、智能化的檢測。具體而言,自動化的協(xié)議一致性檢測工具主要以PC端為基礎(chǔ),后期移植在邊緣物聯(lián)代理中,在對電力物聯(lián)網(wǎng)終端通信協(xié)議進行一致性檢測時,應(yīng)做好檢測準備。主要是明確檢測設(shè)備,委托方提供協(xié)議實現(xiàn)文件,并將實現(xiàn)功能進行明確列出,最后提供操作指導(dǎo)手冊以及其他幫助文件[3]。具體流程為:第一,對目標設(shè)備進行安裝,對安裝后設(shè)備的運行狀態(tài)進行檢測;第二,通過協(xié)議一致性檢測工具連接目標設(shè)備,并對報文數(shù)據(jù)進行捕捉;第三,通過協(xié)議一致性檢測工具對報文數(shù)據(jù)進行一致性檢測,并對結(jié)果進行分析;第四,相關(guān)檢測人員根據(jù)協(xié)議實現(xiàn)文件和分析結(jié)果對電力物聯(lián)網(wǎng)終端通信協(xié)議的一致性進行判斷,最后編寫測試報告。在開展協(xié)議一致性檢測時,相關(guān)檢測人員應(yīng)明確檢測要求,對電力企業(yè)的業(yè)務(wù)數(shù)據(jù)進行全面檢測,有傳感器監(jiān)測、告警數(shù)據(jù)以及控制數(shù)據(jù)等。而且,若是在協(xié)議一致性檢測過程中輸出的報文字節(jié)過多時,檢測人員應(yīng)及時對其進行分片傳輸,通過“發(fā)送—確認—重傳”的機制進行性。分片數(shù)據(jù)協(xié)議一致性檢測測試用例如表1 所示。
表1 分片數(shù)據(jù)協(xié)議一致性檢測測試用例Tab.1 Test case of protocol conformance checking for partitioned data
最后,對協(xié)議內(nèi)容一致性情況判定結(jié)束后,若是解析內(nèi)容與協(xié)議實現(xiàn)文件內(nèi)容一致,則該協(xié)議內(nèi)容滿足一致性的要求,進而根據(jù)實際內(nèi)容編制協(xié)議一致性檢測報告。
綜上所述,通過對電力物聯(lián)網(wǎng)終端通信協(xié)議進行檢測,能夠有效解決電力物聯(lián)網(wǎng)終端固件的安全性問題、通信可靠性等問題。因此,應(yīng)利用AFL安全模糊測試等工具開展各項測試作業(yè),從而促進電力企業(yè)的安全發(fā)展。