本發(fā)明涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,更具體地,涉及基于DDOS攻擊中惡意地址的檢測方法及裝置。
背景技術(shù):
DDOS(Distributed Denial of Service,分布式拒絕服務(wù))攻擊指借助于客戶/服務(wù)器技術(shù),將多個(gè)計(jì)算機(jī)聯(lián)合起來作為攻擊平臺,對一個(gè)或多個(gè)目標(biāo)發(fā)動(dòng)DDOS攻擊,從而成倍地提高拒絕服務(wù)攻擊的威力。通常,攻擊者使用一個(gè)偷竊賬號將DDOS主控程序安裝在一個(gè)計(jì)算機(jī)上,在一個(gè)設(shè)定的時(shí)間主控程序?qū)⑴c大量代理程序通訊,代理程序已經(jīng)被安裝在網(wǎng)絡(luò)上的許多計(jì)算機(jī)上。代理程序收到指令時(shí)就發(fā)動(dòng)攻擊。利用客戶/服務(wù)器技術(shù),主控程序能在幾秒鐘內(nèi)激活成百上千次代理程序的運(yùn)行。
現(xiàn)今針對DDOS攻擊的防御技術(shù)主要使用:(1)反向探測;(2)協(xié)議棧分析及;(3)指紋識別。首先,反向探測是對通過數(shù)據(jù)包的來源地址進(jìn)行驗(yàn)證分析,判斷諸如真實(shí)性,地理位置,端口開放情況等,決定IP地址是否合法,但實(shí)際使用中,有限的資源不允許對所有訪問的地址來源進(jìn)行反向探測,反向探測適合于對已篩選出少量的可疑地址進(jìn)一步核實(shí),反向探測技術(shù)本身并沒有解決如何從海量地址中篩選出疑似攻擊地址的問題。然后,協(xié)議棧分析是基于RFC(Request For Comments,一系列以編號排定的文件)規(guī)范,由于每個(gè)數(shù)據(jù)包類型最基本需符合RFC規(guī)范,攻擊者通過工具構(gòu)造的數(shù)據(jù)包存在不符合規(guī)范的情形,此時(shí)通過協(xié)議棧分析可檢測出攻擊行為,但隨著攻擊的升級,高級的攻擊者仍然可以構(gòu)造出盡可能符合協(xié)議棧規(guī)范的數(shù)據(jù)包,增加協(xié)議棧分析的難度,該分析工具只能應(yīng)對初級程度的攻擊者,也無法準(zhǔn)確地篩選惡意攻擊的IP地址。最后,指紋識別用于識別DDOS攻擊具有最高的精度,同時(shí)需要更多的資源消耗,且無法識別指紋庫當(dāng)中暫未收錄的新型攻擊,在系統(tǒng)主機(jī)受到攻擊時(shí)難以做出快速的反應(yīng)。
因此,雖然定位攻擊者的IP地址具有實(shí)際應(yīng)用價(jià)值,但如何從大量數(shù)據(jù)包通信中確定惡意的IP地址,并保證足夠的準(zhǔn)確率,尤其需要防范將正常訪問的IP地址列入黑名單,對正常用戶造成影響,是目前業(yè)界有待解決的問題。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述問題,本發(fā)明提出了一種基于DDOS攻擊中惡意地址的檢測方法及裝置。
本發(fā)明實(shí)施例中提供了一種基于DDOS攻擊中惡意地址的檢測方法,包括:
獲取預(yù)設(shè)時(shí)間窗當(dāng)中一個(gè)數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集;
在由預(yù)設(shè)數(shù)個(gè)數(shù)據(jù)包的頭文件的所述N個(gè)字段項(xiàng)目組成的候選集當(dāng)中查找包含所述N項(xiàng)集的子集的記錄;
設(shè)定所述記錄的次數(shù)或頻率的最小支持度;
當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包;
當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。
優(yōu)選地,所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型當(dāng)中的至少三個(gè)項(xiàng)目,其中,N≥3;或者,所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型,其中,N≥5;或者,所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型、源端口、網(wǎng)絡(luò)路徑當(dāng)中的至少五個(gè)項(xiàng)目,其中,N≥5。
優(yōu)選地,獲取預(yù)設(shè)時(shí)間窗當(dāng)中一個(gè)數(shù)據(jù)包的頭文件的步驟之前,包括:
監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量,當(dāng)所述數(shù)據(jù)包流量超過第一告警閾值時(shí),獲取預(yù)設(shè)數(shù)量或預(yù)設(shè)時(shí)長內(nèi)的所述數(shù)個(gè)數(shù)據(jù)包。
優(yōu)選地,在由預(yù)設(shè)數(shù)個(gè)數(shù)據(jù)包的頭文件的所述N個(gè)字段項(xiàng)目組成的候選集當(dāng)中查找包含所述N項(xiàng)集的子集的記錄的步驟,包括,
從所述N項(xiàng)集的一元子集開始,到所述N項(xiàng)集的N-1元子集,依次在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k元子集的記錄,其中,1≤k≤N-1;
在所述設(shè)定所述記錄的次數(shù)或頻率的最小支持度的步驟之后,還包括,
當(dāng)所述N項(xiàng)集的k元子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k+1元子集的記錄。
優(yōu)選地,當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址的步驟之后,還包括:
將所述N項(xiàng)集的記錄的次數(shù)或頻率設(shè)置為該惡意地址的風(fēng)險(xiǎn)估值;
設(shè)定所述惡意地址的風(fēng)險(xiǎn)估值的最小可信度;
當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量超過第二告警閾值時(shí),限制非白名單內(nèi)的風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的訪問;
當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量低于第三告警閾值時(shí),分析風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的地址來源,并根據(jù)分析的結(jié)果將該惡意地址加入所述白名單。
相應(yīng)地,本發(fā)明實(shí)施例提供了一種基于DDOS攻擊中惡意地址的檢測裝置,包括:
指針獲取單元,用于獲取預(yù)設(shè)時(shí)間窗當(dāng)中一個(gè)數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集;
記錄查找單元,用于在由預(yù)設(shè)數(shù)個(gè)數(shù)據(jù)包的頭文件的所述N個(gè)字段項(xiàng)目組成的候選集當(dāng)中查找包含所述N項(xiàng)集的子集的記錄;
門限設(shè)定單元,用于設(shè)定所述記錄的次數(shù)或頻率的最小支持度;
指針跳轉(zhuǎn)單元,用于當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包;
結(jié)果判定單元,用于當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。
優(yōu)選地,所述指針獲取單元,包括:
項(xiàng)目指定單元,用于指定預(yù)設(shè)的N個(gè)字段項(xiàng)目;
所述N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型當(dāng)中的至少三個(gè)項(xiàng)目,其中,N≥3;或者,
所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型,其中,N≥5;或者,
所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型、源端口、網(wǎng)絡(luò)路徑當(dāng)中的至少五個(gè)項(xiàng)目,其中,N≥5。
優(yōu)選地,包括:
第一告警單元,用于監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量,當(dāng)所述數(shù)據(jù)包流量超過第一告警閾值時(shí),獲取預(yù)設(shè)數(shù)量或預(yù)設(shè)時(shí)長內(nèi)的所述數(shù)個(gè)數(shù)據(jù)包。
優(yōu)選地,所述記錄查找單元,包括:
遞歸查找單元,用于從所述N項(xiàng)集的一元子集開始,到所述N項(xiàng)集的N-1元子集,依次在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k元子集的記錄,其中,1≤k≤N-1;當(dāng)所述N項(xiàng)集的k元子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k+1元子集的記錄。
優(yōu)選地,還包括:
風(fēng)險(xiǎn)估值單元,用于將所述N項(xiàng)集的記錄的次數(shù)或頻率設(shè)置為該惡意地址的風(fēng)險(xiǎn)估值;
可信度設(shè)定單元,用于設(shè)定所述惡意地址的風(fēng)險(xiǎn)估值的最小可信度;
第二告警單元,用于當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量超過第二告警閾值時(shí),限制非白名單內(nèi)的風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的訪問;
第三告警單元,用于當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量低于第三告警閾值時(shí),分析風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的地址來源,并根據(jù)分析的結(jié)果將該惡意地址加入所述白名單。
相對于現(xiàn)有技術(shù),本發(fā)明提供的方案,獲取檢測時(shí)間窗口當(dāng)中一個(gè)數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集。盡管不同網(wǎng)絡(luò)的數(shù)據(jù)包格式會略有不同,但對于同一網(wǎng)絡(luò)類型的數(shù)據(jù)包頭文件格式是一致的,本發(fā)明只需從一個(gè)數(shù)據(jù)包的頭文件內(nèi)指定的項(xiàng)目信息,就能快速地分析該數(shù)據(jù)包是否由惡意的IP地址發(fā)出,操作簡便、通用性強(qiáng)。在開始分析之前,先由預(yù)設(shè)數(shù)個(gè)數(shù)據(jù)包的頭文件的所述N個(gè)字段項(xiàng)目組成候選集,再在該候選集當(dāng)中查找包含所述N項(xiàng)集的子集的記錄。該候選集是在遭遇大批數(shù)據(jù)包的流量沖擊時(shí),從該批數(shù)個(gè)數(shù)據(jù)包的頭文件中提取指定的N個(gè)字段項(xiàng)目組成的集合。因此,該候選集相應(yīng)的數(shù)據(jù)包當(dāng)中隱藏了DDOS攻擊者通過切換虛擬IP發(fā)出的惡意數(shù)據(jù)包,通過對當(dāng)前一個(gè)數(shù)據(jù)包的N項(xiàng)集與候選集之間的關(guān)聯(lián)性的跟蹤挖掘,即可以通過N項(xiàng)少量的項(xiàng)目數(shù)據(jù)快速地匹配關(guān)聯(lián)性,準(zhǔn)確地鎖定惡意IP地址。對于準(zhǔn)確度的把握,可以通過設(shè)定所述記錄的次數(shù)或頻率的最小支持度來實(shí)現(xiàn)。一個(gè)數(shù)據(jù)包的N項(xiàng)集的子集在所述候選集當(dāng)中出現(xiàn)的次數(shù)越多,和/或出現(xiàn)的頻率越大,則表示該數(shù)據(jù)包由惡意地址發(fā)出的可能性越大。當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包;當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。本方案的第一個(gè)優(yōu)勢是,對于惡意地址發(fā)出的數(shù)據(jù)包的N項(xiàng)集,該N項(xiàng)集的任一非空子集相對于候選集的記錄的次數(shù)或頻率,必然是超過最小支持度的。因?yàn)榧偃鏝項(xiàng)集的任一非空子集I小于最小支持度閾值,當(dāng)有元素A添加到I中時(shí),組成的新的子集(A∩I)不可能比原來的子集I出現(xiàn)次數(shù)或出現(xiàn)頻率更多。因此新的子集(A∩I)也不會大于所述最小支持度閾值。由此可知,我們通過N項(xiàng)集的子集進(jìn)行篩查,是可以確保對非惡意地址篩查的準(zhǔn)確性,避免影響正常用戶的訪問;同時(shí),本方案的第二個(gè)優(yōu)勢是,通過一元子集或二元子集等低階的集合進(jìn)行比對篩查,由于元素較少,篩查的速度可以非常迅速的。故此,采用本方案,在系統(tǒng)主機(jī)受到攻擊時(shí)就可以做出快速的反應(yīng),避免網(wǎng)絡(luò)癱瘓。本方案的第三個(gè)優(yōu)勢是,顯然本方案的準(zhǔn)確性與N項(xiàng)集中元素的個(gè)數(shù)N也有關(guān)系,當(dāng)N越大,分析的項(xiàng)目越多,準(zhǔn)確性越高。同時(shí),N項(xiàng)集的子集也會隨著N的增大而激增。但由于前述一元子集或二元子集依然是所述N項(xiàng)集的子集,這些低階的子集依然能迅速地排除一大批非惡意地址,故此,N的增大在提高分析的準(zhǔn)確性之余,并不會帶來大量的運(yùn)算,也就不會顯著地降低分析速度,故能滿足實(shí)際網(wǎng)絡(luò)訪問當(dāng)中的實(shí)時(shí)性要求。
本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,這些將從下面的描述中變得明顯,或通過本發(fā)明的實(shí)踐了解到。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明IP數(shù)據(jù)包格式的示意圖;
圖2為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第一實(shí)施例流程圖;
圖3為第一實(shí)施例的第n時(shí)間窗內(nèi)數(shù)據(jù)包的頭文件字段項(xiàng)目信息示意圖;
圖4為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第二實(shí)施例流程圖;
圖5為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第二實(shí)施例監(jiān)控網(wǎng)絡(luò)示意圖;
圖6為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第二實(shí)施例遞歸查找示意圖;
圖7為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測裝置的第一實(shí)施例示意圖;
圖8為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測裝置的第二實(shí)施例示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。
在本發(fā)明的說明書和權(quán)利要求書及上述附圖中的描述的一些流程中,包含了按照特定順序出現(xiàn)的多個(gè)操作,但是應(yīng)該清楚了解,這些操作可以不按照其在本文中出現(xiàn)的順序來執(zhí)行或并行執(zhí)行,操作的序號如101、102等,僅僅是用于區(qū)分開各個(gè)不同的操作,序號本身不代表任何的執(zhí)行順序。另外,這些流程可以包括更多或更少的操作,并且這些操作可以按順序執(zhí)行或并行執(zhí)行。需要說明的是,本文中的“第一”、“第二”等描述,是用于區(qū)分不同的消息、設(shè)備、模塊等,不代表先后順序,也不限定“第一”和“第二”是不同的類型。
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
從攻擊者的角度而言,DDOS攻擊流量實(shí)際上盡最大可能模擬正常訪問的方式以繞過檢測,攻擊訪問和正常訪問兩者最大區(qū)別在于在相同的時(shí)間內(nèi),出于DDOS攻擊目的的訪問量將是正常業(yè)務(wù)訪問量的數(shù)十倍乃至更多,超出服務(wù)器的性能上限,從而達(dá)到拒絕服務(wù)的目的。本方法就是利用該區(qū)別,將超出正常訪問次數(shù)的,經(jīng)不同方式(如不同的源端口,不同的網(wǎng)絡(luò)傳輸路徑)針對同一目標(biāo)主機(jī)重復(fù)發(fā)送相同內(nèi)容的數(shù)據(jù)包找出來。例如,本方案可應(yīng)用于IP數(shù)據(jù)包。
圖1為本發(fā)明IP數(shù)據(jù)包格式的示意圖。對于IP數(shù)據(jù)包格式,具體地,可從一個(gè)數(shù)據(jù)包的頭文件(如圖1的首部)提取并進(jìn)行分析的字段項(xiàng)目包括:
1.源地址:固定源地址,目的是定位可疑攻擊來源;
2.目的地址:固定目的地址為所需保護(hù)服務(wù)器,目的是分析針對該服務(wù)器的所有數(shù)據(jù)包;
3.源端口:允許源端口不重復(fù),這是由于黑客在進(jìn)行攻擊時(shí),可能會同時(shí)開啟多個(gè)服務(wù)或進(jìn)程,用多個(gè)端口向目的地址發(fā)送數(shù)據(jù)包
4.目的端口:固定目的端口為所需保護(hù)服務(wù)器端口(服務(wù)),目的是分析針對該端口(服務(wù))的所有數(shù)據(jù)包;
5.協(xié)議/協(xié)議類型:協(xié)議類型主要分為UDP及TCP兩種,由于協(xié)議類型與攻擊方式高度相關(guān),因此固定協(xié)議類型(如屬于TCP協(xié)議時(shí),可包含TCP協(xié)議標(biāo)志位信息)
6.總長度/包長度:固定包長度,這是由于攻擊者一旦啟動(dòng)攻擊程序,攻擊程序傾向生成大量固定長度,相同內(nèi)容的數(shù)據(jù)包發(fā)往目的主機(jī);
7.TTL(Time to live,生存時(shí)間):TTL反映了數(shù)據(jù)包由源地址到達(dá)目的地址的網(wǎng)絡(luò)路徑,不同的TTL預(yù)示著數(shù)據(jù)包從不同的路徑到達(dá)目的主機(jī)。攻擊數(shù)據(jù)包由可能短時(shí)間內(nèi)循不同路徑到達(dá)目的主機(jī),因此允許TTL不重復(fù)。
除此之外,如圖1所示,一個(gè)數(shù)據(jù)包的頭文件(如圖1的首部)可被提取并進(jìn)行分析的字段項(xiàng)目還包括:版本,頭文件長度/首部長度,區(qū)分服務(wù),標(biāo)識,標(biāo)志,片偏移,首部檢驗(yàn)和等,在此不一一解釋。
另外,本方案也可以應(yīng)用于其他的數(shù)據(jù)包格式。例如,針對TCP數(shù)據(jù)包格式,可提取的字段項(xiàng)目包括源端口(source port),目的端口(destination port),順序號(sequence port),確認(rèn)號(acknowledgement port),TCP頭文件長度,窗口大小(window size),校驗(yàn)和(checksum),緊急指針(urgent pointer)等等;針對UDP數(shù)據(jù)包格式,可提取的字段項(xiàng)目包括源端口(source port),目的端口(destination port),長度(length),校驗(yàn)和(checksum),偽首部(pseudo header)等等;針對ARP數(shù)據(jù)包格式,可提取的字段項(xiàng)目包括硬件類型,協(xié)議類型,硬件地址長度,協(xié)議地址長度,操作代碼,發(fā)送方硬件地址,發(fā)送方協(xié)議地址,目標(biāo)方硬件地址,目標(biāo)方協(xié)議地址等等。除上述數(shù)據(jù)包格式之外,本方案還可以應(yīng)用于分析ICMP數(shù)據(jù)包,IPSEC數(shù)據(jù)包,OSPF數(shù)據(jù)包,以太網(wǎng)數(shù)據(jù)包等等,這些數(shù)據(jù)包的格式及相應(yīng)的字段項(xiàng)目,在此不一一列舉。由此可見,本方案可針對不同的數(shù)據(jù)包格式,提取相應(yīng)的字段項(xiàng)目進(jìn)行分析,操作簡單,應(yīng)用范圍廣。下面以圖1的IP數(shù)據(jù)包格式為例,結(jié)合圖2、圖3對本發(fā)明第一實(shí)施例做進(jìn)一步的說明。
圖2為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第一實(shí)施例流程圖,包括:
S101:獲取預(yù)設(shè)時(shí)間窗當(dāng)中一個(gè)數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集;
S102:在由預(yù)設(shè)數(shù)個(gè)數(shù)據(jù)包的頭文件的所述N個(gè)字段項(xiàng)目組成的候選集當(dāng)中查找包含所述N項(xiàng)集的子集的記錄;
S103:設(shè)定所述記錄的次數(shù)或頻率的最小支持度;
S104:當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包;
S105:當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。
圖3為第一實(shí)施例的第n時(shí)間窗內(nèi)數(shù)據(jù)包的頭文件字段項(xiàng)目信息示意圖。
假設(shè)系統(tǒng)主機(jī)已經(jīng)存儲了過去一段時(shí)間之內(nèi)惡意訪問的數(shù)據(jù)包的頭文件字段項(xiàng)目信息。如圖3所示,現(xiàn)在提取“g=189”的時(shí)間窗的八條數(shù)據(jù)包記錄進(jìn)行分析。
首先,指針移到“g=189”的時(shí)間窗的第一條記錄。
獲取“g=189”時(shí)間窗口當(dāng)中第一條記錄的第一數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集。盡管不同網(wǎng)絡(luò)的數(shù)據(jù)包格式會略有不同,但對于同一網(wǎng)絡(luò)類型的數(shù)據(jù)包頭文件格式是一致的。
優(yōu)選地,所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型當(dāng)中的至少三個(gè)項(xiàng)目,其中,N≥3;或者,
優(yōu)選地,所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型,其中,N≥5;或者,
優(yōu)選地,所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型、源端口、網(wǎng)絡(luò)路徑當(dāng)中的至少五個(gè)項(xiàng)目,其中,N≥5。
本第一實(shí)施例當(dāng)中,假設(shè)N=3,預(yù)設(shè)N個(gè)字段項(xiàng)目為源地址、目的地址、包長度。即,所述第一數(shù)據(jù)包的N項(xiàng)集為{78.210.156.40,119.84.68.11,40}。本發(fā)明只需從第一數(shù)據(jù)包的上述三項(xiàng)字段項(xiàng)目信息,就能快速地分析該數(shù)據(jù)包是否由惡意的IP地址發(fā)出,操作簡便、通用性強(qiáng)。
在開始分析之前,先由預(yù)設(shè)數(shù)個(gè)數(shù)據(jù)包的頭文件的所述N個(gè)字段項(xiàng)目組成候選集,例如,從“g=001”時(shí)間窗至“g=90”時(shí)間窗之內(nèi)僅有大概一千個(gè)數(shù)據(jù)包的正常訪問業(yè)務(wù),但從“g=091”時(shí)間窗至“g=180”時(shí)間窗之內(nèi)激增到一萬個(gè)數(shù)據(jù)包,則很可能遭遇惡意攻擊,可以從該一萬個(gè)數(shù)據(jù)包的頭文件的源地址、目的地址、包長度等三個(gè)字段項(xiàng)目組成的候選集,對接下來“g=189”時(shí)間窗的第一數(shù)據(jù)包進(jìn)行分析。又例如,也可以從歷史記錄中提取上一輪或上一周或上個(gè)月出現(xiàn)的激增數(shù)據(jù)包惡意攻擊記錄作為本次分析的候選集。再在該候選集當(dāng)中查找包含所述N項(xiàng)集{78.210.156.40,119.84.68.11,40}的子集的記錄。該候選集是在遭遇大批數(shù)據(jù)包的流量沖擊時(shí),從該批數(shù)個(gè)數(shù)據(jù)包的頭文件中提取指定的N個(gè)字段項(xiàng)目組成的集合。因此,該候選集相應(yīng)的數(shù)據(jù)包當(dāng)中隱藏了DDOS攻擊者通過切換虛擬IP發(fā)出的惡意數(shù)據(jù)包,通過對當(dāng)前第一數(shù)據(jù)包的N項(xiàng)集與候選集之間的關(guān)聯(lián)性的跟蹤挖掘,即可以通過N項(xiàng)少量的項(xiàng)目數(shù)據(jù)快速地匹配關(guān)聯(lián)性,準(zhǔn)確地鎖定惡意IP地址。
對于準(zhǔn)確度的把握,可以通過設(shè)定所述記錄的次數(shù)或頻率的最小支持度來實(shí)現(xiàn)。例如,設(shè)定記錄的次數(shù)的最小支持度為300次,和/或,設(shè)定記錄的頻率的最小支持度為20%。一個(gè)數(shù)據(jù)包的N項(xiàng)集的子集在所述候選集當(dāng)中出現(xiàn)的次數(shù)越多,和/或出現(xiàn)的頻率越大,則表示該數(shù)據(jù)包由惡意地址發(fā)出的可能性越大。
當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包。例如,所述N項(xiàng)集{78.210.156.40,119.84.68.11,40}的子集{78.210.156.40}的記錄在候選集出現(xiàn)的次數(shù)為180次,小于最小支持度設(shè)定的300次。則無需再計(jì)算其他子集或N項(xiàng)集出現(xiàn)的次數(shù)或頻率,可將指針跳轉(zhuǎn)到當(dāng)前“g=189”的時(shí)間窗的第二條記錄?;蛘撸鯪項(xiàng)集{78.210.156.40,119.84.68.11,40}的子集{78.210.156.40,40}的記錄在候選集出現(xiàn)的頻率為11%,小于最小支持度設(shè)定的20%,則也無需繼續(xù)計(jì)算其他子集或N項(xiàng)集出現(xiàn)的次數(shù)或頻率,可跳轉(zhuǎn)到第二條記錄。
當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。即,所述N項(xiàng)集{78.210.156.40,119.84.68.11,40}的一元子集{78.210.156.40}、{119.84.68.11}、{40};二元子集{78.210.156.40,40},{119.84.68.11,40}、{78.210.156.40,119.84.68.11};三元子集{78.210.156.40,119.84.68.11,40}之中,當(dāng)N項(xiàng)集{78.210.156.40,119.84.68.11,40}本身及其上述任一子集當(dāng)中的至少一個(gè),例如上述一元子集/二元子集/三元子集當(dāng)中的至少一個(gè),它們的記錄在候選集出現(xiàn)的頻率不小于最小支持度設(shè)定的20%,或,出現(xiàn)的次數(shù)均不小于最小支持度設(shè)定的300次,則當(dāng)前“g=189”的時(shí)間窗的第一條記錄數(shù)據(jù)包的源地址IP=78.210.156.40為惡意地址。
然后,指針移到“g=189”的時(shí)間窗的第二條記錄。分析如前,只要第二條記錄的N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包。逐一檢測。
最后,完成對“g=189”的時(shí)間窗的八條記錄的檢測分析。
本方案的第一個(gè)優(yōu)勢是,對于惡意地址發(fā)出的數(shù)據(jù)包的N項(xiàng)集,該N項(xiàng)集的任一非空子集相對于候選集的記錄的次數(shù)或頻率,必然是超過最小支持度的。因?yàn)榧偃鏝項(xiàng)集的任一非空子集I小于最小支持度閾值,當(dāng)有元素A添加到I中時(shí),組成的新的子集(A∩I)不可能比原來的子集I出現(xiàn)次數(shù)或出現(xiàn)頻率更多。因此新的子集(A∩I)也不會大于所述最小支持度閾值。由此可知,我們通過N項(xiàng)集的子集進(jìn)行篩查,是可以對非惡意地址確保篩查的準(zhǔn)確性,避免影響正常用戶的訪問;同時(shí),本方案的第二個(gè)優(yōu)勢是,通過一元子集或二元子集等低階的集合進(jìn)行比對篩查,由于元素較少,篩查的速度可以非常迅速的。故此,采用本方案,在系統(tǒng)主機(jī)受到攻擊時(shí)就可以做出快速的反應(yīng),避免網(wǎng)絡(luò)癱瘓。本方案的第三個(gè)優(yōu)勢是,顯然本方案的準(zhǔn)確性與N項(xiàng)集中元素的個(gè)數(shù)N也有關(guān)系,當(dāng)N越大,分析的項(xiàng)目越多,準(zhǔn)確性越高。同時(shí),N項(xiàng)集的子集也會隨著N的增大而激增。但由于前述一元子集或二元子集依然是所述N項(xiàng)集的子集,這些低階的子集依然能迅速地排除一大批非惡意地址,故此,N的增大在提高分析的準(zhǔn)確性之余,并不會帶來大量的運(yùn)算,也就不會顯著地降低分析速度,故能滿足實(shí)際網(wǎng)絡(luò)訪問當(dāng)中的實(shí)時(shí)性要求。
需要補(bǔ)充說明的是,通過上述描述,不難得知,本發(fā)明是以Apriori算法原理為基礎(chǔ),是Apriori的改進(jìn)算法在網(wǎng)絡(luò)安全領(lǐng)域的具體實(shí)現(xiàn)方案。與傳統(tǒng)的Apriori相比,本發(fā)明方案不需要找出N項(xiàng)集的頻繁項(xiàng)集,也不需要分析N項(xiàng)集內(nèi)各字段的強(qiáng)規(guī)則。例如,對于前述例子述N項(xiàng)集{78.210.156.40,119.84.68.11,40},即便其中的子集{78.210.156.40,119.84.68.11}在候選集當(dāng)中,出現(xiàn)的次數(shù)或頻率非常之高,是傳統(tǒng)Apriori算法概念中的頻繁項(xiàng)集,但只要有一個(gè)子集,例如{40}是非頻繁的,那么,就無需繼續(xù)計(jì)算,直到找到上述最終的頻繁項(xiàng)集{78.210.156.40,119.84.68.11},更不必計(jì)算該頻繁項(xiàng)集的強(qiáng)規(guī)則。故此,本發(fā)明Apriori的改進(jìn)算法比傳統(tǒng)算法運(yùn)算速度更快。
圖4為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第二實(shí)施例流程圖。圖4第二實(shí)施例與圖2第一實(shí)施例相比,圖4字段項(xiàng)目指定N=5的N項(xiàng)集進(jìn)行分析,分析更為準(zhǔn)確。同時(shí),通過遞歸查找的方式,從一元子集到N-1元子集單維、單層的遞歸查找,篩選更為快捷。
S201:監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量,當(dāng)所述數(shù)據(jù)包流量超過第一告警閾值時(shí),獲取預(yù)設(shè)數(shù)量或預(yù)設(shè)時(shí)長內(nèi)的數(shù)個(gè)數(shù)據(jù)包;
S202:獲取預(yù)設(shè)時(shí)間窗當(dāng)中一個(gè)數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集;所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型,其中,N≥5;
S203:從所述N項(xiàng)集的一元子集開始,到所述N項(xiàng)集的N-1元子集,依次在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k元子集的記錄,其中,1≤k≤N-1;
S204:設(shè)定所述記錄的次數(shù)或頻率的最小支持度;
S205:當(dāng)所述N項(xiàng)集的k元子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k+1元子集的記錄。
S206:當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包;
S207:當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。
前述的第一實(shí)施例即可以應(yīng)用于實(shí)時(shí)監(jiān)測,也可以用于事后分析。而本第二實(shí)施例具體應(yīng)用于實(shí)時(shí)監(jiān)測。圖5為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第二實(shí)施例監(jiān)控網(wǎng)絡(luò)示意圖。如圖5所示,本實(shí)施例采用抓包軟件,對網(wǎng)絡(luò)實(shí)時(shí)監(jiān)測,監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量,當(dāng)所述數(shù)據(jù)包流量超過第一告警閾值時(shí),獲取預(yù)設(shè)數(shù)量或預(yù)設(shè)時(shí)長內(nèi)的數(shù)個(gè)數(shù)據(jù)包。第一告警閾值是根據(jù)本地系統(tǒng)主機(jī)的業(yè)務(wù)處理能力而設(shè)定的,達(dá)到該閾值時(shí),系統(tǒng)主機(jī)需進(jìn)進(jìn)入警備狀態(tài),避免網(wǎng)絡(luò)癱瘓。優(yōu)選地,可以從流量超過第一告警閾值的時(shí)刻起往前追溯一段時(shí)長內(nèi)的數(shù)個(gè)數(shù)據(jù)包,用于組建候選集;也可以從流量超過第一告警閾值的時(shí)刻起往前追溯預(yù)設(shè)數(shù)量,假定一萬個(gè),的數(shù)據(jù)包,用于組建候選集。
由于是實(shí)時(shí)監(jiān)測,本實(shí)施例在流量超過第一告警閾值的時(shí)間窗開始,獲取預(yù)設(shè)時(shí)間窗當(dāng)中一個(gè)數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集。優(yōu)選地,所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型等五個(gè)項(xiàng)目。以圖3的第二條記錄為例,實(shí)施例二檢測的數(shù)據(jù)包的N項(xiàng)集為{221.228.253.156,119.84.68.7,1344,555,UDP}。
接下來,使用遞歸方式進(jìn)行查找。
圖6為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測方法的第二實(shí)施例遞歸查找示意圖。如圖6所示,從所述N項(xiàng)集的一元子集開始,到所述N項(xiàng)集的N-1元子集,依次在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k元子集的記錄,其中,1≤k≤N-1。設(shè)定所述記錄的次數(shù)或頻率的最小支持度;當(dāng)所述N項(xiàng)集的k元子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k+1元子集的記錄。
由于低階的子集元素少,查找其他非常迅速,而且高階的子集只需要在低階子集的篩查結(jié)果之中進(jìn)行二次篩查,所以,子集的元素越多,其在候選集當(dāng)中需要篩查的記錄就越少。例如,在本實(shí)施例二中,k=4時(shí),對于{221.228.253.156,119.84.68.7,1344,555}這個(gè)四元子集的篩查,因?yàn)樵诤Y查該四元子集之前,該四元子集的所有三元子集已經(jīng)完成篩查,并獲得了所有三元子集的三元篩查集合。顯然,三元篩查集合只是占原有候選集的少部分,故此,只需要在其中一個(gè)三元篩查集合當(dāng)中對進(jìn)行{221.228.253.156,119.84.68.7,1344,555}二次篩查。由此可見,遞歸方式可以進(jìn)一步提高本發(fā)明的運(yùn)算速度,而且避免重復(fù)查找。
需要補(bǔ)充說明的是,除了使用遞歸方式進(jìn)行查找,還可以根據(jù)特定數(shù)據(jù)包的字段項(xiàng)目的特點(diǎn),來進(jìn)行縱深查找。比如,我們要保護(hù)的系統(tǒng)主機(jī)的地址就是某幾個(gè)目的地址,此時(shí),目的地址字段項(xiàng)目是非常重要的,其應(yīng)該被優(yōu)先考慮。簡單來講,如果一個(gè)數(shù)據(jù)包的目的地址不是我們要保護(hù)的系統(tǒng)主機(jī)的地址,則無需考慮。那么,對于本實(shí)施例二的N項(xiàng)集{221.228.253.156,119.84.68.7,1344,555,UDP}可以采用縱深篩查,從包含目的地址字段的子集優(yōu)先開始查找,具體查找順序?yàn)椋菏紫仁?,{119.84.68.7},{119.84.68.7,555},{119.84.68.7,1344}…直到對N項(xiàng)集{221.228.253.156,119.84.68.7,1344,555,UDP}全集的篩查。顯然,高階的子集也只需要在低階子集的篩查結(jié)果之中進(jìn)行二次篩查,能避免重復(fù)查找。同樣也是從所述N項(xiàng)集的一元子集開始,到所述N項(xiàng)集的N-1元子集依次查找。但得益于對目的地址的把握,我們無需要查找所述N項(xiàng)集的所有一元子集,例如,{555}這一類的子集,所以,遞歸結(jié)合縱深的查找方式,會讓我們的算法進(jìn)一步加快。
當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包;當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。優(yōu)選地,實(shí)施例二考慮以頻率作為支持度,將最小支持度設(shè)置參數(shù)為x(0≤x≤1),表明通過本算法在候選集當(dāng)中找出所有重復(fù)頻率比例超過x的包含N項(xiàng)集的集合中的源地址,通過合理設(shè)置x,以該方法提取出的源地址,將有很高概率是攻擊目的地址的惡意IP地址。例如,本實(shí)施例二當(dāng)中,x=30%,而上述N項(xiàng)集{221.228.253.156,119.84.68.7,1344,555,UDP}全集的頻率為85%,此時(shí),認(rèn)定221.228.253.156為惡意IP,我們可以讓系統(tǒng)主機(jī)對這些惡意IP地址進(jìn)行限流限速,以避免網(wǎng)絡(luò)癱瘓、服務(wù)中斷。
進(jìn)一步地,本實(shí)施例二還可以包括如下步驟:
S208:將所述N項(xiàng)集的記錄的次數(shù)或頻率設(shè)置為該惡意地址的風(fēng)險(xiǎn)估值;
S209:設(shè)定所述惡意地址的風(fēng)險(xiǎn)估值的最小可信度;
S210:當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量超過第二告警閾值時(shí),限制非白名單內(nèi)的風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的訪問;
S211:當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量低于第三告警閾值時(shí),分析風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的地址來源,并根據(jù)分析的結(jié)果將該惡意地址加入所述白名單。
如前所述,在實(shí)時(shí)監(jiān)測的過程中,當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量超過第一告警閾值時(shí),系統(tǒng)主機(jī)開始進(jìn)入警備狀態(tài),收集可疑的數(shù)據(jù)包;當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量超過第二告警閾值時(shí),系統(tǒng)主機(jī)已經(jīng)完成分析,開始限制惡意地址的訪問,使數(shù)據(jù)包流量回歸正常訪問量;當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量低于第三告警閾值時(shí),前述的限制可能無法避免地影響到了部分正常用戶的訪問,此時(shí),由于系統(tǒng)主機(jī)的cpu資源、存儲器資源充足,可以使用反向探測技術(shù),通過分析風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的地址來源,并根據(jù)分析的結(jié)果將該惡意地址加入所述白名單,以避免對正常用戶的影響。
上述優(yōu)選實(shí)施方案的優(yōu)勢是,在原本方案對超過最小支持度的N項(xiàng)集中對應(yīng)的源地址列入惡意地址黑名單,進(jìn)行限制訪問的基礎(chǔ)上。將所述N項(xiàng)集的記錄的次數(shù)或頻率設(shè)置為該惡意地址的風(fēng)險(xiǎn)估值,設(shè)定所述惡意地址的風(fēng)險(xiǎn)估值的最小可信度。根據(jù)風(fēng)險(xiǎn)估值與預(yù)設(shè)的最小可信度的比較,剔除白名單內(nèi)的惡意地址,這樣可以避免正常訪問業(yè)務(wù)中的虛假地址(例如,代理IP)被納入惡意地址之列。這是由于惡意攻擊時(shí),使用的虛假地址是趨于完全隨機(jī)的方式,而正常訪問業(yè)務(wù)中固定使用單一虛假地址(例如,代理IP)重復(fù)發(fā)包的頻率理論上不會超過最小支持度,萬一超過最小支持度,本優(yōu)選實(shí)施方案通過再設(shè)置最小可信度,根據(jù)前述風(fēng)險(xiǎn)估值從高到低排序。正常訪問業(yè)務(wù)的風(fēng)險(xiǎn)估值會比惡意訪問業(yè)務(wù)的風(fēng)險(xiǎn)估值更低,限制非白名單內(nèi)的風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的訪問,可使正常訪問業(yè)務(wù)中的虛假地址不被限制。
綜上所述,本發(fā)明基于Apriori算法原理,并對其進(jìn)行改良,使之對數(shù)據(jù)包格式良好適應(yīng),本發(fā)明能夠挖掘頻繁關(guān)聯(lián)規(guī)則,從最低維度(即單一要素)開始,發(fā)現(xiàn)滿足給定頻率或次數(shù)水平的單一要素,繼而從滿足出現(xiàn)頻率單一要素延展開去構(gòu)造雙要素集,避免了多要素的完全組合問題,提高了篩選效率。
圖7為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測裝置的第一實(shí)施例示意圖,包括:
指針獲取單元,用于獲取預(yù)設(shè)時(shí)間窗當(dāng)中一個(gè)數(shù)據(jù)包的頭文件,由該頭文件內(nèi)的預(yù)設(shè)N個(gè)字段項(xiàng)目組成N項(xiàng)集;
記錄查找單元,用于在由預(yù)設(shè)數(shù)個(gè)數(shù)據(jù)包的頭文件的所述N個(gè)字段項(xiàng)目組成的候選集當(dāng)中查找包含所述N項(xiàng)集的子集的記錄;
門限設(shè)定單元,用于設(shè)定所述記錄的次數(shù)或頻率的最小支持度;
指針跳轉(zhuǎn)單元,用于當(dāng)所述N項(xiàng)集的任一子集的記錄的次數(shù)或頻率小于所述最小支持度時(shí),檢測下一個(gè)數(shù)據(jù)包;
結(jié)果判定單元,用于當(dāng)所述N項(xiàng)集及其任一子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),判定當(dāng)前所述一個(gè)數(shù)據(jù)包的源地址為惡意地址。
圖7與圖2的第一實(shí)施例相對應(yīng),圖7中單元的運(yùn)行方式與方法中的相同。
圖8為本發(fā)明一種基于DDOS攻擊中惡意地址的檢測裝置的第二實(shí)施例示意圖。
如圖8所示,所述指針獲取單元,包括:
項(xiàng)目指定單元,用于指定預(yù)設(shè)的N個(gè)字段項(xiàng)目;
所述N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型當(dāng)中的至少三個(gè)項(xiàng)目,其中,N≥3;或者,
所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型,其中,N≥5;或者,
所述預(yù)設(shè)N個(gè)字段項(xiàng)目,包括源地址、目的地址、包長度、目的端口、協(xié)議類型、源端口、網(wǎng)絡(luò)路徑當(dāng)中的至少五個(gè)項(xiàng)目,其中,N≥5。
如圖8所示,包括:
第一告警單元,用于監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量,當(dāng)所述數(shù)據(jù)包流量超過第一告警閾值時(shí),獲取預(yù)設(shè)數(shù)量或預(yù)設(shè)時(shí)長內(nèi)的所述數(shù)個(gè)數(shù)據(jù)包。
如圖8所示,所述記錄查找單元,包括:
遞歸查找單元,用于從所述N項(xiàng)集的一元子集開始,到所述N項(xiàng)集的N-1元子集,依次在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k元子集的記錄,其中,1≤k≤N-1;當(dāng)所述N項(xiàng)集的k元子集的記錄的次數(shù)或頻率不小于所述最小支持度時(shí),在所述候選集當(dāng)中查找包含所述N項(xiàng)集的k+1元子集的記錄。
圖8與圖4的第二實(shí)施例相對應(yīng),圖8中單元的運(yùn)行方式與方法中的相同。
在其中一個(gè)優(yōu)選實(shí)施例當(dāng)中,還包括:
風(fēng)險(xiǎn)估值單元,用于將所述N項(xiàng)集的記錄的次數(shù)或頻率設(shè)置為該惡意地址的風(fēng)險(xiǎn)估值;
可信度設(shè)定單元,用于設(shè)定所述惡意地址的風(fēng)險(xiǎn)估值的最小可信度;
第二告警單元,用于當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量超過第二告警閾值時(shí),限制非白名單內(nèi)的風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的訪問;
第三告警單元,用于當(dāng)監(jiān)控網(wǎng)絡(luò)的數(shù)據(jù)包流量低于第三告警閾值時(shí),分析風(fēng)險(xiǎn)估值大于所述最小可信度的惡意地址的地址來源,并根據(jù)分析的結(jié)果將該惡意地址加入所述白名單。
在其中一個(gè)實(shí)施例當(dāng)中,上述裝置的工作流程概述如下:
(1)目標(biāo)系統(tǒng)主機(jī)的數(shù)據(jù)包流量達(dá)到第一告警閾值,觸發(fā)網(wǎng)絡(luò)抓包;
(2)提取抓包文件中的頭文件的部分,包含指定的字段項(xiàng)目,組成N項(xiàng)集;
(3)對于給定最小支持度,尋找滿足條件的N項(xiàng)集,并收集其中的源地址;
(4)剔除白名單中的源地址;
(5)根據(jù)N項(xiàng)集的風(fēng)險(xiǎn)估值從高到低排序,設(shè)定最小可信度,對大于最小可信度的源地址依次限制其訪問,直至網(wǎng)絡(luò)和系統(tǒng)主機(jī)恢復(fù)正常的訪問量;
(6)待訪問量回落,系統(tǒng)主機(jī)的CPU資源、存儲器資源許可前提下,對受限制部分的源地址使用反向探測,核實(shí)其真實(shí)身份。進(jìn)一步確認(rèn)惡意地址,或剔除虛假地址。
本發(fā)明技術(shù)方案帶來的有益效果:
(1)檢測準(zhǔn)確,保證發(fā)現(xiàn)的惡意地址均具有統(tǒng)計(jì)意義上的顯著性,避免人工判斷的主觀性和片面性。
(2)通過靈活調(diào)整最小支持度,可控制發(fā)現(xiàn)惡意地址的數(shù)量及表征其惡意程度的風(fēng)險(xiǎn)估值。
(3)避免了正常訪問業(yè)務(wù)中虛假IP地址造成的分析干擾。
(4)根據(jù)風(fēng)險(xiǎn)估值排序進(jìn)行打擊,可通過限制當(dāng)中少量惡意度高的IP,將網(wǎng)絡(luò)及主機(jī)資源恢復(fù)至可接受水平。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對應(yīng)過程,在此不再贅述。
以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。