本發(fā)明涉及網(wǎng)絡(luò)安全和數(shù)據(jù)聚合領(lǐng)域,特別涉及一種基于反向DNS查詢屬性聚合的異常檢測方法及系統(tǒng)。
背景技術(shù):
隨著網(wǎng)絡(luò)入侵和攻擊行為正朝著分布化、規(guī)模化、復(fù)雜化、間接化等趨勢發(fā)展,當(dāng)前對安全產(chǎn)品技術(shù)提出更高的要求,急需一種高效的網(wǎng)絡(luò)安全告警技術(shù)來提升安全產(chǎn)品的性能。
入侵檢測是對入侵行為的檢測,入侵檢測系統(tǒng)通過收集網(wǎng)絡(luò)及計(jì)算機(jī)系統(tǒng)內(nèi)所有關(guān)鍵節(jié)點(diǎn)的信息,檢查網(wǎng)絡(luò)或系統(tǒng)中是否存在違反安全策略行為及被攻擊跡象。入侵檢測的數(shù)據(jù)來源是各種網(wǎng)絡(luò)安全設(shè)備(如防火墻、IDS、IPS等)的日志,這些設(shè)備會(huì)實(shí)時(shí)的記錄每個(gè)時(shí)間監(jiān)測點(diǎn)目標(biāo)網(wǎng)絡(luò)的活動(dòng)情況以便分析目標(biāo)網(wǎng)絡(luò)的運(yùn)行情況。
當(dāng)網(wǎng)絡(luò)中存在大量攻擊時(shí)(如攻擊者發(fā)起拒絕服務(wù)攻擊),網(wǎng)絡(luò)安全設(shè)備會(huì)產(chǎn)生大量的日志,產(chǎn)生并處理這些日志本身就會(huì)對網(wǎng)絡(luò)安全設(shè)備的性能造成巨大的影響。因此需要根據(jù)某些條件對這些日志進(jìn)行聚合后再進(jìn)行處理,這樣可以減少大量重復(fù)的日志,減輕安全設(shè)備的負(fù)擔(dān),避免由于大量重復(fù)的日志而導(dǎo)致網(wǎng)絡(luò)設(shè)備出現(xiàn)擁塞。
當(dāng)前主要有兩大類入侵檢測技術(shù),分別是基于誤用技術(shù)、基于異常技術(shù)?;谡`用技術(shù)是指,假設(shè)所有可能出現(xiàn)的網(wǎng)絡(luò)攻擊類別(“DoS”、“信息收集類攻擊”、“信息欺騙類攻擊”、“利用類攻擊”)均已知,將待測記錄來匹配這些已知網(wǎng)絡(luò)攻擊類別?;谡`用技術(shù)的優(yōu)勢在于誤報(bào)率較低、對于已知類別的網(wǎng)絡(luò)攻擊判斷迅速,缺點(diǎn)是對于未知種類網(wǎng)絡(luò)攻擊的辯識率低下?;诋惓<夹g(shù)是指,事先根據(jù)規(guī)則定義好“正?!本W(wǎng)絡(luò)行為的特征,將待測記錄來匹配該特征,凡是不匹配的網(wǎng)絡(luò)行為均認(rèn)定為網(wǎng)絡(luò)攻擊?;诋惓<夹g(shù)的優(yōu)勢在于漏報(bào)率較低、對于未知類別網(wǎng)絡(luò)攻擊的判斷迅速,缺點(diǎn)是誤報(bào)率偏高?!奥﹫?bào)”是指將本是攻擊的網(wǎng)絡(luò)行為認(rèn)定為正常,“誤報(bào)”是指將本是正常的網(wǎng)絡(luò)行為認(rèn)定為攻擊。
由于發(fā)起者與許多目標(biāo)主機(jī)進(jìn)行交互,它們的目的有合法的(大的郵件列表或者網(wǎng)絡(luò)爬蟲)、惡意的(垃圾郵件)、或者在這兩者之間(掃描和P2P)。我們的目標(biāo)是對發(fā)起者進(jìn)行推測和分類,并了解發(fā)起者與多少目標(biāo)主機(jī)進(jìn)行了交互。一個(gè)發(fā)起者是一個(gè)單一的IP,但是會(huì)與很多目標(biāo)交互。應(yīng)用程序類的研究表明,發(fā)起者與他們的目標(biāo)是相互影響的。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是:提供一種基于反向DNS查詢屬性聚合的異常檢測方法及系統(tǒng),只需要使用反向DNS查詢記錄,可以快速的檢測異常,避免大量日志造成設(shè)備擁塞,提高設(shè)備性能。同時(shí)我們的方法是取決于被攻擊的目標(biāo),是攻擊者無法控制的,攻擊者無法隱藏其行為,可以更好的檢測網(wǎng)絡(luò)環(huán)境中的異常行為。
為了實(shí)現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案:
一種基于反向DNS查詢屬性聚合的異常檢測方法,具體步驟如下:
1)收集用戶網(wǎng)絡(luò)設(shè)備產(chǎn)生的DNS訪問日志,將含有PTR字段的反向DNS查詢?nèi)罩具^濾出來,并提取反向DNS查詢?nèi)罩镜娜罩咎卣髯侄危?/p>
2)將提取的日志特征字段以目標(biāo)IP地址為屬性進(jìn)行聚合,得到相應(yīng)的聚合信息元組;
3)針對聚合信息元組提取特征向量;
4)根據(jù)提取出的特征向量及用戶的網(wǎng)絡(luò)歷史數(shù)據(jù),訓(xùn)練出正向模型;
5)使用正向模型檢測目標(biāo)IP地址是否存在異常。
更進(jìn)一步,步驟1)中,所述日志特征字段包括反向DNS查詢?nèi)罩局械拿恳粭l訪問記錄的有效信息元組=<目標(biāo)IP地址、查詢IP地址>。
更進(jìn)一步,步驟2)中所述聚合分為橫向聚合和縱向聚合:
橫向聚合是將具有相同目標(biāo)IP地址的反向DNS查詢?nèi)罩揪酆系揭黄穑y(tǒng)計(jì)出對應(yīng)的查詢IP,之后根據(jù)統(tǒng)計(jì)出的查詢IP確定查詢IP的類型并標(biāo)示,得到的橫向聚合信息元組=<目標(biāo)IP地址,[<查詢IP,標(biāo)識>]>;
縱向聚合是將具有相同目標(biāo)IP地址的日志聚合到一起,統(tǒng)計(jì)出對應(yīng)的查詢IP以及每個(gè)查詢IP出現(xiàn)的次數(shù),得到的縱向聚合信息元組=<目標(biāo)IP地址,[<查詢IP,數(shù)量>]>。
更進(jìn)一步,針對聚合信息元組提取特征向量包括:
3‐1)針對橫向聚合信息元組提取屬性特征,該步驟又包括:
3‐1‐1)統(tǒng)計(jì)查詢目標(biāo)IP地址的查詢IP地址列表數(shù)量,得到查詢IP查詢方(Querier)數(shù)量和查詢IP查詢方(Querier)/24數(shù)量;
3‐1‐2)查詢知識庫,確認(rèn)查詢IP地址所使用的訪問類型,統(tǒng)計(jì)單個(gè)目標(biāo)IP地址所訪問的類型的數(shù)量。
3‐2)針對縱向聚合信息元組提取屬性特征,該步驟又包括:
3‐2‐1)計(jì)算出查詢IP查詢單個(gè)目標(biāo)IP地址次數(shù)的最大值。
3‐2‐2)計(jì)算出查詢IP查詢單個(gè)目標(biāo)IP地址次數(shù)的最小值。
3‐2‐3)計(jì)算出所有查詢IP查詢目標(biāo)IP地址次數(shù)的均值,用來度量訪問流量的整體情況。
3‐2‐4)計(jì)算出所有查詢IP查詢目標(biāo)IP地址次數(shù)的中位數(shù),用來度量訪問流量的綜合情況。
3‐2‐5)計(jì)算出所有查詢IP查詢目標(biāo)IP地址次數(shù)的方差,用來度量訪問流量的整體波動(dòng)狀態(tài)。
3‐3)提取橫向聚合屬性特征和縱向聚合屬性特征的特征向量。
更進(jìn)一步,步驟3-1-2)中,查詢IP地址所使用的訪問類型包括:
A.郵件服務(wù)器:發(fā)送郵件到大型的郵件列表和郵件服務(wù)的服務(wù)器。
B.IDS:入侵檢測系統(tǒng)。
C.防火墻:安裝防火墻的服務(wù)器和電腦。
D.電腦:普通使用的臺式機(jī)和筆記本。
本發(fā)明還提出了一種基于反向DNS查詢屬性聚合的異常檢測系統(tǒng),包括:
日志收集提取模塊,用于收集DNS日志,提取DNS日志中含有PTR字段的反向DNS查詢?nèi)罩荆姆聪駾NS查詢?nèi)罩局刑崛∪罩咎卣髯侄巍?/p>
數(shù)據(jù)聚合模塊,用于將提取的日志特征字段以目標(biāo)IP地址為屬性進(jìn)行聚合,得到相應(yīng)的聚合信息元組。
特征提取模塊,用于提取聚合后信息元組的特征向量。
數(shù)據(jù)訓(xùn)練模塊,用于使用提取出的特征向量及網(wǎng)絡(luò)內(nèi)的歷史數(shù)據(jù),訓(xùn)練出正向模型。
異常檢測模塊,用于使用正向模型檢測目標(biāo)IP地址是否存在異常行為。
更進(jìn)一步,所述日志特征字段包括反向DNS查詢?nèi)罩局械拿恳粭l訪問記錄的有效信息元組=<目標(biāo)IP地址、查詢IP地址>。
更進(jìn)一步,所述聚合信息元組包括橫向聚合信息元組=<目標(biāo)IP地址,[<查詢IP,標(biāo)識>]>和縱向聚合信息元組=<目標(biāo)IP地址,[<查詢IP,數(shù)量>]>。
更進(jìn)一步,所述橫向聚合信息元組的特征向量包括:查詢IP查詢方數(shù)量,查詢IP查詢方/24數(shù)量,單個(gè)目標(biāo)IP地址所訪問的類型的數(shù)量;所述縱向聚合信息元組的特征向量包括:查詢IP查詢單個(gè)目標(biāo)IP地址次數(shù)的最大值和最小值,所有查詢IP查詢目標(biāo)IP地址次數(shù)的均值,中位數(shù)和方差。
本文發(fā)明的有益效果如下:
本發(fā)明與正向DNS查詢不同的是,反向DNS查詢是為了獲得指定IP對應(yīng)的域名。這種查詢常用于核實(shí)指定IP的身份,例如郵件服務(wù)器會(huì)通過反向DNS查詢來驗(yàn)證對方是否同為郵件服務(wù)器,IDS會(huì)利用反向DNS查詢核實(shí)某些異常IP(網(wǎng)絡(luò)爬蟲、掃描器)的可靠性,以及一些管理系統(tǒng)反向查詢目標(biāo)IP來記錄訪問信息。通過融合各種設(shè)備上反向DNS查詢?nèi)罩荆梢詸z測網(wǎng)絡(luò)的異常行為,比如網(wǎng)段被掃描的頻率、垃圾郵件的肆虐程度。并且,從反向DNS查詢這個(gè)角度進(jìn)行網(wǎng)絡(luò)的異常行為檢測具有以下優(yōu)勢:首先,反向DNS查詢記錄數(shù)據(jù)量較小;其次,通過不同設(shè)備的反向DNS查詢記錄,可以對整個(gè)監(jiān)控網(wǎng)絡(luò)全局進(jìn)行掌控;最后,反向DNS查詢記錄是攻擊者無法控制日志信息的內(nèi)容,日志記錄內(nèi)容的可靠性更高,可以更準(zhǔn)確的反應(yīng)整個(gè)網(wǎng)絡(luò)的活動(dòng)狀態(tài)。
附圖說明
圖1為本發(fā)明基于反向DNS查詢屬性聚合的異常檢測方法及系統(tǒng)的整體技術(shù)架構(gòu)示意圖。
圖2為本發(fā)明基于反向DNS查詢屬性聚合的異常檢測方法及系統(tǒng)的數(shù)據(jù)聚合流程示意圖。
圖3為本發(fā)明基于反向DNS查詢屬性聚合的異常檢測方法及系統(tǒng)的數(shù)據(jù)特征向量提取流程示意圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施方式對本發(fā)明作更加詳細(xì)的描述:
如圖1所示,基于反向DNS查詢屬性聚合的異常檢測方法包括日志收集提取、數(shù)據(jù)聚合、特征向量提取、模型訓(xùn)練、異常檢測五個(gè)部分。
具體地,首先進(jìn)行日志收集提取,將含有PTR字段的DNS日志過濾出來,然后收集過濾之后的反向DNS查詢?nèi)罩荆崛NS訪問數(shù)據(jù)中的每一條訪問記錄的有效信息元組Info=<目標(biāo)IP地址、查詢IP地址>。
然后進(jìn)行數(shù)據(jù)聚合,在本發(fā)明方案中,首先收集網(wǎng)絡(luò)安全設(shè)備中產(chǎn)生的反向DNS查詢?nèi)罩荆崛∪罩咎卣髦?,基于目?biāo)IP地址的屬性對日志進(jìn)行聚合,如圖2所示,分為橫向聚合和縱向聚合兩個(gè)過程,橫向聚合的具體流程如下:
1)統(tǒng)計(jì){<目標(biāo)IP地址1,查詢IP地址1>,<目標(biāo)IP地址1,查詢IP地址2>,<目標(biāo)IP地址2,查詢IP地址2>,…};
2)根據(jù)目標(biāo)IP地址進(jìn)行屬性聚合,將具有相同目標(biāo)IP地址的日志聚合到一起,統(tǒng)計(jì)出所對應(yīng)的查詢IP<目標(biāo)IP地址,(查詢IP1,查詢IP2,…)>,根據(jù)統(tǒng)計(jì)出的查詢IP,查詢對應(yīng)的知識庫,確定查詢IP的類型,并標(biāo)示,得到橫向聚合信息元組I1=<目標(biāo)IP地址,[<查詢IP,標(biāo)識>]>;
縱向聚合具體流程如下:
1)統(tǒng)計(jì){<目標(biāo)IP地址1,查詢IP地址1>,<目標(biāo)IP地址1,查詢IP地址2>,<目標(biāo)IP地址2,查詢IP地址2>,…};
2)根據(jù)目標(biāo)IP地址進(jìn)行屬性聚合,對查詢同一個(gè)目標(biāo)IP地址的相同查詢IP地址,進(jìn)行計(jì)數(shù)+1。得到縱向聚合信息元組I2=<目標(biāo)IP地址,[<查詢IP,數(shù)量>]>;
再然后分別針對聚合得到的信息元組提取出特征向量V,如圖3所示,具體流程如下:
a)橫向聚合是為了得到查詢IP的分布,建立查詢IP的廣度信息。
1)統(tǒng)計(jì)查詢目標(biāo)IP地址的查詢IP地址列表數(shù)量,得到查詢IP查詢方數(shù)量Q1和查詢IP查詢方/24數(shù)量Q2;
2)查詢知識庫,確認(rèn)查詢IP地址所使用的訪問類型(主要有A-D這幾種類型),統(tǒng)計(jì)單個(gè)目標(biāo)IP地址所訪問的類型的數(shù)量(T1,T2,T3,T4)。
A.郵件服務(wù)器(T1):發(fā)送郵件到大型的郵件列表和郵件服務(wù)的服務(wù)器。
B.IDS(T2):入侵檢測系統(tǒng)。
C.防火墻(T3):安裝防火墻的服務(wù)器和電腦。
D.電腦(T4):普通使用的臺式機(jī)和筆記本。
3)得到橫向聚合屬性特征向量(Q1,Q2,T1,T2,T3,T4)。這些特征體現(xiàn)了一個(gè)目標(biāo)IP訪問了整個(gè)企業(yè)網(wǎng)絡(luò)的整體情況。Q1表示了目標(biāo)IP訪問了n個(gè)IP的數(shù)量,Q2表示了目標(biāo)IP訪問了n個(gè)IP地址段的數(shù)量,T1,T2,T3,T4分別表示了目標(biāo)IP訪問了企業(yè)內(nèi)部不同的服務(wù)類型。
b)縱向聚合是為得到查詢IP查詢的頻率,建立查詢IP的流量信息。
1)計(jì)算出查詢IP查詢單個(gè)目標(biāo)IP地址次數(shù)的最大值Max。
2)計(jì)算出查詢IP查詢單個(gè)目標(biāo)IP地址次數(shù)的最小值Min。
3)計(jì)算出所有查詢IP查詢目標(biāo)IP地址次數(shù)的均值N,用來度量訪問流量的整體情況。
4)計(jì)算出所有查詢IP查詢目標(biāo)IP地址次數(shù)的中位數(shù)Med,用來度量訪問流量的綜合情況。
5)計(jì)算出所有查詢IP查詢目標(biāo)IP地址次數(shù)的方差P,用來度量訪問流量的整體波動(dòng)狀態(tài)。
6)得到縱向聚合屬性特征向量(Max,Min,N,Med,P)。
c)提取橫向聚合和縱向聚合的屬性特征向量V=(Q1,Q2,T1,T2,T3,T4,Max,Min,N,Med,P)。
最后使用提取出的特征向量結(jié)合一個(gè)月的歷史數(shù)據(jù)訓(xùn)練出正向模型M,當(dāng)檢測目標(biāo)IP的特征向量不符合訓(xùn)練出的正向模型M時(shí),則存在異常行為。