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

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

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

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

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

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