隨著(zhù)最近幾年網(wǎng)絡(luò )架構的日趨復雜以及大數據概念的火爆,網(wǎng)絡(luò )安全態(tài)勢需要分析的數據量已經(jīng)從TB 級向PB 級邁進(jìn)且呈指數級增長(cháng)。其中不僅數據的來(lái)源豐富,而且內容更為細化,數據分析的維度更為廣泛,同時(shí)隨著(zhù)各類(lèi)設備的性能增長(cháng),數據源發(fā)送速率更快,對安全信息采集的速度則要求越來(lái)越高。目前傳統基于數據的安全分析技術(shù)已有廣泛應用,如惡意代碼檢測、入侵檢測、安全審計等,但隨著(zhù)網(wǎng)絡(luò )寬帶化、應用豐富化等趨勢,各種類(lèi)型的安全數據越來(lái)越多,導致傳統分析方法存在局限性,同時(shí)新興威脅與內控/合規的深入也對安全檢測分析提出更高要求,所以需要引入新的分析方法來(lái)解決面臨的問(wèn)題。
安全態(tài)勢感知引入大數據分析的必要性
在傳統技術(shù)架構下,由于采用結構化數據庫進(jìn)行數據存儲,數據存儲成本高,往往將原始數據進(jìn)行標準化處理后再進(jìn)行存儲,導致部分信息丟失,長(cháng)期歷史數據難以保存,追蹤溯源困難;同時(shí)對不完整,包含嘈雜的大型、非結構化數據集上執行分析和復雜查詢(xún)的效率很低下,實(shí)效性和準確性難以保證;此外,對來(lái)源于不同系統的異構數據進(jìn)行融合關(guān)聯(lián)分析,難以形成全局的可視化安全態(tài)勢,安全運營(yíng)效率不高。因此傳統分析技術(shù)難以滿(mǎn)足網(wǎng)絡(luò )安全分析的新要求。
大數據技術(shù)作為未來(lái)信息架構發(fā)展的十大趨勢之首,近年在多個(gè)領(lǐng)域的應用發(fā)展迅速。其具有數據量大、種類(lèi)繁多、速度快、價(jià)值密度低等特點(diǎn),應用于網(wǎng)絡(luò )安全分析領(lǐng)域可實(shí)現容量大、成本低、效率高的網(wǎng)絡(luò )安全分析能力(如圖1所示)。這些能力主要體現在以下幾個(gè)方面。
● 容量大:大數據支持海量異構數據的存儲與計算,使海量原始安全信息的存儲和分析成為可能。
● 成本低:分布式數據庫相對傳統數據庫價(jià)格大大降低,且易于在低廉硬件上水平擴展,降低整體安全投入。
● 速度快:異構數據的存儲與查詢(xún)速度更快,從而使安全信息采集、檢測響應速度更快。
● 精度高:數據挖掘能力提升,異構及海量數據存儲的支持奠定多維多階段關(guān)聯(lián)分析的基礎,基于更長(cháng)時(shí)間的數據及數據間的直接關(guān)聯(lián)關(guān)系,提升分析的廣度和深度。
圖1 傳統數據分析與大數據分析對比
大數據分析平臺處理流程
大數據技術(shù)的核心就是大數據分析(Big Data Analysis)。一般地,人們將大數據分析定義為一組能夠高效存儲和處理海量數據、并有效達成多種分析目標的工具及技術(shù)的集合。目前網(wǎng)絡(luò )安全分析主要基于日志與流量這兩大類(lèi)數據,同時(shí)輔以資產(chǎn)、漏洞、配置、訪(fǎng)問(wèn)、用戶(hù)行為、應用行為、業(yè)務(wù)行為、外部情報等信息進(jìn)行關(guān)聯(lián)分析。其中主要基于日志的安全分析應用包括安全審計、主機入侵檢測、網(wǎng)絡(luò )安全風(fēng)險分析等;主要基于流量的安全分析應用包括惡意代碼檢測、僵木蠕檢測、異常流量檢測、Web 安全分析、網(wǎng)絡(luò )入侵檢測等。引入大數據分析技術(shù),就是在這些安全應用的基礎上,將分散日志和數據整合起來(lái),通過(guò)高效采集、存儲、檢索與分析,提高安全檢測與處理的效率,減少分析與響應時(shí)間;同時(shí)通過(guò)大量安全信息的關(guān)聯(lián)分析、多階段組合關(guān)聯(lián)分析、攻擊場(chǎng)景關(guān)聯(lián)分析等技術(shù),找出安全事件之間的聯(lián)系和異常,有效發(fā)現0 day、APT 等攻擊和數據泄露,提升安全防御的主動(dòng)性。針對新的應用場(chǎng)景,給出了一個(gè)大數據生態(tài)系統的模型,通過(guò)利用大數據的分析方式來(lái)解決當前遇到的瓶頸,如下圖:
圖2 大數據處理流程
大數據分析平臺主要結構
一個(gè)大數據平臺應該包含的功能模塊,首先是能夠從多種數據源獲取數據的功能,數據的預處理(例如:清洗、驗證等)、存儲數據、數據處理、數據分析等(例如關(guān)聯(lián)分析、用戶(hù)畫(huà)像、預測分析等等),最后呈現和可視化的總結、匯總結果;谝陨蠋c(diǎn)對于安全大數據分析平臺同樣應該具有以下的功能。
(1)安全數據采集
為支持海量數據的高速采集,對于日志信息可采用Flume、Flunted、LogStash等工具,通過(guò)分布式采集實(shí)現每秒數百兆的日志數據采集與傳輸。其中,采用Flume 實(shí)現分布式、可靠和高可用的海量日志采集、聚合和傳輸,通過(guò)定制數據發(fā)送方收集不同數據源的數據,對數據進(jìn)行簡(jiǎn)單處理后發(fā)送到各種定制的數據接收方;對于流量信息可采用傳統流量鏡像方式,實(shí)現全流量數據采集。
(2)安全數據存儲
由于安全數據種類(lèi)繁多,應用方式也不盡相同,為了滿(mǎn)足不同分析需求的數據存儲,提高分析與查詢(xún)效率,對不同類(lèi)型和用途的數據應采用不同的存儲方式。
● 對用于查詢(xún)檢索的原始日志信息、流量歷史數據等信息,可采用HBase等列式存儲方式,利用其快速索引的特點(diǎn),提供對安全數據查詢(xún)的快速響應。
● 對用于進(jìn)行挖掘分析的標準化處理后的日志信息、流量信息等,可基于Hadoop 分布式計算架構,將分析的數據存放于各個(gè)計算節點(diǎn),通過(guò)定制化的Hive分析腳本;對安全數據進(jìn)行挖掘分析,形成分析告警與統計報表,分析的結果存放到列式存儲中。
● 對用于實(shí)時(shí)分析的日志、流量等信息,可采用Storm、Spark Streaming等流式計算架構,將分析的數據存放到各個(gè)分析節點(diǎn),通過(guò)對實(shí)施事件流的關(guān)聯(lián)分析,生成安全告警與統計數據,分析結果存放到列式存儲中。
(3)安全數據檢索
采用基于Elastic Search的查詢(xún)檢索框架,將數據查詢(xún)請求分布到不同的計算節點(diǎn)并行處理,并最終裝配每個(gè)節點(diǎn)的計算結果,通過(guò)分布式并行計算提升安全數據檢索效率,可使對海量原始安全數據的條件化查詢(xún)速度提升到秒級。
依靠跨節點(diǎn)平衡集群中節點(diǎn)間的索引與搜索負載,自動(dòng)復制數據以提供冗余副本,防止硬件錯誤導致數據丟失,自動(dòng)在節點(diǎn)之間路由,檢索數據,同時(shí)可以擴展到上百臺服務(wù)器,處理PB級別的結構化或非結構化數據。
(4)安全數據分析
對于數據實(shí)時(shí)分析,可在Storm或Spark Streaming等流式計算框架基礎上,結合復雜事件處理等技術(shù)以及特定的關(guān)聯(lián)分析算法,通過(guò)數據內存實(shí)時(shí)分析、海量安全信息實(shí)時(shí)監控與關(guān)聯(lián)分析,及時(shí)發(fā)現安全異常行為;
對于統計分析、歷史數據分析等非實(shí)時(shí)分析,可基于Hadoop 架構,通過(guò)HDFS 分布式數據存儲及基于Spark的分布式計算與調度,結合數據抽取、數據聚合、數據挖掘等技術(shù),實(shí)現風(fēng)險統計、態(tài)勢分析、攻擊溯源等離線(xiàn)分析。
圖3 基于Spark的數據分析
大數據平臺關(guān)鍵技術(shù)優(yōu)化
隨著(zhù)安全數據的存儲量的越來(lái)越大,一般的大數據平臺雖然本身都有良好的擴展性和容錯性,但是仍然存在很多問(wèn)題。在龐大的數據量下對數據的分析處理效率,系統的穩定性、容錯性,可視化時(shí)數據的檢索的需求越來(lái)越高, 這就需要對現有的平臺進(jìn)行一系列的優(yōu)化,主要優(yōu)化的方向有以下幾點(diǎn)。
(1)安全數據分析的低延時(shí)
為了滿(mǎn)足客戶(hù)對于安全分析結果的實(shí)時(shí)性要求,針對安全事件分析的復雜性,需要平臺能夠在海量數據規模的情況下實(shí)時(shí)的分析安全數據。
● 通過(guò)使用自適應的消息打包、自定義序列化、數據行+列壓縮、先進(jìn)的內存管理、和內部緩存隊列和線(xiàn)程模型,以及基于下游向 上游“反向”傳遞壓力的流控策略等來(lái)對系統整體延時(shí)進(jìn)行優(yōu)化。
● 通過(guò)有效的使用集群資源來(lái)降低每個(gè)批次的數據處理時(shí)間以及設置一個(gè)合適的批次大小來(lái)提升流式分析處理的速度。
(2)安全數據分析的高效資源利用和性能隔離
由于平臺包含多種安全分析作業(yè),不同作業(yè)對資源的利用不同,需要平臺能夠在滿(mǎn)足復雜的運維要求和實(shí)時(shí)計算連續性的同時(shí),實(shí)現高效的資源利用和性能隔離。
● 通過(guò)支持作業(yè)優(yōu)先級 調度、動(dòng)態(tài)負載均衡和微作業(yè)、動(dòng)態(tài)按需分配(即資源的彈性分配),來(lái)調度資源消耗特別大的作業(yè);
● 通過(guò)支持CPU、內存、網(wǎng)絡(luò )和磁盤(pán)I/O等多維度資源的隔離;
● 通過(guò)“多租戶(hù)”的形式不同業(yè)務(wù)放置于大規模(幾千臺服務(wù)器組成的)共享集群中,以提高資源利用率。
(3)安全數據流式分析的容錯性和穩定性
通過(guò)基于輸入的重新計算、狀態(tài)檢查點(diǎn),在不同計算特性下,權衡容錯資源消耗和恢復性能,特別是自動(dòng)的分布式增量檢查點(diǎn)功能,由系統自動(dòng)利用內存、本地磁盤(pán)和遠程存儲構成的多級存儲,在不影響流計算延時(shí)的情況下異步實(shí)現計算狀態(tài)的持久化,當有故障發(fā)生時(shí),保存的狀態(tài)可以被快速加載,可以確保安全事件流式分析計算需要的連續輸入和連續產(chǎn)生輸出的穩定性。
(4)安全數據分析結果的高效檢索
通過(guò)合理利用內存,權衡建索引的性能和檢索的時(shí)效性,定期對不再更新的索引做最佳選擇,根據機器數,磁盤(pán)數,索引大小等硬件環(huán)境,同時(shí)根據測試結果,設置最優(yōu)的分片數和備份數,單個(gè)分片最好不超過(guò)10GB,定期刪除不用的索引,做好冷數據的遷移,避免返回大量結果集的搜索與聚合,以此來(lái)提高安全分析結果的全文檢索效率。
圖4 大數據平臺關(guān)鍵技術(shù)優(yōu)化
結束語(yǔ)
大數據時(shí)代已經(jīng)到來(lái),我們創(chuàng )造的大數據正在改變人類(lèi)生產(chǎn)生活的各個(gè)方面。信息與網(wǎng)絡(luò )安全作為保障IT數字資產(chǎn)的關(guān)鍵能力也正在被大數據所重新塑造。作為安全保障體系中位于頂層的技術(shù)支撐平臺,原有的安全管理平臺天然具有與大數據結合的特質(zhì),所以基于大數據安全分析技術(shù)的安全管理平臺正在成為未來(lái)安全管理平臺發(fā)展的重要技術(shù)方向。同時(shí),我們必須看到,不論安全管理平臺的技術(shù)如何發(fā)展,如何與大數據結合,安全管理平臺所要解決的客戶(hù)根本性問(wèn)題,以及與客戶(hù)業(yè)務(wù)融合的趨勢依然未變。對大數據的應用依然要服務(wù)于解決客戶(hù)的實(shí)際安全管理問(wèn)題這個(gè)根本目標。目前來(lái)看,雖然大數據分析技術(shù)有助于我們更好地去解決安全管理過(guò)程中的部分問(wèn)題,但并不能解決所有的問(wèn)題,同時(shí)還可能引入了新的問(wèn)題。這都需要平臺的開(kāi)發(fā)者、服務(wù)提供者和客戶(hù)繼續不斷的摸索。