摘 要: 介紹了數(shù)據(jù)挖掘的定義,分析了日志數(shù)據(jù)面臨的挑戰(zhàn)及對(duì)其進(jìn)行挖掘的原因。討論了日志數(shù)據(jù)挖掘的需求,歸納了對(duì)日志數(shù)據(jù)挖掘的具體內(nèi)容,總結(jié)了日志數(shù)據(jù)挖掘的具體應(yīng)用。該研究對(duì)加強(qiáng)企事業(yè)單位計(jì)算機(jī)信息系統(tǒng)安全具有較強(qiáng)的指導(dǎo)意義。
關(guān)鍵詞: 日志;數(shù)據(jù)挖掘;機(jī)理;分析;研究
0 引言
所謂數(shù)據(jù)挖掘(也叫知識(shí)發(fā)現(xiàn)[1]),是指發(fā)現(xiàn)大量數(shù)據(jù)中有趣及有用模式和關(guān)系的過(guò)程,該領(lǐng)域結(jié)合了統(tǒng)計(jì)、人工智能和數(shù)據(jù)庫(kù)管理等知識(shí),以方便對(duì)大數(shù)據(jù)進(jìn)行分析。該定義可從如下4個(gè)方面進(jìn)行理解:(1)數(shù)據(jù)挖掘處理的數(shù)據(jù)量非常大;(2)這些數(shù)據(jù)在計(jì)算機(jī)系統(tǒng)上以機(jī)器可讀的格式存在,是結(jié)構(gòu)化的數(shù)據(jù);(3)利用數(shù)據(jù)可能會(huì)得出一些有用的結(jié)論,也可能無(wú)法得出結(jié)論;(4)要想獲得一些有用的結(jié)論,需對(duì)數(shù)據(jù)進(jìn)行搜索或者分析。
對(duì)日志數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘的目的[2]有兩個(gè):(1)改進(jìn)日志分析的質(zhì)量,提供更好的結(jié)論和預(yù)測(cè)能力;(2)提出不需要少有且昂貴的專業(yè)知識(shí)的高級(jí)和有效方法。通過(guò)對(duì)日志數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘和其他高級(jí)自動(dòng)化分析方法,可將大部分分析的負(fù)擔(dān)轉(zhuǎn)移到軟件和自動(dòng)化系統(tǒng)上,遠(yuǎn)離具備超常技能的分析人員。這樣的分析在過(guò)程的早期階段是重要的。在這種情況下,可定義數(shù)據(jù)挖掘過(guò)程的細(xì)節(jié),然后讓技能水平較低的操作人員運(yùn)行算法,并對(duì)結(jié)果采取行動(dòng),而不會(huì)降低效率。
1 日志數(shù)據(jù)面臨的挑戰(zhàn)
在理想的狀況下,大都希望減少人為工作量,提升自動(dòng)化系統(tǒng)在日志分析中的重要性。而對(duì)日志進(jìn)行數(shù)據(jù)挖掘[3]就是一種有效的方法,但日志分析會(huì)面臨如下挑戰(zhàn)。(1)數(shù)據(jù)過(guò)多:日志數(shù)據(jù)的體積很大,超出了分析系統(tǒng)和分析人員的能力,從而摧毀了獲得結(jié)論的可能性。確實(shí),日志可能達(dá)到數(shù)GB,并擴(kuò)大到數(shù)TB,因而就需要選擇專門(mén)工具來(lái)應(yīng)對(duì)這種“洪泛”。(2)數(shù)據(jù)不足:因?yàn)楦鞣N不同的原因,數(shù)據(jù)的關(guān)鍵部分易缺失,從而使日志分析超出了應(yīng)有的難度。(3)記錄各種各樣:需要分析太多不同和不相似的日志來(lái)源,才能得出真相。這個(gè)問(wèn)題是因?yàn)槿狈y(tǒng)一的審計(jì)標(biāo)準(zhǔn),大部分應(yīng)用程序的日志都采用創(chuàng)建者開(kāi)發(fā)的格式,從而導(dǎo)致大量分析上的挑戰(zhàn)。(4)數(shù)據(jù)重復(fù):不同的日志引用相同事件,沒(méi)有任何指示。這種情況往往因?yàn)椴煌罩驹慈狈r(shí)間同步而變得更加復(fù)雜。
2 對(duì)日志進(jìn)行數(shù)據(jù)挖掘的原因
雖然現(xiàn)已有很多技術(shù)可應(yīng)對(duì)日志數(shù)據(jù)的挑戰(zhàn),但仍需對(duì)日志進(jìn)行數(shù)據(jù)挖掘,其原因如下:(1)通過(guò)啟用更多類似人類的模式識(shí)別,只需要在分析的早期階段具備較高的專業(yè)知識(shí),從而減少對(duì)高技能分析人員的依賴。(2)處理其他較為常規(guī)的方法,但對(duì)稀疏數(shù)據(jù)無(wú)法進(jìn)行有效分析。(3)檢測(cè)其他無(wú)法發(fā)現(xiàn)的事實(shí),日志數(shù)據(jù)挖掘能夠提高檢測(cè)入侵痕跡的效率。(4)將結(jié)論生成的負(fù)擔(dān)轉(zhuǎn)移到機(jī)器上,這樣,目前僅能由人類完成的任務(wù)也可實(shí)現(xiàn)自動(dòng)化??筛鶕?jù)結(jié)論采取的行動(dòng),從而避免為了解所發(fā)生的情況而絞盡腦汁。(5)嘗試預(yù)測(cè)問(wèn)題,而不是尋找處理已發(fā)生情況的方法。雖然數(shù)據(jù)挖掘不提供對(duì)這類預(yù)測(cè)的保證,但確實(shí)比其他方法更接近目標(biāo)。
3 日志數(shù)據(jù)挖掘的需求分析
日志數(shù)據(jù)挖掘的許多需求與重要的日志分析一樣,但有些附加因素可能會(huì)使日志數(shù)據(jù)更適合于挖掘,或?qū)⒖蛇x需求轉(zhuǎn)變?yōu)閺?qiáng)制性需求。
3.1 數(shù)據(jù)集中化
對(duì)于過(guò)濾和總結(jié)等常規(guī)日志分析來(lái)說(shuō),只關(guān)注一個(gè)位置是很好的,而對(duì)于日志挖掘這一點(diǎn)變得很關(guān)鍵,因?yàn)橥诰蛩惴ū热魏畏治鋈藛T處理的數(shù)據(jù)都要多得多。
3.2 規(guī)范化
如上所述,查看集中化的不同數(shù)據(jù)源需要統(tǒng)一的信息格式,這種格式并不是真正的標(biāo)準(zhǔn),只是表現(xiàn)日志數(shù)據(jù)的統(tǒng)一方式。
3.3 關(guān)系存儲(chǔ)
關(guān)系數(shù)據(jù)存儲(chǔ)是不可缺少的。但是如果只進(jìn)行監(jiān)督的分析和過(guò)濾,那這樣做就沒(méi)有什么價(jià)值。這種規(guī)范化可通過(guò)搜索日志中的公共字段實(shí)現(xiàn)。常見(jiàn)的字段包括:時(shí)間、來(lái)源、目標(biāo)、協(xié)議、端口、用戶名、事件/攻擊類型、交換字節(jié)數(shù)等。因此,規(guī)范化和集中化數(shù)據(jù)可能受制于日志數(shù)據(jù)挖掘算法?,F(xiàn)在,應(yīng)做好準(zhǔn)備研究應(yīng)用數(shù)據(jù)挖掘所要尋找的內(nèi)容。
4 對(duì)日志數(shù)據(jù)挖掘什么
數(shù)據(jù)挖掘方法在不確定所需搜索內(nèi)容時(shí)最有用。如何找到有趣的信息?系統(tǒng)管理員和安全分析人員覺(jué)得有趣和有幫助的信息有如下6種。
4.1 受感染的系統(tǒng)傳播惡意軟件
在許多情況下很明顯,每個(gè)安全管理員對(duì)受感染后在企業(yè)范圍甚至互聯(lián)網(wǎng)范圍內(nèi)傳播的系統(tǒng)都有著很大的興趣。盡管有防病毒軟件和其他專用解決方案,日志挖掘在跟蹤這種危害性極大的系統(tǒng)方面已經(jīng)被證明很有價(jià)值。
4.2 遭到入侵的系統(tǒng)
每個(gè)獲得認(rèn)證的安全專家都應(yīng)該對(duì)了解攻擊者或惡意軟件已經(jīng)接管網(wǎng)絡(luò)中的一個(gè)或者多個(gè)系統(tǒng)感興趣。
4.3 成功的攻擊
如果攻擊者剛剛成功地在你的系統(tǒng)上打開(kāi)缺口,婉轉(zhuǎn)地說(shuō),知道這一點(diǎn)可能“有趣”;雖然這與前一條相關(guān),但是它通常指的是攻擊的早期階段,這時(shí),攻擊從嘗試發(fā)展為成熟的入侵和對(duì)系統(tǒng)的利用。
4.4 內(nèi)部人員違規(guī)使用和知識(shí)產(chǎn)權(quán)竊取
懷有惡意的黑客和蠕蟲(chóng)出盡了風(fēng)頭,而內(nèi)部網(wǎng)絡(luò)違規(guī)使用相比之下似乎顯得簡(jiǎn)單。但是,內(nèi)部人員擁有這一王國(guó)的所有鑰匙,可能造成更加嚴(yán)重的破壞。更糟糕的是,檢測(cè)他們的攻擊比檢測(cè)普通的惡意軟件困難得多。
4.5 隱蔽通道/隱藏后門(mén)通信
除非“精于此道”,否則網(wǎng)絡(luò)中可能不會(huì)常用到隱蔽通道;因此,網(wǎng)絡(luò)安全管理人員很可能對(duì)了解這一情況很感興趣。
4.6 探查增加
雖然大部分敏感的政府網(wǎng)絡(luò)現(xiàn)在只將互聯(lián)網(wǎng)探查活動(dòng)視為噪聲,但如果在日志中反映出這類活動(dòng)增加,可看作是攻擊的前兆,因而也是有趣的。
雖然“拒絕服務(wù)檢測(cè)”總是遭到嘲笑,從某種意義上來(lái)說(shuō),這種檢測(cè)是通過(guò)注意到恰好沒(méi)有任何服務(wù)來(lái)進(jìn)行的,但是系統(tǒng)管理員可能并沒(méi)有監(jiān)控所有系統(tǒng)的正常運(yùn)行,這就是系統(tǒng)崩潰的主要原因。
以上列舉了一些希望通過(guò)挖掘日志發(fā)現(xiàn)的有趣事實(shí)。對(duì)計(jì)算機(jī)而言,“有趣”的準(zhǔn)則很難定義,但用日志數(shù)據(jù)挖掘可做到,其典型應(yīng)用如下。
?。?)探查:網(wǎng)絡(luò)探查和掃描總是在發(fā)生,用戶越來(lái)越能預(yù)料到它們。用戶應(yīng)該了解探查,但是不可能花費(fèi)資源去尋找它們。與此同時(shí),這類探查數(shù)量上的變化更可能成為有趣的信息。
?。?)如果安全架構(gòu)很穩(wěn)固,就能夠預(yù)期到失敗的攻擊;這些攻擊的發(fā)生有各種原因。與探查類似,用戶應(yīng)該了解它們,但是不會(huì)花費(fèi)資源去尋找它們。
(3)正常消息:日志充滿了表明某些例行過(guò)程完成和其他完全正常的事件的消息,這些記錄是用于審計(jì)和其他目的的,它們明顯不出人意料,信息安全管理者也不會(huì)去挖掘它們。但是,變化仍然很重要。常規(guī)的消息停止出現(xiàn),或者開(kāi)始表現(xiàn)出較高或者較低的頻率,這可能令人感興趣。
(4)被阻止的攻擊:這與失敗的攻擊類似,如果用戶的安全措施阻止了攻擊,即使這種攻擊是沒(méi)有想到的有趣攻擊,也不需要立刻采取行動(dòng)。
?。?)系統(tǒng)狀態(tài)更新:類似于正常事件,這些事件無(wú)法訴諸行動(dòng)。同時(shí),系統(tǒng)狀態(tài)更新在某些不尋常的時(shí)候發(fā)生可能很令人感興趣。
5 日志數(shù)據(jù)挖掘的具體應(yīng)用
日志數(shù)據(jù)挖掘主要有如下9個(gè)方面的應(yīng)用[4]。
(1)罕見(jiàn)的事物:由于某種原因,這并不常發(fā)生。如果發(fā)現(xiàn)以前沒(méi)有發(fā)生過(guò)的事件,它很可能是惡意的。因此,罕見(jiàn)事件是挖掘的主要候選。罕見(jiàn)的攻擊、罕見(jiàn)的系統(tǒng)消息以及幾乎從不登錄的用戶,都是值得檢測(cè)的。
?。?)不同的事物:雖然不提倡“日志恐懼癥”,但是應(yīng)該注意和以往不同的事物。這是數(shù)據(jù)挖掘的基本方法起作用的地方。
?。?)不相稱的事物:雖然與上一類緊密相關(guān),但表現(xiàn)得“不相稱”的日志記錄必須加以挖掘,因?yàn)樗鼈兛赡馨腥さ男畔ⅰ?/p>
?。?)古怪的事物:如果某些事物顯得古怪,可能是出現(xiàn)麻煩的象征。這與上面兩個(gè)類別有微妙的差別。要了解古怪的事情,如DNS系統(tǒng)連接到packetstorm.com,自動(dòng)下載攻擊工具,不需要任何基線和預(yù)先的數(shù)據(jù)收集工作。
(5)向不尋常的方法發(fā)展的事物:分析人員和管理員可能發(fā)現(xiàn),有些日志記錄完全改變了正常的通信方向。正如上例中所看到的,到服務(wù)器的連接完全合法,即使使用的是無(wú)害的端口,如TCP端口80,服務(wù)器向外連接也應(yīng)該引起重視。
?。?)最常見(jiàn)的事物:雖然屬于總結(jié)和報(bào)告的范疇,嚴(yán)格說(shuō)不屬于數(shù)據(jù)挖掘,但是“x大事件”對(duì)于尋找有趣的日志記錄及其模式仍然有用。畢竟,如果排名有所上升,例如傳輸帶寬最主要用途,它仍然是有趣的。
?。?)最不常見(jiàn)的事物:類似于罕見(jiàn)事務(wù),簡(jiǎn)單地說(shuō),“發(fā)生次數(shù)最少的事情”,這是“x大事件”的“邪惡姐妹”,甚至比前者更有用。最不吸引人的系統(tǒng)往往成為未來(lái)攻擊和破壞的跳板。
(8)無(wú)趣事物的奇怪組合:這粗略地遵循下面的公式:“善”+“善”=“邪惡”。是的,一組完全正常的日志記錄也可能組成危險(xiǎn)的事件。最簡(jiǎn)單的實(shí)例是端口掃描,它看上去只是一組往往數(shù)量很大但無(wú)害的連接請(qǐng)求。
?。?)其他無(wú)趣事物的統(tǒng)計(jì):某些無(wú)趣事物的計(jì)數(shù)可能令人感興趣。而且,這種計(jì)數(shù)的變化往往更加重要。ICMP“ping”數(shù)據(jù)包的突然增多可能意味著拒絕服務(wù),尤其是這種ICMP洪泛在沒(méi)有預(yù)警的情況下突然發(fā)生時(shí)。
以下列舉一個(gè)典型應(yīng)用來(lái)說(shuō)明。假設(shè)發(fā)現(xiàn)了一個(gè)黑客事故,該事故涉及漏洞掃描器的授權(quán)使用。大部分公司都部署網(wǎng)絡(luò)IDS,但是許多公司并不理解采購(gòu)這些設(shè)備的價(jià)值。這種情況發(fā)生的原因包括日志中的大量假陽(yáng)性,它們削弱了人們對(duì)這些系統(tǒng)的信任?;谔卣鞯南到y(tǒng)為了實(shí)現(xiàn)NIDS的價(jià)值,可以使用日志挖掘方法,旨在從常規(guī)的噪聲和假警告中標(biāo)記出真正的攻擊。注意,在這種情況下可能并不知道攻擊是否成功,只要了解攻擊者的存在和重點(diǎn),并將攻擊與錯(cuò)誤觸發(fā)IDS的無(wú)害事件區(qū)分開(kāi)來(lái)即可。
當(dāng)網(wǎng)絡(luò)基礎(chǔ)設(shè)施組件[5]或者被誤用的檢測(cè)系統(tǒng)記錄合法連接時(shí),它們通常會(huì)在日志中生成少數(shù)特殊的事件類型。例如,通過(guò)防火墻的連接生成一個(gè)連接消息。即使掃描防火墻也可能為每個(gè)連接會(huì)話生成一個(gè)事件,以及一個(gè)用于整個(gè)掃描的事件類型。類似地,“假陽(yáng)性”通常不與同一批主機(jī)之間的其他可疑活動(dòng)相關(guān),例如偵察性掃描或者其他攻擊。相反,假警告更可能會(huì)發(fā)生或者以大量互不相關(guān)的同類日志記錄類型的形式出現(xiàn)。這里,所指的“會(huì)話”是如下要素的獨(dú)特組合:源、目標(biāo)、協(xié)議、源端口和目標(biāo)端口。
因此,如果按照會(huì)話組織數(shù)據(jù)庫(kù)中收集的事件,并記錄每個(gè)會(huì)話中特殊事件的數(shù)量,往往與攻擊類型的數(shù)據(jù)相同,就有辦法區(qū)分真正的攻擊和合法流量及假警報(bào)。這種日志挖掘方法使用一種通用模式,以獲得潛在破壞性攻擊的證據(jù)及結(jié)果,但不能找出攻擊成功的標(biāo)志,只是對(duì)其真假進(jìn)行鑒定。
6 結(jié)論
數(shù)據(jù)挖掘?qū)θ罩痉治龇浅?shí)用,日志數(shù)據(jù)挖掘[6]是審核日志數(shù)據(jù)的一種新穎方法,在實(shí)際工作中非常有效。許多日志類型可從某種挖掘中獲得更有用的結(jié)果。雖然數(shù)據(jù)挖掘是一個(gè)復(fù)雜的領(lǐng)域,但針對(duì)日志進(jìn)行的數(shù)據(jù)挖掘并不十分困難,可在許多環(huán)境中實(shí)現(xiàn)。尤其在需要高技能分析人員和很長(zhǎng)時(shí)間的常見(jiàn)分析無(wú)效時(shí),日志數(shù)據(jù)挖掘能夠提供更多幫助。其對(duì)企事業(yè)單位加強(qiáng)其網(wǎng)站的信息安全[7]會(huì)具有很大的幫助。
參考文獻(xiàn)
[1] 池云.Android平臺(tái)安全機(jī)制探析[J].微型機(jī)與應(yīng)用,2015,33(4):1-3.
[2] 石杰.云計(jì)算環(huán)境下的數(shù)據(jù)挖掘應(yīng)用[J].微型機(jī)與應(yīng)用,2015,33(5):13-15.
[3] 李玲.Web日志數(shù)據(jù)挖掘的個(gè)性化推薦系統(tǒng)的探析[J].科技風(fēng),2014(18):45.
[4] 柳勝國(guó).網(wǎng)絡(luò)輿情中的具有影響力個(gè)體信息發(fā)現(xiàn)與WEB日志數(shù)據(jù)挖掘預(yù)處理技術(shù)[J].價(jià)值工程,2012(16):186-187.
[5] 張玲.淺析WEB日志數(shù)據(jù)挖掘技術(shù)[J].今日科苑,2009(17):106.
[6] 朱紅祥.基于Web日志數(shù)據(jù)挖掘的電子商務(wù)推薦系統(tǒng)[J].商場(chǎng)現(xiàn)代化,2008(28):39-40.
[7] 李萬(wàn)新.Web日志數(shù)據(jù)挖掘在服務(wù)器安全方面的應(yīng)用[J].中山大學(xué)學(xué)報(bào),2007(5):116-118.