一種入侵檢測(cè)方法及裝置制造方法
【專利摘要】本發(fā)明適用于信息安全【技術(shù)領(lǐng)域】,提供了一種入侵檢測(cè)方法及裝置,所述方法包括:對(duì)原始數(shù)據(jù)集進(jìn)行預(yù)處理;對(duì)預(yù)處理后的數(shù)據(jù)點(diǎn)進(jìn)行距離度量;基于預(yù)定算法以及距離度量,獲得簇的個(gè)數(shù);基于距離度量,計(jì)算預(yù)處理后的數(shù)據(jù)點(diǎn)的密度指標(biāo);基于距離度量和密度指標(biāo),計(jì)算數(shù)據(jù)點(diǎn)的距離指標(biāo);計(jì)算數(shù)據(jù)點(diǎn)的密度指標(biāo)與距離指標(biāo)的乘積r并排序;選擇前k個(gè)數(shù)據(jù)點(diǎn)作為各個(gè)簇的中心點(diǎn);將剩余的數(shù)據(jù)點(diǎn)分配到離其距離最近且密度指標(biāo)比其高的中心點(diǎn)所屬的簇中;將分配后的簇按照其包含的數(shù)據(jù)點(diǎn)的個(gè)數(shù)進(jìn)行排序,將簇中數(shù)據(jù)點(diǎn)的個(gè)數(shù)最多的簇判定為正常簇,其余的簇判定為異常簇。通過(guò)本發(fā)明,可有效解決現(xiàn)有技術(shù)存在的運(yùn)算開(kāi)銷大,初始值的設(shè)定影響聚類結(jié)果的問(wèn)題。
【專利說(shuō)明】一種入侵檢測(cè)方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于信息安全【技術(shù)領(lǐng)域】,尤其涉及一種入侵檢測(cè)方法及裝置。
【背景技術(shù)】
[0002] 現(xiàn)有應(yīng)用到入侵檢測(cè)中的聚類算法大致分為兩種:一種是基于劃分的的聚類算 法,一種是基于密度的的聚類算法。
[0003] 基于劃分的聚類算法,如κ-means,由于簇的個(gè)數(shù)K與初始聚類中心點(diǎn)是事先人為 選定的,一旦選擇不好,可能無(wú)法獲得有效的聚類結(jié)果;其次,基于劃分的聚類算法不能處 理非球形簇、不同尺寸和不同密度的簇。
[0004] 基于密度的聚類算法,如經(jīng)典的 DBSCAN(Density-Based Spatial Clustering of Applications with Noise),對(duì)于高維度且數(shù)據(jù)量較大的入侵?jǐn)?shù)據(jù),運(yùn)算開(kāi)銷會(huì)比較大,而 且預(yù)先定義的密度閾值會(huì)對(duì)后面的聚類結(jié)果有明顯的影響。
【發(fā)明內(nèi)容】
[0005] 鑒于此,本發(fā)明實(shí)施例提供一種入侵檢測(cè)方法及裝置,以解決現(xiàn)有技術(shù)存在的運(yùn) 算開(kāi)銷大,初始值的設(shè)定影響聚類結(jié)果的問(wèn)題。
[0006] 一方面,本發(fā)明實(shí)施例提供一種入侵檢測(cè)方法,所述方法包括:
[0007] 對(duì)原始數(shù)據(jù)集進(jìn)行預(yù)處理,所述原始數(shù)據(jù)集包含多個(gè)數(shù)據(jù)記錄,每個(gè)數(shù)據(jù)記錄包 含連續(xù)型數(shù)據(jù)點(diǎn)和/或非數(shù)值型數(shù)據(jù)點(diǎn);
[0008] 對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行距離度量;
[0009] 基于預(yù)定算法以及所述距離度量,獲得簇的個(gè)數(shù);
[0010] 基于所述距離度量,計(jì)算預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo);
[0011] 基于所述距離度量和數(shù)據(jù)點(diǎn)的密度指標(biāo),計(jì)算數(shù)據(jù)點(diǎn)的距離指標(biāo);
[0012] 計(jì)算每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo)與距離指標(biāo)的乘積r,并按r的大小進(jìn)行排序;
[0013] 基于所述排序,選擇前k個(gè)數(shù)據(jù)點(diǎn)作為各個(gè)簇的中心點(diǎn),所述k為所述簇的個(gè)數(shù), k為大于零的整數(shù);
[0014] 將剩余的數(shù)據(jù)點(diǎn)分配到離其距離最近且密度指標(biāo)比其高的中心點(diǎn)所屬的簇中;
[0015] 將分配后的簇按照其包含的數(shù)據(jù)點(diǎn)的個(gè)數(shù)進(jìn)行排序,將簇中數(shù)據(jù)點(diǎn)的個(gè)數(shù)最多的 簇判定為正常簇,其余的簇判定為異常簇。
[0016] 另一方面,本發(fā)明實(shí)施例提供一種入侵檢測(cè)裝置,所述裝置包括:
[0017] 預(yù)處理單元,用于對(duì)原始數(shù)據(jù)集進(jìn)行預(yù)處理,所述原始數(shù)據(jù)集包含多個(gè)數(shù)據(jù)記錄, 每個(gè)數(shù)據(jù)記錄包含連續(xù)型數(shù)據(jù)點(diǎn)和/或非數(shù)值型數(shù)據(jù)點(diǎn);
[0018] 距離度量單元,用于對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行距離度量;
[0019] 簇個(gè)數(shù)獲取單元,用于基于預(yù)定算法以及所述距離度量,獲得簇的個(gè)數(shù);
[0020] 密度指標(biāo)計(jì)算單元,用于基于所述距離度量,計(jì)算預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù) 據(jù)點(diǎn)的密度指標(biāo);
[0021] 距離指標(biāo)計(jì)算單元,用于基于所述距離度量和數(shù)據(jù)點(diǎn)的密度指標(biāo),計(jì)算數(shù)據(jù)點(diǎn)的 距離指標(biāo);
[0022] 排序單元,用于計(jì)算每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo)與距離指標(biāo)的乘積r,并按r的大小 進(jìn)行排序;
[0023] 中心點(diǎn)確定單元,用于基于所述排序,選擇前k個(gè)數(shù)據(jù)點(diǎn)作為各個(gè)簇的中心點(diǎn),所 述k為所述簇的個(gè)數(shù),k為大于零的整數(shù);
[0024] 分配單元,用于將剩余的數(shù)據(jù)點(diǎn)分配到離其距離最近且密度指標(biāo)比其高的中心點(diǎn) 所屬的簇中;
[0025] 判定單元,用于將分配后的簇按照其包含的數(shù)據(jù)點(diǎn)的個(gè)數(shù)進(jìn)行排序,將簇中數(shù)據(jù) 點(diǎn)的個(gè)數(shù)最多的簇判定為正常簇,其余的簇判定為異常簇。
[0026] 本發(fā)明實(shí)施例與現(xiàn)有技術(shù)相比存在的有益效果是:本發(fā)明實(shí)施例基于預(yù)定算法 (例如Canopy算法)以及距離度量(例如加權(quán)的歐幾里德距離度量),獲得簇的個(gè)數(shù),并通 過(guò)計(jì)算獲得預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo)和距離指標(biāo),將所述密度指標(biāo)和 距離指標(biāo)的乘積作為綜合指標(biāo),根據(jù)所述綜合指標(biāo)獲得簇的中心點(diǎn),解決了現(xiàn)有技術(shù)人為 設(shè)定初始值(如簇的中心點(diǎn)、簇的個(gè)數(shù)等)影響聚類結(jié)果的問(wèn)題。而且,對(duì)于高維度且數(shù) 據(jù)量較大的入侵?jǐn)?shù)據(jù),相比于現(xiàn)有的聚類方法,無(wú)需迭代最優(yōu)目標(biāo)函數(shù),明顯減少了計(jì)算開(kāi) 銷。另外,由于是基于密度的聚類算法,對(duì)于非球形簇,也有很好的聚類效果,并能自動(dòng)檢測(cè) 出異常簇,具有較強(qiáng)的易用性和實(shí)用性。
【專利附圖】
【附圖說(shuō)明】
[0027] 為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述 中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些 實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些 附圖獲得其他的附圖。
[0028] 圖1是本發(fā)明實(shí)施例一提供的入侵檢測(cè)方法的實(shí)現(xiàn)流程圖;
[0029] 圖2是本發(fā)明實(shí)施例二提供的入侵檢測(cè)裝置的組成結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0030] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0031] 為了說(shuō)明本發(fā)明所述的技術(shù)方案,下面通過(guò)具體實(shí)施例來(lái)進(jìn)行說(shuō)明。
[0032] 實(shí)施例一:
[0033] 圖1示出了本發(fā)明實(shí)施例一提供的入侵檢測(cè)方法的實(shí)現(xiàn)流程,該方法過(guò)程詳述如 下:
[0034] 在步驟SlOl中,對(duì)原始數(shù)據(jù)集進(jìn)行預(yù)處理,所述原始數(shù)據(jù)集包含多個(gè)數(shù)據(jù)點(diǎn)。
[0035] 在本發(fā)明實(shí)施例中,所述原始數(shù)據(jù)集包含多個(gè)數(shù)據(jù)記錄(例如異構(gòu)型數(shù)據(jù)記錄), 每個(gè)數(shù)據(jù)記錄可能包含連續(xù)型數(shù)據(jù)點(diǎn)和/或非數(shù)值型數(shù)據(jù)點(diǎn),需要對(duì)二者分別進(jìn)行數(shù)據(jù)規(guī) 范化處理,具體可以是:
[0036] 對(duì)原始數(shù)據(jù)集中的連續(xù)型數(shù)據(jù)點(diǎn),將其數(shù)據(jù)取值從[min,max]映射到范圍小于預(yù) 設(shè)值的區(qū)間(例如[0,1]區(qū)間);
[0037] 對(duì)原始數(shù)據(jù)集中的非數(shù)值型數(shù)據(jù),將其離散化后,通過(guò)編碼映射成數(shù)值,或者直接 在所述距離度量中進(jìn)行比較,根據(jù)特定公式計(jì)算其距離。
[0038] 所述原始數(shù)據(jù)集經(jīng)過(guò)上述數(shù)據(jù)規(guī)范化預(yù)處理后變成高維向量組。其中,所述原始 數(shù)據(jù)集可以為KDD CUP99數(shù)據(jù)集,該數(shù)據(jù)集分為訓(xùn)練數(shù)據(jù)集與檢測(cè)數(shù)據(jù)集,其中包含了大量 的數(shù)據(jù)記錄,每個(gè)數(shù)據(jù)記錄含有41維特征,共有39種類型的攻擊記錄,訓(xùn)練數(shù)據(jù)集中每個(gè) 數(shù)據(jù)記錄都被標(biāo)記為正常或某種攻擊,其中有22種攻擊類型的記錄。另有17種未知攻擊 類型出現(xiàn)在測(cè)試數(shù)據(jù)集中。
[0039] 需要說(shuō)明的是,本發(fā)明實(shí)施例對(duì)數(shù)據(jù)集進(jìn)行規(guī)范化處理,將屬性數(shù)據(jù)按比例縮放, 使之落入一個(gè)小的特定區(qū)間,對(duì)于涉及距離度量的聚類算法,將有助于加快學(xué)習(xí)階段的速 度,并且可以幫助防止具有較大初始值域的屬性與具有較小初始值域的屬性相比權(quán)重過(guò) 大,進(jìn)而影響距離度量的準(zhǔn)確性。
[0040] 在步驟S102中,對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行距離度量。
[0041]由于在密度聚類算法中,數(shù)據(jù)量較大、特征維數(shù)較多的數(shù)據(jù)在運(yùn)算方面一般開(kāi)銷 較大。因此,本發(fā)明實(shí)施例基于歐幾里德公式對(duì)預(yù)處理后的數(shù)據(jù)進(jìn)行距離度量,采用歐幾里 德公式的突出優(yōu)點(diǎn)是計(jì)算簡(jiǎn)單,運(yùn)行速度快,且可以支持多維空間索引,歐幾里德公式具體 如下:
[0042]
【權(quán)利要求】
1. 一種入侵檢測(cè)方法,其特征在于,所述方法包括: 對(duì)原始數(shù)據(jù)集進(jìn)行預(yù)處理,所述原始數(shù)據(jù)集包含多個(gè)數(shù)據(jù)記錄,每個(gè)數(shù)據(jù)記錄包含連 續(xù)型數(shù)據(jù)點(diǎn)和/或非數(shù)值型數(shù)據(jù)點(diǎn); 對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行距離度量; 基于預(yù)定算法以及所述距離度量,獲得簇的個(gè)數(shù); 基于所述距離度量,計(jì)算預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo); 基于所述距離度量和數(shù)據(jù)點(diǎn)的密度指標(biāo),計(jì)算數(shù)據(jù)點(diǎn)的距離指標(biāo); 計(jì)算每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo)與距離指標(biāo)的乘積r,并按r的大小進(jìn)行排序; 基于所述排序,選擇前k個(gè)數(shù)據(jù)點(diǎn)作為各個(gè)簇的中心點(diǎn),所述k為所述簇的個(gè)數(shù),k為 大于零的整數(shù); 將剩余的數(shù)據(jù)點(diǎn)分配到離其距離最近且密度指標(biāo)比其高的中心點(diǎn)所屬的簇中; 將分配后的簇按照其包含的數(shù)據(jù)點(diǎn)的個(gè)數(shù)進(jìn)行排序,將簇中數(shù)據(jù)點(diǎn)的個(gè)數(shù)最多的簇判 定為正常簇,其余的簇判定為異常簇。
2. 如權(quán)利要求1所述的方法,其特征在于,所述對(duì)原始數(shù)據(jù)集進(jìn)行預(yù)處理包括: 對(duì)原始數(shù)據(jù)集中的連續(xù)型數(shù)據(jù)點(diǎn),將其數(shù)據(jù)取值從[min,max]映射到范圍小于預(yù)設(shè)值 的區(qū)間; 對(duì)原始數(shù)據(jù)集中的非數(shù)值型數(shù)據(jù)點(diǎn),將其離散化后,通過(guò)編碼映射成數(shù)值,或者直接在 所述距離度量中進(jìn)行比較。
3. 如權(quán)利要求1或2所述的方法,其特征在于,所述對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù) 點(diǎn)進(jìn)行距離度量包括: 基于加權(quán)的歐幾里德公式對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行距離度量。
4. 如權(quán)利要求1所述的方法,其特征在于,所述基于所述距離度量,計(jì)算預(yù)處理后的數(shù) 據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo)包括: 針對(duì)某個(gè)數(shù)據(jù)點(diǎn)i,計(jì)算i與其周圍數(shù)據(jù)點(diǎn)的距離,將距離小于或等于預(yù)定距離的周圍 數(shù)據(jù)點(diǎn)的個(gè)數(shù)作為所述i的密度指標(biāo)。
5. 如權(quán)利要求1或4所述的方法,其特征在于,所述基于所述距離度量和數(shù)據(jù)點(diǎn)的密度 指標(biāo),計(jì)算數(shù)據(jù)點(diǎn)的距離指標(biāo)包括: 針對(duì)某個(gè)數(shù)據(jù)點(diǎn)i,獲取密度指標(biāo)比i密度指標(biāo)大的數(shù)據(jù)點(diǎn)%,并計(jì)算i與%的距離, 將計(jì)算得到的最小距離作為所述i的距離指標(biāo),其中j大于或等于1。
6. -種入侵檢測(cè)裝置,其特征在于,所述裝置包括: 預(yù)處理單元,用于對(duì)原始數(shù)據(jù)集進(jìn)行預(yù)處理,所述原始數(shù)據(jù)集包含多個(gè)數(shù)據(jù)記錄,每個(gè) 數(shù)據(jù)記錄包含連續(xù)型數(shù)據(jù)點(diǎn)和/或非數(shù)值型數(shù)據(jù)點(diǎn); 距離度量單元,用于對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行距離度量; 簇個(gè)數(shù)獲取單元,用于基于預(yù)定算法以及所述距離度量,獲得簇的個(gè)數(shù); 密度指標(biāo)計(jì)算單元,用于基于所述距離度量,計(jì)算預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn) 的密度指標(biāo); 距離指標(biāo)計(jì)算單元,用于基于所述距離度量和數(shù)據(jù)點(diǎn)的密度指標(biāo),計(jì)算數(shù)據(jù)點(diǎn)的距離 指標(biāo); 排序單元,用于計(jì)算每一個(gè)數(shù)據(jù)點(diǎn)的密度指標(biāo)與距離指標(biāo)的乘積r,并按r的大小進(jìn)行 排序; 中心點(diǎn)確定單元,用于基于所述排序,選擇前k個(gè)數(shù)據(jù)點(diǎn)作為各個(gè)簇的中心點(diǎn),所述k 為所述簇的個(gè)數(shù),k為大于零的整數(shù); 分配單元,用于將剩余的數(shù)據(jù)點(diǎn)分配到離其距離最近且密度指標(biāo)比其高的中心點(diǎn)所屬 的簇中; 判定單元,用于將分配后的簇按照其包含的數(shù)據(jù)點(diǎn)的個(gè)數(shù)進(jìn)行排序,將簇中數(shù)據(jù)點(diǎn)的 個(gè)數(shù)最多的簇判定為正常簇,其余的簇判定為異常簇。
7. 如權(quán)利要求6所述的裝置,其特征在于,所述預(yù)處理單元具體用于: 對(duì)原始數(shù)據(jù)集中的連續(xù)型數(shù)據(jù)點(diǎn),將其數(shù)據(jù)取值從[min,max]映射到范圍小于預(yù)設(shè)值 的區(qū)間; 對(duì)原始數(shù)據(jù)集中的非數(shù)值型數(shù)據(jù)點(diǎn),將其離散化后,通過(guò)編碼映射成數(shù)值,或者直接在 所述距離度量中進(jìn)行比較。
8. 如權(quán)利要求6或7所述的裝置,其特征在于,所述距離度量單元具體用于: 基于加權(quán)的歐幾里德公式對(duì)預(yù)處理后的數(shù)據(jù)集中每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行距離度量。
9. 如權(quán)利要求6所述的裝置,其特征在于,所述密度指標(biāo)計(jì)算單元具體用于: 針對(duì)某個(gè)數(shù)據(jù)點(diǎn)i,計(jì)算i與其周圍數(shù)據(jù)點(diǎn)的距離,將距離小于或等于預(yù)定距離的周圍 數(shù)據(jù)點(diǎn)的個(gè)數(shù)作為所述i的密度指標(biāo)。
10. 如權(quán)利要求6或9所述的裝置,其特征在于,所述距離指標(biāo)計(jì)算單元具體用于: 針對(duì)某個(gè)數(shù)據(jù)點(diǎn)i,獲取密度指標(biāo)比i密度指標(biāo)大的數(shù)據(jù)點(diǎn)%,并計(jì)算i與%的距離, 將計(jì)算得到的最小距離作為所述i的距離指標(biāo),其中j大于或等于1。
【文檔編號(hào)】G06F17/30GK104517052SQ201410747764
【公開(kāi)日】2015年4月15日 申請(qǐng)日期:2014年12月9日 優(yōu)先權(quán)日:2014年12月9日
【發(fā)明者】張爽, 張涌, 寧立 申請(qǐng)人:中國(guó)科學(xué)院深圳先進(jìn)技術(shù)研究院