冀 文,田 峰,康 乾,葉榮偉(.中國(guó)移動(dòng)信息技術(shù)有限公司,北京0003;.中國(guó)移動(dòng)杭州研發(fā)中心,浙江杭州30000)
大數(shù)據(jù)業(yè)已成為產(chǎn)業(yè)發(fā)展的創(chuàng)新要素,不僅在數(shù)據(jù)科學(xué)與技術(shù)層次,而且在商業(yè)模式、產(chǎn)業(yè)格局、生態(tài)價(jià)值與教育層面,大數(shù)據(jù)都能帶來新理念和新思維[1-2]。在充分認(rèn)知大數(shù)據(jù)產(chǎn)業(yè)發(fā)展重要性的同時(shí),也要充分意識(shí)到大數(shù)據(jù)安全對(duì)大數(shù)據(jù)應(yīng)用發(fā)展的重要性[3-4]。
大數(shù)據(jù)平臺(tái)是實(shí)現(xiàn)大數(shù)據(jù)分析能力的基礎(chǔ),而大數(shù)據(jù)行為的合規(guī)審計(jì)則是一種保護(hù)平臺(tái)的有效方法。目前,這類審計(jì)能力基本上是基于組件的安全日志、運(yùn)行日志和審計(jì)日志的組合分析,存在一定局限性。
a)缺少原生分析能力。大數(shù)據(jù)平臺(tái)的組件基于開源軟件,在設(shè)計(jì)時(shí)缺少安全機(jī)制,例如Hadoop生態(tài)系統(tǒng)[5],其本身沒有審計(jì)功能。
b)日志字段粒度太大??蓪徲?jì)日志包括安全日志、運(yùn)行日志和審計(jì)日志,但是其字段不完整,記錄的信息模糊,例如HDFS[6],其日志缺少對(duì)操作目錄的記錄。
c)審計(jì)能力不可擴(kuò)展。新增日志字段需要修改源代碼,分析能力不可擴(kuò)展,無法滿足分析審計(jì)規(guī)則更新的需求[7]。
針對(duì)上述問題,本文提出了大數(shù)據(jù)組件深度審計(jì)方法。該方法主要通過采集和解析網(wǎng)絡(luò)流量數(shù)據(jù),提取全量組件訪問、共享過程安全日志進(jìn)行分析,實(shí)現(xiàn)第三方集中式安全深度審計(jì)。
下面對(duì)大數(shù)據(jù)組件深度審計(jì)方法中涉及的相關(guān)概念做一個(gè)基本介紹。
a)深 度 包 檢 測(cè) 技 術(shù)[8](DPI——Deep Packet Inspection),是一種基于應(yīng)用層的流量檢測(cè)和控制技術(shù),當(dāng)IP數(shù)據(jù)包、TCP或UDP數(shù)據(jù)流通過基于DPI技術(shù)的帶寬管理系統(tǒng)時(shí),可通過深入讀取IP包載荷內(nèi)容對(duì)OSI七層協(xié)議中的應(yīng)用層信息進(jìn)行重組[9],從而得到整個(gè)應(yīng)用程序的內(nèi)容,然后按照系統(tǒng)定義的管理策略對(duì)流量進(jìn)行整形操作。
b)Hive[10]是建立在Hadoop上的數(shù)據(jù)倉(cāng)庫(kù)基礎(chǔ)構(gòu)架。它提供了一系列的工具,可以用來進(jìn)行數(shù)據(jù)提取轉(zhuǎn)化加載(ETL),是一種可以操作和分析Hadoop中存儲(chǔ)的數(shù)據(jù)的機(jī)制。
圖1是Hive組件構(gòu)成和交互方式示意圖。Hive組件由 HiveServer、MetaStore、WebHCat等構(gòu)成[11],支持多種Hive Client(如Beeline、Thrift、JDBC、ODBC驅(qū)動(dòng)的客戶端)與組件進(jìn)行數(shù)據(jù)交互。
圖1 Hive組件交互示意
大數(shù)據(jù)平臺(tái)Hive組件深度審計(jì)方法重點(diǎn)研究Hive組件和CLI、SDK應(yīng)用、Web客戶端的交互機(jī)制,形成可操作協(xié)議解析功能模塊。而DPI技術(shù)具有的支撐全棧協(xié)議解析能力和能夠提供通用的可插拔應(yīng)用層協(xié)議解析的能力,是此方法實(shí)現(xiàn)的基礎(chǔ)[12]。
大數(shù)據(jù)組件深度審計(jì)技術(shù)的目標(biāo)是及時(shí)發(fā)現(xiàn)大數(shù)據(jù)組件運(yùn)行的安全風(fēng)險(xiǎn),實(shí)現(xiàn)對(duì)Hive組件的深度審計(jì)。具體來說,該技術(shù)通過Hive組件原生能力,實(shí)現(xiàn)組件交互行為的重構(gòu);通過DPI技術(shù)替代常規(guī)的日志分析,可以控制分析的字段和粒度,保證審計(jì)能力的可擴(kuò)展性,提供多維度的交互分析。
深度審計(jì)方法重點(diǎn)闡述Hive組件和客戶端的交互信息,基于DPI能力進(jìn)行數(shù)據(jù)包特征提取和協(xié)議識(shí)別,剝離非應(yīng)用層數(shù)據(jù),獲取核心交互行為,并結(jié)合多維度的分析方法,審計(jì)Hive組件交互行為。
面向Hive平臺(tái)的深度審計(jì)方法的流程如圖2所示,主要包括以下步驟。
圖2 深度審計(jì)方法流程示意圖
a)審計(jì)系統(tǒng)通過采集模塊,捕獲網(wǎng)絡(luò)流量數(shù)據(jù)包。
b)識(shí)別網(wǎng)絡(luò)流量數(shù)據(jù)包訪問協(xié)議,過濾非審計(jì)范圍的數(shù)據(jù)包。
c)解析應(yīng)用測(cè)協(xié)議內(nèi)容,提取協(xié)議中包含的Hive操作相關(guān)信息,如操作方法、操作對(duì)象、操作參數(shù)等。
d)識(shí)別訪問操作行為是否符合異常行為特征,異常與正常行為分類存儲(chǔ)。
e)訪問操作行為語(yǔ)義分析,構(gòu)建操作行為上下文。
f)操作行為關(guān)聯(lián)分析,發(fā)現(xiàn)深度安全風(fēng)險(xiǎn)。
g)輸出審計(jì)分析結(jié)果。
深度審計(jì)方法的實(shí)現(xiàn)主要基于以下2個(gè)關(guān)鍵技術(shù)。
a)基于DPI的Hive組件協(xié)議解析技術(shù):基于DPI分析技術(shù),獲取全量的Hive組件流量,結(jié)合組件訪問協(xié)議庫(kù)和可執(zhí)行語(yǔ)意庫(kù),匹配流量負(fù)載的數(shù)據(jù)字段,完成協(xié)議判斷和協(xié)議解析。表1是部分交互數(shù)據(jù)包的結(jié)構(gòu)。
表1 Hive組件通信協(xié)議字段表
b)多維度分析方法:基于DPI分析技術(shù),獲取全量的Hive組件平臺(tái)通信行為數(shù)據(jù)后,采用多維度分析方法進(jìn)行平臺(tái)數(shù)據(jù)交互行為的風(fēng)險(xiǎn)審計(jì)。該分析方法包括以下3個(gè)維度。
(a)行為審計(jì):通過對(duì)大數(shù)據(jù)組件的網(wǎng)絡(luò)操作行為,包括用戶通過客戶端、管理平臺(tái)對(duì)組件的連接、訪問以及對(duì)數(shù)據(jù)的增刪改查等操作進(jìn)行監(jiān)控,根據(jù)評(píng)估模型識(shí)別異常行為并按安全策略實(shí)時(shí)告警并記錄。
(b)內(nèi)容審計(jì):提供深入的內(nèi)容審計(jì)功能,可對(duì)用戶請(qǐng)求的操作及節(jié)點(diǎn)間的通信內(nèi)容進(jìn)行深入的包探測(cè)和分析,提供完整的內(nèi)容檢測(cè),以數(shù)據(jù)為對(duì)象對(duì)大數(shù)據(jù)組件中的數(shù)據(jù)訪問操作進(jìn)行靈活的細(xì)粒度(數(shù)據(jù)粒度)審計(jì)。
(c)流量審計(jì):提供基于訪問協(xié)議的流量識(shí)別分析能力,識(shí)別規(guī)范協(xié)議外的其他非安全協(xié)議的數(shù)據(jù)傳輸,提示安全風(fēng)險(xiǎn)。
基于上述關(guān)鍵技術(shù),本文提出的大數(shù)據(jù)安全審計(jì)系統(tǒng)包含了組件行為重構(gòu)、多維度行為分析等能力,能在相關(guān)業(yè)務(wù)場(chǎng)景中發(fā)揮審計(jì)作用。
本文提出的大數(shù)據(jù)安全審計(jì)系統(tǒng)基于大數(shù)據(jù)組件深度審計(jì)方法實(shí)現(xiàn)。通過大數(shù)據(jù)平臺(tái)集群側(cè)的全流量鏡像能力,系統(tǒng)采集網(wǎng)絡(luò)原始數(shù)據(jù)包,解析全網(wǎng)Hive組件的訪問流量,并識(shí)別大數(shù)據(jù)組件訪問場(chǎng)景中操作行為的關(guān)鍵要素日志,幫助大數(shù)據(jù)平臺(tái)運(yùn)維人員發(fā)現(xiàn)異常行為,實(shí)現(xiàn)多維度、可視化的安全審計(jì)。
3.3.1 功能架構(gòu)
大數(shù)據(jù)安全審計(jì)系統(tǒng)包括關(guān)系模塊、存儲(chǔ)層、展示層、分析層、采集層和知識(shí)庫(kù),具體如圖3所示。
圖3 大數(shù)據(jù)安全審計(jì)系統(tǒng)功能架構(gòu)圖
a)管理模塊:主要包括用戶認(rèn)證、權(quán)限管理、日志管理、審計(jì)策略、審計(jì)任務(wù),并提供配置管理和規(guī)則庫(kù)升級(jí)等功能。
b)存儲(chǔ)層:審計(jì)系統(tǒng)的數(shù)據(jù)存儲(chǔ)位置,可存儲(chǔ)數(shù)據(jù)包括采集到的操作日志和數(shù)據(jù)內(nèi)容、審計(jì)分析產(chǎn)生的審計(jì)結(jié)果、審計(jì)報(bào)告、知識(shí)庫(kù)內(nèi)容。
c)展示層:展示審計(jì)結(jié)果,如監(jiān)控告警展示和審計(jì)報(bào)表展示等,包括實(shí)時(shí)監(jiān)控告警、審計(jì)報(bào)表展示、綜合統(tǒng)計(jì)展示、違規(guī)內(nèi)容數(shù)量展示等。
d)分析層:根據(jù)審計(jì)需求和審計(jì)條件,篩選存儲(chǔ)層中操作日志,并進(jìn)行審計(jì)分析,包括根據(jù)審計(jì)條件快速篩選操作日志,分析操作行為的時(shí)效性,根據(jù)審計(jì)需求全面分析操作行為和操作內(nèi)容、構(gòu)建操作會(huì)話,實(shí)現(xiàn)用戶訪問的完整審計(jì)。
e)采集層:對(duì)接網(wǎng)絡(luò)鏡像端口,捕獲網(wǎng)絡(luò)流量,解析協(xié)議語(yǔ)義,提取操作行為和操作數(shù)據(jù),采集組件操作日志,完成數(shù)據(jù)清洗和操作日志解析。同時(shí),在該層還需丟棄無關(guān)流量并將采集到的數(shù)據(jù)寫入存儲(chǔ)層。
f)知識(shí)庫(kù):包括審計(jì)策略、配置和規(guī)則等內(nèi)容,如采集流量協(xié)議范圍、操作行為審計(jì)規(guī)則、操作內(nèi)容審計(jì)規(guī)則、審計(jì)策略、系統(tǒng)配置內(nèi)容(獨(dú)立模塊可包含過濾器配置)、審計(jì)報(bào)告模板、綜合統(tǒng)計(jì)模板、操作行為、操作內(nèi)容黑白名單。
3.3.2 整體實(shí)施方案
大數(shù)據(jù)審計(jì)系統(tǒng)整體實(shí)施方案如圖4所示,通過獲取大數(shù)據(jù)集群的二層網(wǎng)絡(luò)流量,前置服務(wù)器形成流量包pcap文件,交由統(tǒng)一協(xié)議解析平臺(tái),統(tǒng)一協(xié)議解析平臺(tái)通過協(xié)議插件管理器,按配置動(dòng)態(tài)加載大數(shù)據(jù)組件協(xié)議解析插件進(jìn)行輪詢解析,輸出解析后的原始日志數(shù)據(jù)流,通過日志融合規(guī)則關(guān)聯(lián)、融合原始日志,形成標(biāo)準(zhǔn)化日志記錄數(shù)據(jù),并由交互界面呈現(xiàn)審計(jì)分析結(jié)果[13-14]。
3.3.3 系統(tǒng)核心實(shí)施方案
圖4 大數(shù)據(jù)審計(jì)系統(tǒng)實(shí)施方案圖
系統(tǒng)實(shí)施方案的核心是采集層和分析層。采集層由采集模塊構(gòu)成,可支持離線文件分析和在線分析的處理模式,其中在線分析需要路由設(shè)備提供鏡像端口。采集模塊通過知識(shí)庫(kù)將操作行為格式化,以供分析器調(diào)用分析;格式化數(shù)據(jù)包以流的形式導(dǎo)入分析器,先進(jìn)行協(xié)議識(shí)別分類,然后結(jié)合特征知識(shí)庫(kù),分析平臺(tái)中執(zhí)行的操作行為,對(duì)異常行為可通過上下文信息構(gòu)建完整的操作會(huì)話,并結(jié)合已有安全事件,整體分析操作行為的安全風(fēng)險(xiǎn)。
3.3.3.1 基于DPI技術(shù)的采集模塊設(shè)計(jì)
采集模塊的數(shù)據(jù)入口為網(wǎng)絡(luò)路由設(shè)備的鏡像端口,該模塊結(jié)構(gòu)如圖5所示,主要包括以下內(nèi)容。
圖5 采集模塊示意圖
a)捕獲器:根據(jù)審計(jì)協(xié)議需求捕獲有效數(shù)據(jù)并按協(xié)議重組數(shù)據(jù)包;對(duì)捕獲的數(shù)據(jù)包進(jìn)行基礎(chǔ)的協(xié)議解析,解析層級(jí)在應(yīng)用層以下。
b)協(xié)議解析:通過分析應(yīng)用層的數(shù)據(jù)內(nèi)容,匹配數(shù)據(jù)負(fù)載字段,獲取操作行為和操作內(nèi)容(后續(xù)可擴(kuò)展至操作協(xié)議)等數(shù)據(jù)。
c)存儲(chǔ)預(yù)處理:將過濾后內(nèi)容和協(xié)議分析結(jié)果寫入存儲(chǔ)層,并將協(xié)議解析結(jié)果中的操作行為實(shí)時(shí)發(fā)送至分析層。
經(jīng)過預(yù)處理,網(wǎng)絡(luò)數(shù)據(jù)流量包被分解為用戶訪問大數(shù)據(jù)組件的操作行為和操作數(shù)據(jù),該數(shù)據(jù)一部分將在本地持久化存儲(chǔ),另一部分將繼續(xù)流轉(zhuǎn)供上層分析模塊挖掘訪問行為。
3.3.3.2 多維度行為分析模塊設(shè)計(jì)
分析模塊將對(duì)采集層解析出的操作內(nèi)容和操作行為進(jìn)行二次分析。模塊對(duì)Hive組件的操作數(shù)據(jù)進(jìn)行風(fēng)險(xiǎn)等級(jí)評(píng)估操作,挖掘數(shù)據(jù)交互過程中的異常日志,結(jié)合行為、會(huì)話、內(nèi)容3個(gè)維度,深度審計(jì)Hive組件數(shù)據(jù)流轉(zhuǎn)行為(見圖6)。
分析模塊涉及到以下幾個(gè)關(guān)鍵知識(shí)庫(kù)。
a)白名單:綜合行為特征和數(shù)據(jù)特征,通過用戶自定義操作源、操作對(duì)象、操作時(shí)間、操作內(nèi)容、操作環(huán)境等內(nèi)容,指定必須審計(jì)的行為和數(shù)據(jù)。其匹配優(yōu)先級(jí)僅次于黑名單。
圖6 分析模塊示意圖
b)行為特征:規(guī)則庫(kù),指明異常行為特征。
c)數(shù)據(jù)特征:規(guī)則庫(kù),重要數(shù)據(jù)泄露風(fēng)險(xiǎn)畫像。
根據(jù)審計(jì)策略,系統(tǒng)加載對(duì)應(yīng)的黑白名單,協(xié)助模塊獲取待分析的操作行為和操作內(nèi)容數(shù)據(jù),這些數(shù)據(jù)將分別導(dǎo)入各審計(jì)分析模塊,并結(jié)合上述行為特征、數(shù)據(jù)特征、協(xié)議庫(kù)信息等進(jìn)行深度用戶行為分析。
本文以DPI技術(shù)為基礎(chǔ),進(jìn)行Hive組件的深度審計(jì)技術(shù)研究,在理論研究的基礎(chǔ)上,實(shí)現(xiàn)了大數(shù)據(jù)安全審計(jì)系統(tǒng)。該系統(tǒng)基于Hive組件原生能力,利用DPI技術(shù)還原負(fù)載內(nèi)容和操作行為,保證對(duì)大數(shù)據(jù)組件審計(jì)能力的可擴(kuò)展性,實(shí)現(xiàn)重構(gòu)組件交互行為,并提供多維度的交互分析能力。大數(shù)據(jù)安全審計(jì)系統(tǒng)能夠在數(shù)據(jù)安全審計(jì)與稽核、數(shù)據(jù)訪問風(fēng)險(xiǎn)監(jiān)測(cè)、數(shù)據(jù)共享防泄露等場(chǎng)景下,提供直觀的審計(jì)結(jié)果,及時(shí)發(fā)現(xiàn)大數(shù)據(jù)組件交互過程中的安全風(fēng)險(xiǎn),保障數(shù)據(jù)安全。