基于記憶的APT檢測原理
在探討APT攻擊檢測之前,我們先分析下檢測的內(nèi)涵。從本質(zhì)上講,檢測是將求檢對象從其所依附的環(huán)境中識(shí)別出來的過程。為了識(shí)別求檢對象,我們需要從檢測環(huán)境中采樣能體現(xiàn)求檢對象特征的數(shù)據(jù),形成被檢測域;需要依賴特定的背景知識(shí),形成判據(jù)庫;需要采取一定的判定算法,形成判定機(jī)制;最終在被檢測域、判據(jù)、判定機(jī)制的共同作用下,做出是否存在求檢對象的論斷,整個(gè)過程如圖所示。
檢測邏輯模式
以傳統(tǒng)的入侵檢測系統(tǒng)(IDS)為例,求檢對象是網(wǎng)絡(luò)攻擊行為,檢測環(huán)境就是包含了攻擊行為數(shù)據(jù)的網(wǎng)絡(luò)流量數(shù)據(jù)。為了檢測攻擊,我們需要實(shí)時(shí)采集網(wǎng)絡(luò)流量,形成IDS的被檢測域;需要提取各類攻擊行為的網(wǎng)絡(luò)特征構(gòu)造特征庫,作為IDS的判據(jù)庫;需要采用特征匹配算法,作為IDS判定流量中是否包含攻擊行為的判斷機(jī)制。有了流量數(shù)據(jù)、特征庫、特征匹配算法,我們就能檢測網(wǎng)絡(luò)中是否存在已知攻擊行為。
傳統(tǒng)IDS這種檢測模式,在應(yīng)對常規(guī)攻擊曾發(fā)揮了巨大作用,但對于APT卻顯得無能為力,主要原因在于:
(1) 傳統(tǒng)IDS的被檢測域是實(shí)時(shí)網(wǎng)絡(luò)流量,只判斷實(shí)時(shí)網(wǎng)絡(luò)流量中是否包含攻擊行為;而APT整個(gè)過程的時(shí)間跨度很長,從單個(gè)時(shí)間點(diǎn)的角度看APT無法了解全貌,也無法識(shí)別攻擊者的真實(shí)意圖,只有將長時(shí)間的可疑行為進(jìn)行關(guān)聯(lián)分析才能實(shí)現(xiàn)APT的有效檢測。
(2) 傳統(tǒng)IDS的判斷機(jī)制是特征匹配,只能檢測出提取過攻擊簽名的已知攻擊行為;而APT過程中往往采用0day、特種木馬、隱蔽通道傳輸?shù)任粗?,無法通過誤用檢測的方式進(jìn)行準(zhǔn)確識(shí)別,只有通過異常檢測的方式才有可能識(shí)別出可疑的攻擊行為。
鑒于上述不足,要有效對抗APT,我們一方面要擴(kuò)大被檢測域,將基于單個(gè)時(shí)間點(diǎn)的實(shí)時(shí)檢測轉(zhuǎn)變?yōu)榛跉v史時(shí)間窗的異步檢測;另一方面要豐富判定機(jī)制,在檢測已知攻擊的同時(shí)能夠兼顧對未知攻擊的檢測。為此我們提出了基于記憶的新檢測模式,共分為四個(gè)步驟:
(1) 擴(kuò)大:即拓寬被檢測域,對全流量數(shù)據(jù)進(jìn)行存儲(chǔ)分析。這樣在檢測到可疑行為時(shí),可回溯與攻擊行為相關(guān)的歷史流量數(shù)據(jù)進(jìn)行關(guān)聯(lián)分析,之前已發(fā)生過、未能引起分析人員注意的報(bào)警,有可能隱藏著蓄意攻擊意圖,通過這種回溯關(guān)聯(lián)分析就有可能進(jìn)行有效識(shí)別。有了全流量的存儲(chǔ),就有可能回溯到任意歷史時(shí)刻,采用新的檢測特征和檢測技術(shù),對已發(fā)生的流量進(jìn)行任意粒度的分析,這是本系統(tǒng)最大的特點(diǎn)。
(2) 濃縮:對存儲(chǔ)下來的大數(shù)據(jù)進(jìn)行降解操作,刪除與攻擊無關(guān)的數(shù)據(jù)以節(jié)省空間,同時(shí)保留與攻擊相關(guān)的數(shù)據(jù)以備后續(xù)分析。濃縮環(huán)節(jié)需要借助于攻擊檢測模塊,可通過第三方檢測設(shè)備如IDS的報(bào)警進(jìn)行降解,也可直接對全流量數(shù)據(jù)進(jìn)行異常檢測產(chǎn)生可疑報(bào)警,基于報(bào)警事件進(jìn)行降解。
(3) 精確:對產(chǎn)生的可疑攻擊數(shù)據(jù)做進(jìn)一步深入分析,產(chǎn)生對攻擊行為的精確報(bào)警。可通過多維數(shù)據(jù)可視化分析,定位可疑會(huì)話,再進(jìn)一步對流量數(shù)據(jù)進(jìn)行細(xì)粒度協(xié)議解析和應(yīng)用還原,識(shí)別異常行為和偽裝成正常業(yè)務(wù)的攻擊行為。本環(huán)節(jié)需要分析人員的參與,通過人機(jī)結(jié)合的方式提升分析效率和準(zhǔn)確度。
(4) 場景:對各類攻擊報(bào)警進(jìn)行關(guān)聯(lián),識(shí)別報(bào)警之間的攻擊層語義關(guān)系,根據(jù)孤立報(bào)警中建立完整攻擊場景。通常的做法是以關(guān)聯(lián)規(guī)則的方式建立攻擊場景知識(shí)庫,通過對報(bào)警進(jìn)行匹配和關(guān)聯(lián),完成攻擊場景的構(gòu)建。