劉祥國,張 營,王中龍,杜慧珺,周 佳
(1.國網山東省電力公司泰安供電公司,山東 泰安 271000;2.國網山東省電力公司寧陽縣供電公司,山東 泰安 271400)
隨著我國電網運行網絡規模的快速擴大,電網系統的用戶數量不斷增加,電網實時運行中產生大量有價值的數據。為確保電網數據安全,如何開展具有內生安全效應的主動安全防護體系至關重要[1-4]。
目前,我國各部門智能電網數據的管理水平參差不齊,數據資產化存在諸多風險,因此,風險管理成為智能電網數據資產化工作推進的必要環節[5-7]。針對智能電網數據安全,已有研究大多結合大數據技術,解決數據實時處理、分析、關聯、分類、檢索和還原等問題,實現安全可視分析、多源事件數據關聯、用戶行為分析等數據安全分析功能[8-12],缺乏對多類對象(如用戶、終端、應用系統、數據庫等)審計記錄的關聯分析,難以進行有效的審計追蹤,反向追溯到行為人的行為[13-15]。當前,新一代信息系統的安全管控對象為非結構化數據,先建立數據分類和數據分級的方法,再將種類繁多的數據資產依據制定好的方法設置級別,使用不同安全防護工具在數據的各個傳輸過程中進行防護,同時提供相關安全取證視圖[16-17],這種分類方法對結構化數據的處理有待進一步的優化。隨著軟件項目上云成為主流,建立以云計算環境為核心的“自然資源云”平臺,服務器由傳統的物理機變成云模式下的虛擬機。因此,安全防護也從傳統的防護模式擴展到基于云計算、移動辦公等環境的具有新特性的防護體系[18-21]。
針對上述問題,為更好地應對電網在線運行平臺運行時數據安全的問題,在“輸、變、配”三大類關鍵系統運行中,采用基于運行時攻擊自免疫的技術,把守護程序和應用程序融為一體。守護程序進行實時檢測和阻斷安全攻擊,確保應用程序具備自我免疫和保護能力。
為保障電力系統運行安全,電網企業每年都會組織大量攻防實戰。針對現有應用數據防護系統存在問題,通過實驗,對攻擊方和防守方實際應用進行分析,總結為以下4 種共性問題。
1)攻擊數據訪問者追蹤溯源僅能標識網際互聯協議(Internet Protocol,IP)。
傳統身份溯源追蹤方式采用用戶注冊的身份標識號(Identity Document,ID)、Cookie 和IP 等信息,但就業務系統而言,一個用戶可以注冊多個ID,而且攻擊者可以不斷更換IP 地址,僅能對IP 地址進行追溯和攔截,隨著電網企業數據資產互聯網化,基于IP 的防御策略難以滿足現狀。因此,在不修改業務系統源代碼的前提條件下,引入非侵入式軟探針,通過設計實現瀏覽器指紋追溯模型,解決地址追蹤定位問題,具體模型設計如圖1 所示。

