1.一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,包括如下步驟:
步驟一:設(shè)置時間間隔t;
步驟二:以t時間間隔內(nèi)的數(shù)據(jù)量作為計算項,通過使用廣義杰卡德相似系數(shù)計算公式計算當(dāng)前t時間間隔內(nèi)屬性集合和歷史正常屬性集合的相似性;
步驟三:將步驟二中計算出的杰卡德相似系數(shù)與預(yù)先設(shè)定的相似閾值γ比較,以此為依據(jù)判斷是否發(fā)生DDoS攻擊。
2.根據(jù)權(quán)利要求1所述的一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,所述的屬性集合為若干屬性特征組成的屬性向量,步驟二中所述的廣義杰卡德相似系數(shù)計算公式如下:
其中:x表示若干次取t時間間隔內(nèi)不同歷史正常數(shù)據(jù)計算各個屬性特征取平均值組成的屬性向量;xi表示當(dāng)前t時間間隔內(nèi)計算出的各個屬性特征組成的屬性向量;
所述步驟二具體包括如下步驟:
步驟2.1:將若干次t時間間隔內(nèi)不同歷史正常數(shù)據(jù)取平均值計算x;
步驟2.2:計算當(dāng)前t時間間隔內(nèi)的xi值;
步驟2.3:計算杰卡德相似系數(shù)Sim(x,xi)。
3.根據(jù)權(quán)利要求2所述的一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,所述的屬性特征包括源IP地址熵值、數(shù)據(jù)包大小的熵值以及TCP連接數(shù)與HTTP請求數(shù)比值。
4.根據(jù)權(quán)利要求3所述的一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,所述源IP地址熵值的計算步驟如下:
步驟a1:定義IP_all={IP1,IP2,...IPi,...IPn},IP_all代表t時間間隔內(nèi)源IP地址集合;
步驟a2:定義P={p1,p2,...,pi,...,pn},pi表示IPi的概率分布;
步驟a3:由步驟a1,a2得出t時間間隔內(nèi)源IP地址的熵值為:
5.根據(jù)權(quán)利要求3所述的一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,所述數(shù)據(jù)包大小的熵值的計算步驟如下:
步驟b1:將流向目標(biāo)主機的第i個數(shù)據(jù)流定義為flowi,則t時間間隔內(nèi)采集到的流向目標(biāo)主機的數(shù)據(jù)流flow_all表示為:
flow_all={flow1,flow2,...flowi,...flown};
步驟b2:設(shè)P(flowi)為第i個流上數(shù)據(jù)包的數(shù)量,用pi表示其概率分布為:
其中
步驟b3:由步驟b1,b2得出數(shù)據(jù)包大小的熵值為:
6.根據(jù)權(quán)利要求3所述的一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,所述TCP連接數(shù)與HTTP請求數(shù)比值的計算步驟如下:
步驟c1:定義tcpnum為t時間間隔內(nèi)總的TCP連接數(shù);
步驟c2:定義http_reqnum為t時間間隔內(nèi)總的HTTP請求數(shù);
步驟c3:由步驟c1,c2得到連接請求比為:
7.根據(jù)權(quán)利要求2所述的一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,所述步驟三具體包括如下步驟:
步驟3.1:將步驟二中計算出的杰卡德相似系數(shù)Sim(x,xi)與預(yù)先設(shè)定的相似閾值γ比較,若Sim(x,xi)>γ則進(jìn)行步驟3.2后進(jìn)入步驟3.4,否則則進(jìn)行步驟3.3后進(jìn)入步驟3.4;
步驟3.2:將xi加入歷史正常數(shù)據(jù);
步驟3.3:報警,作出攻擊響應(yīng);
步驟3.4:回到步驟二。
8.根據(jù)權(quán)利要求2所述的一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測方法,其特征在于,所述的相似閾值γ通過如下步驟設(shè)置:
步驟1:采集目標(biāo)Web服務(wù)器正常情況下若干小時以來每個時間間隔t內(nèi)HTTP請求作為歷史正常數(shù)據(jù),取不同歷史正常數(shù)據(jù)各個屬性特征平均值組成屬性向量,此屬性向量作為杰卡德相似系數(shù)計算公式中的x;
步驟2:模擬DDoS攻擊,捕獲若干個時間間隔t內(nèi)流量數(shù)據(jù)作為樣本,計算各個時間間隔t內(nèi)流量數(shù)據(jù)的屬性向量作為杰卡德相似系數(shù)計算公式中的xi,計算其杰卡德相似系數(shù)Sim(x,xi);
步驟3:取一個大于所有作為樣本的DDoS攻擊流量數(shù)據(jù)的杰卡德相似系數(shù)Sim(x,xi)的值作為相似閾值γ。
9.一種基于廣義杰卡德相似系數(shù)Web應(yīng)用層DDoS攻擊檢測裝置,其特征在于,包括:
時間間隔設(shè)置模塊:用于設(shè)置時間間隔t;
相似性比較模塊:用于以t時間間隔內(nèi)的數(shù)據(jù)量作為計算項,通過使用廣義杰卡德相似系數(shù)計算公式計算當(dāng)前t時間間隔內(nèi)屬性集合和歷史正常屬性集合的相似性;
攻擊識別模塊:將相似性比較模塊中計算出的杰卡德相似系數(shù)與預(yù)先設(shè)定的相似閾值γ比較,以此為依據(jù)判斷是否發(fā)生DDoS攻擊。
10.一種相似閾值設(shè)置模塊,包括:
平均值計算模塊:用于采集目標(biāo)Web服務(wù)器正常情況下若干小時以來每個時間間隔t內(nèi)HTTP請求作為歷史正常數(shù)據(jù),取不同歷史正常數(shù)據(jù)各個屬性特征平均值組成屬性向量,此屬性向量作為杰卡德相似系數(shù)計算公式中的x;
攻擊樣本相似系數(shù)計算模塊:用于模擬DDoS攻擊,捕獲若干個時間間隔t內(nèi)流量數(shù)據(jù)作為樣本,計算各個時間間隔t內(nèi)流量數(shù)據(jù)的屬性向量作為杰卡德相似系數(shù)計算公式中的xi,計算其杰卡德相似系數(shù)Sim(x,xi);
相似閾值計算模塊:用于取一個大于所有作為樣本的DDoS攻擊流量數(shù)據(jù)的杰卡德相似系數(shù)Sim(x,xi)的值作為相似閾值γ。