◆李艷斐 李海威 王 銳
(公安部第一研究所 北京 100048)
基于海量安全數據的專家分析系統的功能設計與實現
◆李艷斐 李海威 王 銳
(公安部第一研究所 北京 100048)
本文提出一種基于海量安全數據的專家分析系統技術框架。該框架主要劃分為數據處理引擎、數據管理引擎、專家分析引擎以及數據可視化引擎等關鍵技術。在此基礎上,通過“采集、標準化、歸約化、聚類、合并、關聯”的層次化架構設計,充分關聯海量異構數據、挖掘安全事件、感知安全態勢。最后,以入侵攻擊及流量兩類日志的數據處理、規則分析及可視化分析、智能預警為例,結合典型功能模塊闡述本系統的具體實現。
數據管理;專家分析;智能預警
隨著行業專網信息化工作的深入推進,應用日益多元豐富,信息數據快速膨脹,虛擬化、云計算、大數據等前沿技術得到迅速的推廣和應用。與此同時,應用非授權訪問、數據盜取、信息泄露、網絡攻擊、病毒傳播等問題嚴重威脅著行業專網的網絡安全和信息安全,傳統被動安全防護模式已經無法適應安全管理的需要,安全保障業務人員面臨從海量報警日志中發現安全事件的困難。因此,迫切需要借助一套基于海量安全數據的專家分析系統,由安全分析專家介入,實現安全事件的研判分析和智能推送,將業務專家從相互孤立的防御系統、分散的報警設備運維中解放出來,真正投入到及時發現、核實、處置安全事件的日常工作中,保證安全保障工作的正常開展。
目前,基于海量安全數據的專家分析系統普遍采用的一些技術手段包括以下四個方面:
(1)統一化:指對信息安全相關系統中常見的數據源進行采集,根據預先定義的配置,把各種類型的安全數據格式化成統一的格式。
(2)整合化:指對統一采集的日志進行過濾、去冗余處理后,根據預先定義的分類規則對日志進行歸納分類,轉發處理或直接轉存數據庫。
(3)關聯化:包括日志與環境信息(資產信息,網絡邏輯等)的關聯;日志風險級別、優先級、時間段關聯;基于統計的時間窗關聯;日志與固有安全漏洞的關聯等多種處理方法。
(4)可視化:分為在線和離線兩種方式,在線指通過實時獲取風險日志數據進行綜合計算和可視化來表達當前的安全態勢;離線指基于已有數據進行安全事件挖掘,并對統計分析的結果進行可視化輸出[1]。
綜上,所謂專家分析系統是指能夠利用智能信息處理技術以及描述安全事件關聯關系的先驗知識對網絡中的各類安全設備的報警日志信息進行智能處理和關聯分析,實現報警信息的精煉化和關聯化,達到提高報警信息的可用信息量、降低安全設備的虛警和誤警、發現網絡安全威脅事件的目的。因此,本系統設計的重點是如何實現高效的日志關聯分析及事件研判挖掘引擎設計,支持自由定義規則的組合方式及任務的執行順序,通過分析結果直觀反映網絡安全中的典型問題并及時預警。
本系統在日志數據處理上采用“采集、標準化、歸約化、聚類、合并、關聯”的層次化架構[1],其中前三步將有效地降低重復、錯誤的原始安全日志,為提高海量數據環境下的相關事件關聯計算奠定基礎;而后三步能夠較好地從全局角度出發,對異構網絡中的海量安全日志進行高效的聚類與合并,進而對相關事件進行關聯計算,從而為網絡安全管理中安全威脅的快速定位、態勢識別與聯動響應提供有效的機制保障。
系統總體劃分為數據采集、數據處理、數據分析、業務應用四大功能模塊。安全數據的采集是輔助功能,安全數據的處理和分析是本系統的核心功能,并在此基礎上衍生出多種業務應用,其中包括:數據管理(原始日志分類查詢、原始日志關聯及分析結果查詢、原始日志歸并及統計結果查詢)、專家分析(源數據選擇、規則編寫、模型測試、結果論證,及典型網絡攻擊模型可視化呈現)、智能預警(分析引擎配置、定時任務執行、命中安全事件列表及詳情查詢)、系統配置等。
根據上述架構設計,本次主要完成數據處理引擎、數據管理引擎、專家分析引擎、可視化分析引擎等四大核心功能模塊的設計與實現。
數據處理引擎主要包括兩個處理過程,一是數據標準化,將原始數據通過數據規整和數據標注進行格式轉換和類型區分,形成格式統一的安全數據,具有較好的可擴展性、兼容性及邏輯統一性,滿足了異構環境中對安全日志的標準化要求;二是數據規約化,對安全日志進行過濾、聚合、歸一等處理,首先,為消除冗余數據(如時序錯亂、延遲/丟失、重復和錯誤告警等),采用基于屬性約束策略的實時歸約算法,其次,將安全日志數據,基于已知的特征進行合并,形成具體相同特征或屬性的日志數據族。處理完成后,所有日志數據分類入庫,并建立索引類型。
本系統支持將采集的異構的、結構化和非結構化的、實時和批量的數據集中到大數據分析平臺,整合成為集中、一致、多維度的數據平臺。
基于Hadoop開發的面向列的分布式數據庫Hbase[2],為海量日志的存儲提供了技術解決方案,其優勢在于利用HDFS作為其文件存儲系統,利用Map/Reduce來處理HBase中的海量數據,利用Zookeeper作為協同服務,可以用于實時隨機讀/寫超大規模數據集。但為了實現更加高效的數據存儲與管理,需要對此數據庫進行優化,以適應多樣化的日志格式。與此同時,在表中的數據量非常多的情況下,HBase很難實現非常高效的索引檢索機制。因此,需要借助全文檢索引擎ElasticSearch提供的索引的能力來給HBase的rowKey建立索引。
阿里呵呵呵地尾隨著阿東。路上有熟人見到阿里,都熱情地跟他打招呼。阿里,今天怎么這么開心呀!阿里,笑得蠻好咧。阿里,你比阿東帥多了!
本系統中 HBase只負責存儲采集的安全日志原始數據及相關統計、分析數據,相應的檢索查詢功能由ElasticSearch[3]完成。
專家分析引擎主要包括兩個核心功能,一方面,支持數值統計、算法挖掘和攻擊樹推理等模型的規則設計與驗證,另一方面,可以支持任務配置,對應每次任務可以選擇數據源以及相應的測試規則,并對每次任務執行后的結果進行保存、查詢和二次分析。
為了實現上述功能,首先,需要在內存中主要嵌入兩個數據庫,分別是索引數據庫和查詢語句數據庫[4]。索引數據庫負責存儲安全日志及事件的索引類型;查詢語句數據庫負責存儲需要對不同類型的數據源進行何種處理的具體業務規則,即 SQL 查詢語句等。其次,規則引擎的設計[5]主要包括模式匹配器和執行引擎,可以為日志或事件的查詢結果提供進一步的計算以及封裝操作。模式匹配器負責根據處理對應索引類型的查詢規則匹配相關聯的監聽器,即每套規則需與一種索引類型的監聽器匹配;而執行引擎則負責監聽器內部具體的計算和封裝工作。
當用戶編寫相應規則的查詢語句并執行后,對日志或事件查詢的結果信息會立即傳入由模式匹配器為其匹配的監聽器中,并在監聽器中進行事件統計計算、態勢計算以及對計算結果的二次事件封裝,形成新的事件再重新推入索引庫,或直接推送報警。
這種通過配置規則引擎的任務執行列表及條件能夠很好地實現數據的多次交互迭代處理,按步驟完成復雜的統計和算法邏輯,挖掘數據的潛在價值,同時,這也是積累模型庫的一種可行性方案。
可視化分析引擎的工作包括四個步驟:選取數據源、依據不同的數據源和顯示需求選取可視化結構、設計和實現信息實時性顯示以及設計人機交互。由數據源的類型決定系統中安全數據的可視化分析及呈現方式。由于網絡結構復雜、網絡數據種類繁多,那么在不同的網絡應用場景下,網絡安全日志的數據源的類型也大不相同,比如入侵檢測系統的警報日志和防火墻日志數據使用的顯示方式就大不相同,前者注重異常的挖掘,后者注重網絡數據結構及數據流的展示。因此,本系統中僅對流量日志和入侵檢測日志這兩類顯示方式相似的數據的可視化呈現方式進行設計和實現。
根據系統總體架構及功能設計,系統實現了三個核心功能模塊:數據管理、專家分析和智能預警。
其中,數據管理模塊主要完成網絡流量和入侵攻擊兩類安全數據的采集、建模、分類管理;專家分析模塊主要完成原始日志和安全事件的數值統計、關聯分析[6]、攻擊樹模型等規則分析和可視化分析;智能預警模塊主要完成安全態勢展示及安全風險預警[7]等。
數據管理的主功能界面如下圖1所示,包括數據列表區和數據檢索區。
數據列表區:包括表名以及相應數據條數。點擊表名右側的下拉鍵頭,可以顯示描述該表的字段列表。
數據檢索區:支持兩種數據查詢模式,即檢索模式和代碼模式。其中,檢索模式下,用戶選中數據表后,可以定義需要查詢的條件,每個條件都是并且的關系。點擊查詢按鈕,篩選同時滿足設定條件的數據。代碼模式下,用戶編寫SQL代碼,進行數據的查詢。支持將編輯的代碼保存為模板,用戶可以在模板列表中可以選擇需要執行的代碼模板。