圖1 瀏覽器指紋追蹤模型Fig.1 Browser fingerprint tracing model
由圖1 可知,用戶訪問系統后,Canvas 畫布獲得瀏覽器指紋,通過打印預覽、小型文本和畫布記錄相似指紋,通過指紋追蹤算法,分析相似指紋閾值(按照指紋相似度閾值是否大于90%的取值原則),通過圖像處理引擎給數據訪問者分配一個唯一身份指紋ID,最終實現對每一個用戶訪問的數據追蹤溯源。
2)數據庫加密流量無法審計。
數據庫系統采用加密傳輸方式進行數據交換。然而數據庫安全審計裝置需通過流量鏡像方式對數據庫傳輸內容進行安全審計,因此加密流量和數據庫審計產生互斥性。數據庫審計裝置在遇到加密流量后無法審計數據庫數據。因此,設計實現非侵入軟探針技術方案,通過字節碼插樁等技術在應用層對數據資產進行安全審計,同時提取數據請求及真實的結構化查詢語言(Structured Query Language,SQL)語句、訪問頻次和訪問時間元數據,對加密流量實現審計應用。
3)復雜的電網數據資產運行環境。
電網及下轄各公司面臨的研發環境和運行環境不盡相同,被監測目標的硬件配置和計算能力不同,數據資產的存在形態不同,各個監測點的網絡環境不同。針對復雜的數據資產運行環境,設計各個環境下的監測Agent 技術結構、監測策略和部署方案,最終實現適用于復雜數據資產運行環境的安全監測技術。
4)新型數據攻擊手段檢測困難。
伴隨著云計算的普及、新的DevOps 流程的發展、物聯網設備的蔓延、供應鏈的復雜交織以及數字基建的涌現,新一代網絡攻擊手段也在持續演進,有效的威脅檢測與響應能力作為重要的攻防手段,是提升實戰化對抗能力的關鍵因素。
隨著新型數據攻擊手段的更新,諸如鯨釣攻擊、數據勒索、零日攻擊、供應鏈攻擊等,作為重要的攻防手段,有效的威脅檢測與響應能力是提升實戰化對抗能力的關鍵因素。針對新興的、嚴峻的威脅攻擊手段,電網公司面臨如下安全挑戰。
一是新型攻擊手段難以發現。由于國家電網很多在線運行系統暴露在互聯網之外,現有新型攻擊手段多數能繞過防火墻、殺毒軟件等傳統安全檢測設備,僅沿用過去的防御手段,將產生防護盲區和漏洞。
二是攻擊鏈難以回溯。通常,安全團隊能夠發現內部(或橫向)異常,但是難以完整地復現整個攻擊過程,包括攻擊如何產生、如何進入、控制對象、橫向內部攻擊對象等信息。由于無法還原整個攻擊鏈,導致數據安全維護人員不能掌握整個攻擊的發展趨勢,在后續的防御中比較被動。
三是攻擊者信息難以溯源。安全防守方對攻擊誘發因素難以掌握和攻擊者的背景等信息,安全運維人員面臨巨大的挑戰。
綜上所述,在面對高可疑攻擊行為時,對抗的關鍵點在于怎樣去快速驗證、研判以及擴線分析。防守方取勝的要訣是在程序執行期間,使程序能夠自我監控和識別有害的輸入行為,能夠自主進行病毒免疫和防護。
在攻防演練實踐中,防守方一般在訪問數據庫SQL 應用的系統中植入監控代碼,監測程序運行時的動態信息和所有的數據庫請求,甄別有效請求和非法請求,實現自免疫的能力,保護系統運行安全,及時處置異常請求和有害攻擊。以下就防守中的運行時攻擊自免疫技術(Runtime Application Self Protection,RASP)技術應用及相關算法實現原理進行闡述。
通過研發基于字節碼插樁的非侵入式軟探針技術,可實現對終端設備指紋追蹤和訪問請求元數據捕獲。用于發現電網數據在形成資產的過程中產生的威脅情報,以增強對整個系統安全運維的防護?;谧止澊a插樁的非侵入式軟探針程序插樁流程如圖2 所示。

圖2 基于字節碼插樁的非侵入式軟探針程序插樁流程Fig.2 Non-intrusive soft probe program instrumentation process based on bytecode instrumentation
由圖2 可知,通過判斷源程序是否為空后,通過行號遍歷信息檢索(Information Retrieval,IR)后進行判斷改行的語句類型。在3 類插樁流程中,插樁規則1 為待插樁方法的集合,對Java 和Servlet 基礎類庫進行分析后,提取出的與污點傳播相關的方法。插樁1 基于可達方法集合和待插樁方法集合的交集,利用轉換包(Jimple Transform Pack,JTP)過程對JIMPLE 進行動態插樁。插樁規則2 為進行污點分析,包括污點傳播策略設計、污點路徑跟蹤、污點檢查與驗證,根據條件覆蓋率等規則算法形成污點傳播分析方法庫,將污點傳播分析方法庫和插樁后的應用程序進行鏈接后形成可跟蹤污點傳播的可執行程序。插樁規則3 為插樁源判斷,用于待插樁文件是否為空的判定,決定下一步是否啟動判定。
非侵入式軟探針插樁技術可以實現從宏觀到微觀過程中風險數據的可視化呈現,并輔助分析決策,從而有效增強新形勢下互聯網行業數據基礎,提高系統安全狀況的認知能力,使數據防御從被動預防轉為主動式預防,實現系統安全防御能力可視化,并建立警示、通報、應對的工作流閉環,有效保障應用業務系統的數據安全。
在電網系統的運行過程中,主要有以下幾種網絡訪問類型:電力專網、電力內網、互聯網、虛擬專網(Virtual Private Network,VPN)虛擬網絡訪問。所提基于行為畫像的數據安全防御技術是針對安全數據收集、處理、存儲、外部接口(Application Programming Interface,API)以及挖掘為多維一體的異常檢測模型。在系統運行中,安全防御整體系統設計如圖3所示。

