丁文超,冷 冰,許 杰,嚴(yán)麗娜
(1.中國電子科技集團(tuán)公司第三十研究所,四川 成都 610041;2.西安通信學(xué)院 信息安全系,陜西 西安 710106)
大數(shù)據(jù)環(huán)境下的安全審計(jì)系統(tǒng)框架*
丁文超1,冷 冰1,許 杰1,嚴(yán)麗娜2
(1.中國電子科技集團(tuán)公司第三十研究所,四川 成都 610041;2.西安通信學(xué)院 信息安全系,陜西 西安 710106)
安全審計(jì)技術(shù)在現(xiàn)代安全防護(hù)系統(tǒng)中占有重要地位,但面對現(xiàn)代大數(shù)據(jù)環(huán)境,傳統(tǒng)的安全審計(jì)技術(shù)對數(shù)據(jù)的有效管理、快速檢索以及數(shù)據(jù)分析都會面臨諸多較難克服的問題。簡要介紹現(xiàn)有的Hadoop、Spark等主要大數(shù)據(jù)平臺,針對傳統(tǒng)安全審計(jì)技術(shù)無法處理大數(shù)據(jù)的問題,運(yùn)用現(xiàn)有的大數(shù)據(jù)技術(shù),給出大數(shù)據(jù)安全審計(jì)系統(tǒng)的設(shè)計(jì)思想,最終設(shè)計(jì)出大數(shù)據(jù)環(huán)境下的安全審計(jì)系統(tǒng)框架,并介紹框架中每一部分的作用與處理步驟,以滿足大數(shù)據(jù)環(huán)境下的安全審計(jì)需求。
安全審計(jì);大數(shù)據(jù);數(shù)據(jù)挖掘;Spark
安全審計(jì)技術(shù)是記錄用戶的訪問過程和各種行為以形成審計(jì)數(shù)據(jù)并加以分析的過程。它的主要目的是實(shí)時地、不間斷地監(jiān)視整個系統(tǒng)以及應(yīng)用程序的運(yùn)行狀態(tài),及時發(fā)現(xiàn)系統(tǒng)中可疑的、違規(guī)的或危險(xiǎn)的行為,進(jìn)行警報(bào)和采取阻斷措施,并對這些行為留下記錄。在CC和TCSEC等安全認(rèn)證體系中,安全審計(jì)的功能都放在首位,是評判一個系統(tǒng)是否真正安全的重要尺度。
隨著信息化程度的不斷提高,信息系統(tǒng)需要安全審計(jì)的對象和審計(jì)內(nèi)容愈加多而復(fù)雜,致使單位時間內(nèi)需要審計(jì)的信息增長巨大。重要行業(yè)中,需要審計(jì)的重要節(jié)點(diǎn)常常會超過數(shù)千個,包括服務(wù)器、網(wǎng)絡(luò)設(shè)備、安全設(shè)備、數(shù)據(jù)庫、應(yīng)用系統(tǒng)等不同節(jié)點(diǎn)類型,每天的訪問、操作日志可達(dá)到數(shù)億甚至幾百億條。這對于傳統(tǒng)的安全審計(jì)系統(tǒng)的數(shù)據(jù)采集和分析能力都構(gòu)成了極大挑戰(zhàn)。而大數(shù)據(jù)相關(guān)技術(shù)以及分析處理平臺的出現(xiàn),為安全審計(jì)技術(shù)帶來了曙光。
大數(shù)據(jù)分析技術(shù)的目的是從海量的數(shù)據(jù)中提取出有用信息,非常適合當(dāng)前安全審計(jì)系統(tǒng)的大數(shù)據(jù)量分析要求。本文將大數(shù)據(jù)分析技術(shù)運(yùn)用到安全審計(jì)系統(tǒng),以滿足安全審計(jì)系統(tǒng)對大數(shù)據(jù)量的分析需求。
2011年,麥肯錫在《大數(shù)據(jù):創(chuàng)新、競爭和生產(chǎn)力的下一個前沿領(lǐng)域》報(bào)告中首次提出“大數(shù)據(jù)”的概念。近幾年,大數(shù)據(jù)已成為產(chǎn)業(yè)界與信息技術(shù)學(xué)術(shù)界熱論的焦點(diǎn),更成為信息科學(xué)技術(shù)領(lǐng)域的重要前沿課題之一[1]。大數(shù)據(jù)是指無法在一定時間內(nèi)用傳統(tǒng)數(shù)據(jù)庫軟件工具對其內(nèi)容進(jìn)行采集、存儲、管理和分析的數(shù)據(jù)集合。具有5V1C的特征,即數(shù)據(jù)量巨大(Volume)、生成速度快(Velocity)、數(shù)據(jù)類型繁多(Variety)、數(shù)據(jù)易變化(Variability)、數(shù)據(jù)真實(shí)性(Veracity)、數(shù)據(jù)復(fù)雜性(Complexity)[2]。
根據(jù)國際數(shù)據(jù)資訊公司(IDC)預(yù)計(jì),到2020年,全球?qū)碛?5 ZB以上的數(shù)據(jù)量,近年及未來幾年的預(yù)測結(jié)果如圖1所示??梢?,大數(shù)據(jù)時代已經(jīng)悄然來臨。
圖1 IDC全球數(shù)據(jù)使用量統(tǒng)計(jì)及預(yù)測
現(xiàn)有的大數(shù)據(jù)技術(shù)形成了以存儲、計(jì)算以及分析為核心的較為完整的生態(tài)系統(tǒng)。存儲層面主要包括NoSQL數(shù)據(jù)庫和分布式文件系統(tǒng),代表性的有GFS、HDFS、HBase、Hive、MongoDB、Cassandra等;計(jì)算和分析層面主要包括計(jì)算框架、分析工具和挖掘算法,代表性的有Hadoop、Spark、Storm、MapReduce、Mesos、YARN、Impala、Mahout、Pig、Solr等[3]。由于大數(shù)據(jù)技術(shù)較多,因此僅對本文中使用的相關(guān)大數(shù)據(jù)技術(shù)進(jìn)行介紹,相應(yīng)的大數(shù)據(jù)生態(tài)圈如圖2所示。
圖2 大數(shù)據(jù)生態(tài)圈
(1)Hadoop被認(rèn)為是大數(shù)據(jù)必不可少的,是一個能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式存儲和并行化計(jì)算的軟件框架。最新版本的Hadoop主要包含Common、HDFS、YARN、MapReduce等四大組件[4]。其中,Common為其他的Hadoop組件提供共用的基礎(chǔ)環(huán)境支撐。四大組件中,HDFS和MapReduce是最核心技術(shù),分別為Hadoop提供海量數(shù)據(jù)的存儲和計(jì)算能力。
(2)HBase是運(yùn)行于HDFS頂層的面向列的非關(guān)系型數(shù)據(jù)庫系統(tǒng),具備隨機(jī)實(shí)時讀寫功能。Hbase主要依靠橫向擴(kuò)展,通過不斷增加廉價服務(wù)器來增加計(jì)算和存儲能力。
(3)ZooKeeper是一個開放源碼的分布式應(yīng)用程序協(xié)調(diào)器,是一個為分布式應(yīng)用提供一致性服務(wù)的軟件。它提供的功能主要包括配置維護(hù)、統(tǒng)一命名服務(wù)、組服務(wù)、狀態(tài)同步服務(wù)等,是Hadoop和HBase集群管理必不可少的模塊。
(4)Spark是Apache軟件基金會的頂級開源項(xiàng)目,是由Scala語言實(shí)現(xiàn)的高效分布式計(jì)算框架。Spark的核心設(shè)計(jì)是彈性分布式數(shù)據(jù)集(Resilient Distributed Dataset,RDD)。利用RDD可以設(shè)計(jì)出能夠在Spark下高效執(zhí)行的程序,利用其他分區(qū)的RDD數(shù)據(jù)計(jì)算出指定分區(qū)的RDD相關(guān)信息,以用于有向無環(huán)圖(DAG)數(shù)據(jù)流的應(yīng)用,并通過聯(lián)合分區(qū)的控制減少機(jī)器之間的數(shù)據(jù)混合。
(5)Hive是建立在Hadoop集群上的數(shù)據(jù)倉庫框架。它可以將以文件形式存放的結(jié)構(gòu)化數(shù)據(jù)映射成為數(shù)據(jù)庫中的一張表,也可以把類SQL語句(在Hive中稱為HiveQL)轉(zhuǎn)換為MapReduce任務(wù),從而大大減少M(fèi)apReduce函數(shù)設(shè)計(jì)和開發(fā)的工作量。
(6)Kafka是LinkedIn公司開發(fā)并開源出來的一個高吞吐的分布式流處理系統(tǒng)。在結(jié)構(gòu)上可分為producer、broker和consumer,分別代表信息的發(fā)布者、代理者和消費(fèi)者。相比傳統(tǒng)消息收集平臺,Kafka具有易擴(kuò)展、高吞吐量、自動平衡,支持消息持久化等優(yōu)點(diǎn)。
(7)Flume是一個分布式、高可用、可靠的海量日志聚合系統(tǒng),支持在系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時,F(xiàn)lume提供對數(shù)據(jù)進(jìn)行簡單處理,并寫到各種數(shù)據(jù)接受方(可定制)的能力。
目前,國內(nèi)外多家研究機(jī)構(gòu)已推出許多安全審計(jì)工具,如Purdue大學(xué)的HASHIS系統(tǒng)、德國的Inspect分布式網(wǎng)絡(luò)安全審計(jì)系統(tǒng)、啟明星辰公司推出的“天玥網(wǎng)絡(luò)安全審計(jì)系統(tǒng)”。然而,隨著大數(shù)據(jù)時代的到來,這些安全審計(jì)系統(tǒng)存在一個共同問題:無法對大數(shù)據(jù)量系統(tǒng)日志進(jìn)行有效處理或者處理速度非常慢,日志的存儲也基本僅限于傳統(tǒng)的關(guān)系型數(shù)據(jù)庫。
由于在傳統(tǒng)的安全審計(jì)系統(tǒng)中不能對海量數(shù)據(jù)進(jìn)行有效處理,因此我們將大數(shù)據(jù)相關(guān)技術(shù)運(yùn)用到安全審計(jì)技術(shù)中,以滿足審計(jì)系統(tǒng)對大數(shù)據(jù)量日志的分析需求?;舅枷耄撼浞掷肏adoop2.0、Spark等大數(shù)據(jù)生態(tài)系統(tǒng)的集群特征,將大數(shù)據(jù)安全審計(jì)系統(tǒng)中需要巨大計(jì)算能力的各個模塊的存儲要求以及計(jì)算和分析擴(kuò)展到集群中的各個節(jié)點(diǎn)上。運(yùn)用Kafka與Flume收集數(shù)據(jù),同時充分利用Hadoop2.0集群的存儲能力以及YARN的資源調(diào)度能力,借助Spark進(jìn)行相關(guān)數(shù)據(jù)挖掘工作。其中,MLbase、Spark Streaming是Spark軟件生態(tài)中的一部分。通過MLbase可進(jìn)行審計(jì)日志挖掘,Spark Streaming則將流式計(jì)算分解成一系列短小的批處理作業(yè),以提供快速可靠的計(jì)算服務(wù)能力,是一個對實(shí)時數(shù)據(jù)流進(jìn)行高通量、容錯處理的流式處理系統(tǒng)。各個大數(shù)據(jù)組件的部署如圖3所示,審計(jì)數(shù)據(jù)將會從上至下、從左至右流動。
圖3 大數(shù)據(jù)組件部署
Spark啟用了內(nèi)存分布式數(shù)據(jù)集,充分利用分布式內(nèi)存技術(shù)。Spark可直接運(yùn)行在YARN上,而YARN同時支持多種分布式文件系統(tǒng)存放數(shù)據(jù)。Spark搭建在Hadoop環(huán)境上,可以利用Hadoop生態(tài)系統(tǒng)HDFS、HBase、Hive、Flume等組件。
Spark在大數(shù)據(jù)挖掘方面具有得天獨(dú)厚的優(yōu)勢。根據(jù)對Spark平臺的分析與學(xué)習(xí),總結(jié)出以下幾點(diǎn)原因:
(1)數(shù)據(jù)挖掘算法一般都有很多個步驟迭代計(jì)算的過程,進(jìn)行數(shù)據(jù)挖掘的計(jì)算需要在多次迭代后獲得足夠小的誤差或者足夠收斂才會停止。迭代時如果使用Hadoop的MapReduce計(jì)算框架,每次計(jì)算都要讀/寫磁盤以及任務(wù)的啟動等工作[5],導(dǎo)致非常大的I/O和CPU消耗。而Spark基于內(nèi)存的計(jì)算模型,天生擅長迭代計(jì)算,多個步驟計(jì)算直接在內(nèi)存中完成,只有必要時才會操作磁盤和網(wǎng)絡(luò)。所以,Spark正是機(jī)器學(xué)習(xí)與數(shù)據(jù)挖掘的理想平臺。
(2)從通信角度講,如果使用Hadoop的MapReduce計(jì)算框架,JobTracker和TaskTracker之間由于是通過heartbeat的方式進(jìn)行通信和傳遞數(shù)據(jù),將會導(dǎo)致執(zhí)行速度非常慢。而Spark具有出色而高效的Akka和Netty通信系統(tǒng),通信效率極高。
(3)Spark的設(shè)計(jì)初衷是為了支持一些迭代的Job,正好符合很多數(shù)據(jù)挖掘算法的特點(diǎn)。
根據(jù)大數(shù)據(jù)分析過程以及上面的基本設(shè)計(jì)思想,采用分層的設(shè)計(jì)思路,即在底層使用Spark,結(jié)合Hadoop相關(guān)組件來存儲、處理和分析海量數(shù)據(jù),而在高層通過接口透明地調(diào)用底層的存儲和計(jì)算能力。系統(tǒng)各部分結(jié)構(gòu)如圖4所示。
圖4 大數(shù)據(jù)審計(jì)系統(tǒng)整體架構(gòu)
3.1 大數(shù)據(jù)量的審計(jì)數(shù)據(jù)采集與存儲
(1)對于審計(jì)數(shù)據(jù)的采集,在采集層主要可以使用Flume、Kafka兩種技術(shù)。Kafka更應(yīng)該定位為中間件系統(tǒng),可以理解為一個cache系統(tǒng)。Kafka設(shè)計(jì)使用硬盤append方式,獲得了非常好的效果。不同系統(tǒng)之間融合往往數(shù)據(jù)生產(chǎn)/消費(fèi)速率不同,這時可以在這些系統(tǒng)之間加上kafka。因?yàn)閷τ诖罅繉?shí)時數(shù)據(jù),數(shù)據(jù)生產(chǎn)快且具有突發(fā)性,如果直接寫入HDFS或者HBase,則可能會致使高峰時間數(shù)據(jù)讀失敗。因此,對于快速實(shí)時數(shù)據(jù),先把數(shù)據(jù)寫到Kafka,然后從Kafka導(dǎo)入到大數(shù)據(jù)存儲系統(tǒng)中。對于離線計(jì)算處理,實(shí)時性要求不高,可以使用Flume直接收集系統(tǒng)日志導(dǎo)入大數(shù)據(jù)存儲系統(tǒng)[6]。兩種方式的日志采集如圖5所示。
圖5 日志采集工作流程
一個Flume Agent進(jìn)程包含三個組件:Source組件、Channel組件、Sink組件。Source組件負(fù)責(zé)收集日志文件并發(fā)送給Channel組件,Channel組件形成一個管道,再由Sink組件讀取Channel組件中的日志文件并發(fā)送給其他目標(biāo)或者文件系統(tǒng)。
通過Flume的Agent代理收集日志,然后匯總到Flume集群,再由Flume的Sink將日志輸送到Kafka集群(供實(shí)時計(jì)算處理)和HDFS(離線計(jì)算處理),從而完成審計(jì)數(shù)據(jù)的采集和生產(chǎn)流程。
(2)系統(tǒng)中可以使用HDFS和HBase來存儲文件和數(shù)據(jù)。HDFS具有很高的數(shù)據(jù)吞吐量,且很好地實(shí)現(xiàn)了容錯機(jī)制,即便出現(xiàn)硬件故障,也可以通過容錯策略來保證數(shù)據(jù)的高可用性。使用HDFS,可以為原始的大數(shù)據(jù)提供存儲空間,將數(shù)據(jù)存放于各個數(shù)據(jù)節(jié)點(diǎn)上,為數(shù)據(jù)預(yù)處理、數(shù)據(jù)挖掘過程提供輸入數(shù)據(jù),且輸出數(shù)據(jù)也保存在HDFS中。利用HBase技術(shù)可以在廉價PC Server上搭建可伸縮的分布式存儲集群。HBase提供了CRUD操作,可以很方便地處理HBase中存儲的數(shù)據(jù)。在HBase之上還可以使用Spark的計(jì)算模型,以RDD形式來并行處理大規(guī)模數(shù)據(jù),可將數(shù)據(jù)存儲與并行計(jì)算完美結(jié)合在一起[7]。
3.2 數(shù)據(jù)預(yù)處理
數(shù)據(jù)預(yù)處理是將數(shù)據(jù)挖掘技術(shù)應(yīng)用到大數(shù)據(jù)環(huán)境不同數(shù)據(jù)結(jié)構(gòu)中的重要步驟和技術(shù)。隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,半結(jié)構(gòu)化數(shù)據(jù)、Web數(shù)據(jù)、來自云的數(shù)據(jù)等各種數(shù)據(jù)形式層出不窮。由于原始大量數(shù)據(jù)不可避免存在噪聲或者不一致的數(shù)據(jù),因此為了提高數(shù)據(jù)挖掘質(zhì)量,必須進(jìn)行數(shù)據(jù)預(yù)處理。
數(shù)據(jù)預(yù)處理的方法諸多,如數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)歸約、數(shù)據(jù)變換等。運(yùn)用這些數(shù)據(jù)處理技術(shù),可大大提高數(shù)據(jù)挖掘模式的質(zhì)量,使數(shù)據(jù)挖掘算法發(fā)揮最佳效果,降低實(shí)際對大數(shù)據(jù)進(jìn)行挖掘所需要的時間。數(shù)據(jù)預(yù)處理階段根據(jù)收集到的審計(jì)日志的特點(diǎn),可利用weka等數(shù)據(jù)預(yù)處理工具或結(jié)合審計(jì)日志的特點(diǎn),自行編寫程序完成。
3.3 查詢所需分析日志
HBase的表按主鍵RowKey進(jìn)行字典排序,其快速查找也建立在RowKey基礎(chǔ)上,但RowKey實(shí)際上是數(shù)據(jù)表的一級索引(Primary Index)。由于HBase本身沒有二級索引(Secondary Index)機(jī)制,基于索引檢索數(shù)據(jù)只能單純依靠RowKey。然而,單一RowKey固有的局限性決定它不可能像關(guān)系型數(shù)據(jù)庫建立多個索引從而有效支持多條件查詢。Solr是一款基于Lucene的高性能全文搜索引擎,可提供豐富的查詢語言,同時實(shí)現(xiàn)可配置、可擴(kuò)展,并優(yōu)化查詢性能,實(shí)現(xiàn)高效檢索。因此,可使用Solr解決HBase二級索引的問題,以快速檢索需要分析的數(shù)據(jù)。文獻(xiàn)[8]提出了一種使用Solr建立二級索引的方法,大大提高了檢索效率,滿足了審計(jì)系統(tǒng)存儲和處理大數(shù)據(jù)的需求。
3.4 運(yùn)用Spark進(jìn)行大數(shù)據(jù)挖掘
根據(jù)挖掘任務(wù)的不同,數(shù)據(jù)挖掘階段可以使用不同的技術(shù)和處理方法。常見的數(shù)據(jù)挖掘任務(wù)包括特征化、區(qū)分、關(guān)聯(lián)分析、分類、聚類等。這里,我們主要運(yùn)用Spark運(yùn)行數(shù)據(jù)挖掘算法。Spark的核心設(shè)計(jì)是彈性分布式數(shù)據(jù)集(Resilient Distributed Dataset,RDD)。RDD是一種精心設(shè)計(jì)的數(shù)據(jù)結(jié)構(gòu),它是只讀的分區(qū)記錄的集合。利用RDD可以設(shè)計(jì)出能夠在Spark下高效執(zhí)行的數(shù)據(jù)挖掘程序,可以利用其他分區(qū)的RDD數(shù)據(jù)計(jì)算出指定分區(qū)的RDD相關(guān)信息,可以用于有向無環(huán)圖(DAG)數(shù)據(jù)流的應(yīng)用,可通過聯(lián)合分區(qū)的控制減少機(jī)器之間的數(shù)據(jù)混合。在這里,我們可以自己編寫代碼,利用IntelliJ IEDA打成jar包,提交至Spark平臺運(yùn)行。Spark程序運(yùn)行如圖6所示。
圖6中,Spark作業(yè)由客戶端啟動,包括兩個階段。第一階段記錄變換算子序列、增量構(gòu)建DAG圖;第二階段由行動算子Action觸發(fā),這類算子會觸發(fā)SparkContext提交Job作業(yè),DAGScheduler把DAG圖轉(zhuǎn)化為作業(yè)及其任務(wù)集。Spark支持本地單節(jié)點(diǎn)運(yùn)行(開發(fā)調(diào)試有用)或集群運(yùn)行。對于后者,客戶端運(yùn)行于master節(jié)點(diǎn)上,通過Cluster manager把劃分好分區(qū)的任務(wù)集發(fā)送到集群的worker/slave節(jié)點(diǎn)上執(zhí)行,執(zhí)行結(jié)果存到HFDS或HBase等分布式存儲系統(tǒng)中。
圖6 Spark程序運(yùn)行流程
此外,Spark的基本組件MLlib(Machine Learning lib)是常用的機(jī)器學(xué)習(xí)算法的實(shí)現(xiàn)庫,包括訓(xùn)練模塊與預(yù)測模塊兩部分。Spark的設(shè)計(jì)初衷是為了支持一些迭代的Job,這正好符合很多機(jī)器學(xué)習(xí)算法的特點(diǎn)。MLlib目前支持4種常見的機(jī)器學(xué)習(xí)問題:分類、回歸、聚類和協(xié)同過濾。因此,我們做安全審計(jì)日志的數(shù)據(jù)挖掘時,也可以直接調(diào)用MLlib內(nèi)置的算法。下面以K-Means算法為例,說明MLlib的具體使用。
語句1:
val clusters = KMeans.train(parsedData, numClusters, numIterations);
語句2:
val result = clusters.predict (Vectors.dense ("1.0 2.1 3.8".split(' ') .map(_.toDouble)));
語句3:
val cost = model.computeCost (parsedData)
其中,parsedData為用戶數(shù)據(jù),numClusters為類簇個數(shù),numIterations為迭代次數(shù)。語句1運(yùn)用MLlib提供的KMeans.train進(jìn)行模型訓(xùn)練形成數(shù)據(jù)模型,語句2預(yù)測相應(yīng)數(shù)據(jù)所屬的類,使用誤差平方和來評估數(shù)據(jù)模型,并可根據(jù)使cost值較小的K作為KMeans算法的K值,見語句3。通過此實(shí)例的分析可以看出,運(yùn)用MLlib實(shí)現(xiàn)大數(shù)據(jù)挖掘可以大大簡化代碼量,省去自己編寫數(shù)據(jù)挖掘算法的麻煩,且對照Spark官網(wǎng)的解釋與例子[9],可以很快掌握MLlib庫中常用數(shù)據(jù)挖掘算法的使用。
3.5 模式評估與高效便捷的海量事件追溯
當(dāng)數(shù)據(jù)挖掘一旦完成,就會生成挖掘的結(jié)果——模式。但對于給定的用戶,在可能產(chǎn)生的模式中,只存在一小部分模式是此用戶感興趣的。對于模式的期望和興趣衡量,存在一些客觀度量,如規(guī)則的支持度、興趣因子、置信度等。我們在模式評估階段去發(fā)現(xiàn)感興趣的各種模式。追溯系統(tǒng)是安全審計(jì)系統(tǒng)中非常重要的一環(huán),目的是為了在海量數(shù)據(jù)分析的基礎(chǔ)上最終定位并解決用戶實(shí)際問題,可對平臺分析出來的各種結(jié)果進(jìn)行事件源定位。
3.6 可視化與知識表示
對于用戶感興趣的模式,可以在大數(shù)據(jù)安全審計(jì)系統(tǒng)中使用可視化和知識表示技術(shù),以更直觀、更易理解的方式向用戶展示有意義的模式。這是數(shù)據(jù)挖掘系統(tǒng)與用戶的直接交互,可使用戶對挖掘結(jié)果有更直觀準(zhǔn)確的認(rèn)識,從而更好地得到有意義模式的全部內(nèi)涵。
安全審計(jì)是現(xiàn)代安全防護(hù)系統(tǒng)中非常重要的環(huán)節(jié),可以幫助我們發(fā)現(xiàn)系統(tǒng)中可疑的、違規(guī)的或危險(xiǎn)的行為。本文分析傳統(tǒng)安全審計(jì)系統(tǒng)無法處理大數(shù)據(jù)的缺點(diǎn),從大數(shù)據(jù)角度出發(fā),借助大數(shù)據(jù)分析技術(shù)以及Hadoop、Spark等相關(guān)大數(shù)據(jù)分析平臺,構(gòu)建了一種大數(shù)據(jù)環(huán)境下的安全審計(jì)系統(tǒng)框架。借助該框架,通過對審計(jì)日志的采集與存儲,利用大數(shù)據(jù)挖掘算法,可以從大量的日志行為記錄數(shù)據(jù)中抽象出有利于進(jìn)行判斷和比較的特征模型,從而對當(dāng)前系統(tǒng)中的操作做出較合理的推理與判斷,實(shí)現(xiàn)對安全審計(jì)系統(tǒng)的管理。本文提出的安全審計(jì)系統(tǒng)框架為部署在大數(shù)據(jù)環(huán)境下的安全審計(jì)系統(tǒng)提供了一種技術(shù)思路。
[1] 陳建昌.大數(shù)據(jù)環(huán)境下的網(wǎng)絡(luò)安全分析[J].中國新通信,2013,15(17):13-16. CHEN Jian-chang.Analysis of Network Security in Big Data Environment[J].China New Telecommunicatio ns,2013,15(17):13-16.
[2] 孟小峰,慈祥.大數(shù)據(jù)管理:概念、技術(shù)與挑戰(zhàn)[J].計(jì)算機(jī)研究與發(fā)展,2013,50(01):146-169. M E N G X i a o-f e n g,C I X i a n g.B i g D a t a Management:Concepts,Techniques and Challenges [J].Journal of Computer Research and Development,2013,50(01):146-169.
[3] 張鋒軍.大數(shù)據(jù)技術(shù)研究綜述[J].通信技術(shù),2014, 47(11):1240-1248. ZHANG Feng-jun.Overview on Big Data Technology [J]. Communications Technology,2014,47(11):1240-1248.
[4] Apache Hadoop.Home Page[EB/OL].(2016-02-13) [2016-04-26].https:// hadoop.apache.org/.
[5] DEAN J,GHEMAWAT S.MapReduce:Simplified Data Processing on Large Clusters[J].Communications of the ACM,2008,51(01):107-113.
[6] LOGANATHAN A,SINHA A,MUTHURAMAKRISHNAN V,et al.A Systematic Approach to Big Data[J]. International Journal of Information & Computation Technology,2014,4(09):869-878.
[7] 李明桂,肖毅,陳劍鋒等.基于大數(shù)據(jù)的安全事件挖掘框架[J].通信技術(shù),2015,48(03):346-350. LI Ming-gui,XIAO Yi,CHEN Jian-feng,et al.Big Data-based Framework for Security Event Mining [J]. Communications Technology,2015,48(03):346-350.
[8] 許杰,冷冰,李明桂等.大數(shù)據(jù)處理技術(shù)在安全審計(jì)系統(tǒng)中的應(yīng)用[J].通信技術(shù),2016,49(03):346-351. XU Jie,LENG Bing,LI Ming-gui,et al.Application of Big Data Processing Technology in Audit System [J]. Communications Technology,2016,49(03):346-351.
[9] Spark.Spark Website[EB/OL].(2016-03-09)[2016-05-02].http://spark.apache.org/.
丁文超(1991—),男,碩士研究生,主要研究方向?yàn)樾畔踩c大數(shù)據(jù);
冷 冰(1976—),男,碩士,高級工程師,主要研究方向?yàn)橥ㄐ啪W(wǎng)絡(luò)與信息安全;
許 杰(1978—),男,博士,工程師,主要研究方向?yàn)樾畔踩c大數(shù)據(jù);
嚴(yán)麗娜(1973—),女,碩士,講師,主要研究方向?yàn)榫W(wǎng)絡(luò)安全。
Security Audit System Framework in Big Data Environment
DING Wen-chao1, LENG Bing1, XU Jie1, YAN Li-na2
(No.30 Institute of CETC, Chengdu Sichuan 610041, China; 2.Department of Information Security, Xi'an Communication Institute,Xi'an Shaanxi 710106, China)
Security audit technology plays an important role in modern security protection system. However, traditional security audit technology and effective management of data, fast retrieval and data analysis would be faced with many difficult problems in modern big data environment. Major data platforms are briefly described, such as Hadoop and Spark, and aiming at the problem that traditional security auditing technology cannot handle big data, the existing big data technology is applied to proposing the design idea of big data security audit system. Finally, the framework of security audit system in big data environment is designed, the role and process in each part of the framework also given. The framework can meet the needs of security audit in big data environment.
security audit; big data; data mining; Spark
F239.2
A
1002-0802(2016)-07-0909-06
10.3969/j.issn.1002-0802.2016.07.022
2016-03-20;
2016-06-13 Received date:2016-03-20;Revised date:2016-06-13