圖1 數據管理主功能頁面
專家分析引擎的主功能界面包括規則管理區和規則內容編輯區。
規則管理區:支持對規則列表進行管理。單點規則時,右側內容編輯區可以顯示該條規則的具體內容。
規則內容編輯區:以原生SQL方式對規則內容進行編寫。支持對選定的規則內容進行修改。點擊保存按鈕,可保存當前的規則內容。點擊測試按鈕,可將規則下發到系統中,并在結果框中顯示執行規則的狀態。點擊發布按鈕,可配置發布規則。
本系統針對網絡流量和入侵攻擊等安全數據進行規則分析后,還可以通過可視化分析工具對分析結果進行呈現,如下圖2所示:

圖2 規則管理-可視化分析工具
本系統支持對專家分析得到的疑似安全事件進行基于機器學習的智能分析,如圖3所示,展示針對匹配網絡流量異常特征的數據集進行訓練后得到的結果,對 IP訪問流量異常的預警具有一定的參考價值。

圖3 智能分析-結果展示
本文從網絡安全形勢及安全監測現狀出發,分析了現有的安全監測手段的落后及應用智能手段進行日志分析的必要性,并在此基礎上設計與實現了基于海量安全數據的專家分析系統,從數據管理、專家分析、智能預警三方面詳細闡述了網絡流量和入侵攻擊兩類安全數據的分析處理和異常預警。因此,基于海量安全數據的專家分析系統能夠使業務人員從海量報警日志的運維中解放出來,借助規則分析和可視化分析等手段,有效地發現行業專網中存在的安全隱患,并及時交付處置,提高信息安全管理的工作效率。
[1]劉蘭.網絡安全事件管理關鍵技術研究[D].華中科技大學,2007.
[2]Tom White. Hadoop 權威指南[M].北京:清華大學出版社, 2010.
[3]程永新, 宋輝, 冼土彪.基于ElasticSearch的HBase模糊檢索系統,CN 106682073 A[P],2017.
[4]沈建宇.基于規則事件流處理引擎的安全事件監控系統研究[D].上海交通大學,2010.
[5]彭磊.規則引擎原理分析[J].福建電腦,2006.
[6]楊茜越.網絡安全態勢分析系統中關聯引擎的設計與實現[D].北京郵電大學,2015.
[7]劉效武.基于多源融合的網絡安全態勢量化感知與評估[D].哈爾濱工程大學,2009.