圖3 安全防御整體架構設計Fig.3 Design of overall security defense architecture
實踐中常使用多種安全工具,模擬生物體自免疫的原理。從信息獲取層,安全大數據而分析層,到功能展示層的三層設計。從數據訪問請求層開始,收集終端指紋分析,發現業務威脅情報,最終模擬實現人體從病毒輸入,分辨有害病體,人體免疫系統介入,產生抗體,吞噬處理有害病毒的這一過程,有效保護了生物體的健康。
根據電網實踐中,對異常用戶幾種主要異常操作數據,按照不同維度來分片統計,如表1 所示。

表1 用戶異常行為特征Table 1 Abnormal user behavior characteristics
根據表1 可知,通過6 類用戶的異常操作類型,可以得到不同的用戶異常行為判定,可以從多維度分析該部分用戶輸入數據的特征,得到對用戶的異常預警,辨別正常行為與非正常行為(內部攻擊/外部攻擊),保障系統的安全運行。
基于所提模型和算法進行攻防演練,一次攻防演練后電網數據安全防御系統攻擊統計結果如圖4所示。

圖4 一次攻防演練后的攻擊統計分類Fig.4 Statistical classification of attacks after an attack and defense drill
由圖4 可知,在電網數據安全防御系統中,從數據審計記錄、終端指紋威脅統計、攻擊告警、終端IP威脅統計、登錄賬號威脅統計、威脅分布、威脅趨勢等多個維度對實時系統進行監控和預警,以應對諸如SQL 注入、違規操作、數據泄露、指紋偽造等攻擊手段。通過攻防演練分析后得出電網數據安全防御系統具備如下能力。
1)身份追蹤機制能力。通過軟探針方式在不改變頁面源代碼的情況下實現,利用多維指紋獲取技術實現所有訪問數據的訪問者終端設備分配唯一身份令牌作為用戶標記。如數據訪問者通過web 方式訪問數據庫,可將訪問者的請求轉換為完整的SQL語句,為下一步數據防護審計和黑客攻擊行為分析提供元數據。
2)SQL 數據審計能力。通過SQL 語義分析技術實現低誤報的數據審計,每一個防護的數據平臺安全策略都智能量身定制,有效防范SQL 注入、拖庫和撞庫等數據庫攻擊行為。通過對數據庫本機操作行為的捕獲并解析,實現應用與數據庫的同機審計。為使數據庫的訪問行為有效定位到業務工作人員,可以通過SQL 行為與業務用戶的準確關聯分析,使基于風險、語句、會話、客戶端、應用端、響應時長、應答結果等可以溯源和定責。
3)行為畫像分析能力。利用大數據分析技術檢測數據訪問中潛在的異常行為,在整個數據保護生命周期中具備更深層次的分析和挖掘。其中部分功能還結合了機器學習智能分析的方法,可以通過對正常用戶和惡意黑客行為分析進行動態的判斷,彌補傳統的數據安全防護方案不能對刷單、撞庫和薅羊毛等新型數據攻擊進行防御缺陷。
4)協同防御自免疫能力。以全網聯動的云情報中心為核心的協同防御策略。將攻擊者身份令牌作為阻斷標識,當攻擊者攻擊A 數據庫時,自動記錄攻擊者唯一身份令牌并上報云情報中心。當數據訪問者訪問B 數據庫時,B 數據庫與云情報中心聯動比對訪問者唯一身份令牌是否在云情報中心的黑名單中,如存在進行阻斷形成協同防御,最終實現自免疫能力。
由于RASP 技術是直接部署在系統中間件(Tomcat、weblogic 等)中,在應用程序接收請求之前對請求進行過濾和分析,規避安全風險。應用程序無須進行任何開發方面的修改,只需要進行簡單的配置即可,且具備實時檢測和攔截風險,因此對CPU(Central Processing Unit)性能有一定損耗,進而影響用戶的流暢體驗,因此需要采用高性能并行計算處理器部署RASP 技術。
為應對越來越嚴峻的新型數據攻擊手段帶來的安全挑戰和減少日新月異的網絡安全攻擊事件帶來的損失,提出基于運行時攻擊自免疫技術的電網數據安全防御系統。通過RSAP 技術在電網數據安全防御系統的實踐,能有效自我監控和識別有害的輸入行為,實現自主進行病毒免疫、預警和自我防護的機制,提高電網“輸、變、配”三大類系統在線運行系統的安全水平,確保電網數據安全。