對(duì)Web服務(wù)器群的攻擊的檢測方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,尤其涉及一種對(duì)Web服務(wù)器群的攻擊的檢測方法和裝置。
【背景技術(shù)】
[0002]隨著Web2.0、社交網(wǎng)絡(luò)、微博等等一系列新型的互聯(lián)網(wǎng)產(chǎn)品的誕生,基于Web環(huán)境的互聯(lián)網(wǎng)應(yīng)用越來越廣泛,企業(yè)信息化的過程中各種應(yīng)用都架設(shè)在Web平臺(tái)上。
[0003]Web業(yè)務(wù)的迅速發(fā)展也引起了攻擊者更大的興趣,并采用拉網(wǎng)式的Web漏洞掃描方式,來獲取最大的攻擊利益。當(dāng)一種新的漏洞出現(xiàn)時(shí),攻擊者往往采用編寫工具對(duì)互聯(lián)網(wǎng)進(jìn)行采點(diǎn)掃描,以最大化發(fā)現(xiàn)存在漏洞的Web服務(wù)器并對(duì)其進(jìn)行攻擊。
[0004]然而,現(xiàn)有技術(shù)中常用的對(duì)Web攻擊的防護(hù)方法一般是對(duì)某種特定類型的攻擊的防護(hù),例如針對(duì)結(jié)構(gòu)化查詢語言(Structured Query Language, SQL)注入的防護(hù)。這些防護(hù)方法都不能應(yīng)對(duì)現(xiàn)在的快速變化的Web攻擊。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例提供了一種對(duì)Web服務(wù)器群的攻擊的檢測方法和裝置,用于應(yīng)對(duì)現(xiàn)在的快速變化的Web攻擊。
[0006]本發(fā)明實(shí)施例第一方面提供一種對(duì)Web服務(wù)器群的攻擊的檢測方法,包括:
[0007]獲取潛在攻擊集合,其中所述潛在攻擊集合是根據(jù)在預(yù)置時(shí)間段內(nèi)向所述Web服務(wù)器群發(fā)送的Web請(qǐng)求中的請(qǐng)求字符串確定的;
[0008]對(duì)所述潛在攻擊集合中的請(qǐng)求字符串進(jìn)行聚類分析,獲取聚類分析的結(jié)果,并根據(jù)所述聚類分析的結(jié)果將所述潛在攻擊集合中的請(qǐng)求字符串劃分到潛在攻擊聚類中,其中同一個(gè)潛在攻擊聚類中的任意兩個(gè)請(qǐng)求字符串之間的相似距離小于或者等于預(yù)置距離,且任意一個(gè)潛在攻擊聚類中的任意一個(gè)請(qǐng)求字符串與其他任意一個(gè)潛在攻擊聚類中的任意一個(gè)請(qǐng)求字符串之間的相似距離大于所述預(yù)置距離;
[0009]計(jì)算所述潛在攻擊聚類的過濾因子,其中任意一個(gè)所述潛在攻擊聚類的過濾因子為所述潛在攻擊聚類中請(qǐng)求字符串的數(shù)量與所述潛在攻擊集合中請(qǐng)求字符串所對(duì)應(yīng)的Web服務(wù)器的數(shù)量的比值;
[0010]根據(jù)所述過濾因子確定是否存在攻擊。
[0011 ] 結(jié)合本發(fā)明實(shí)施例的第一方面,本發(fā)明實(shí)施例的第一方面的第一種實(shí)現(xiàn)方式中,所述根據(jù)所述過濾因子確定是否存在攻擊具體包括:
[0012]當(dāng)所述過濾因子小于或者等于預(yù)置數(shù)值時(shí),確定存在攻擊;
[0013]所述確定存在攻擊之后,還包括:
[0014]將所述過濾因子對(duì)應(yīng)的潛在攻擊聚類確定為攻擊聚類;
[0015]將所述攻擊聚類加入到攻擊集合。
[0016]結(jié)合本發(fā)明實(shí)施例的第一方面,本發(fā)明實(shí)施例的第一方面的第二種實(shí)現(xiàn)方式中,所述根據(jù)所述過濾因子確定是否存在攻擊具體包括:
[0017]當(dāng)所述過濾因子與所述預(yù)置距離的乘積小于或者等于預(yù)置數(shù)值時(shí),確定存在攻擊;
[0018]所述確定存在攻擊之后,還包括:
[0019]將所述過濾因子對(duì)應(yīng)的潛在攻擊聚類確定為攻擊聚類;
[0020]將所述攻擊聚類加入到攻擊集合。
[0021 ] 結(jié)合本發(fā)明實(shí)施例的第一方面、或第一方面的第一種實(shí)現(xiàn)方式、或第一方面的第二種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第一方面的第三種實(shí)現(xiàn)方式中,所述獲取潛在攻擊集合之前還包括:
[0022]獲取請(qǐng)求集合,所述請(qǐng)求集合包括在所述預(yù)置時(shí)間段內(nèi)對(duì)所述Web服務(wù)器群發(fā)送的所有Web請(qǐng)求中的請(qǐng)求字符串;
[0023]所述獲取潛在攻擊集合具體包括:
[0024]對(duì)所述請(qǐng)求集合中的請(qǐng)求字符串與預(yù)置第一規(guī)則進(jìn)行匹配,獲得匹配結(jié)果;
[0025]根據(jù)所述匹配結(jié)果,確定潛在攻擊集合。
[0026]結(jié)合本發(fā)明實(shí)施例的第一方面的第三種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第一方面的第四種實(shí)現(xiàn)方式中,所述對(duì)所述請(qǐng)求集合中的請(qǐng)求字符串與預(yù)置第一規(guī)則進(jìn)行匹配之前還包括:
[0027]對(duì)所述請(qǐng)求集合中的請(qǐng)求字符串與預(yù)置黑名單規(guī)則進(jìn)行匹配;
[0028]若所述請(qǐng)求集合中的請(qǐng)求字符串符合所述預(yù)置黑名單規(guī)則,則加入所述攻擊集合;
[0029]所述對(duì)所述請(qǐng)求集合中的請(qǐng)求字符串與預(yù)置第一規(guī)則進(jìn)行匹配具體包括:
[0030]對(duì)所述請(qǐng)求集合中不符合所述預(yù)置黑名單規(guī)則的請(qǐng)求字符串與預(yù)置第一規(guī)則進(jìn)行匹配。
[0031 ] 結(jié)合本發(fā)明實(shí)施例的第一方面的第四種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第一方面的第五種實(shí)現(xiàn)方式中,所述方法還包括:
[0032]將所述攻擊集合生成正則表達(dá)式規(guī)則;
[0033]將所述正則表達(dá)式規(guī)則添加到所述預(yù)置黑名單規(guī)則中。
[0034]本發(fā)明實(shí)施例第二方面提供一種對(duì)Web服務(wù)器群的攻擊的檢測裝置,包括:
[0035]第一獲取模塊,用于獲取潛在攻擊集合,其中所述潛在攻擊集合是根據(jù)在預(yù)置時(shí)間段內(nèi)對(duì)所述Web服務(wù)器群發(fā)送的Web請(qǐng)求中的請(qǐng)求字符串確定的;
[0036]分析模塊,用于對(duì)所述潛在攻擊集合中的請(qǐng)求字符串進(jìn)行聚類分析,獲取聚類分析的結(jié)果,并根據(jù)所述聚類分析的結(jié)果將所述潛在攻擊集合中的請(qǐng)求字符串劃分到潛在攻擊聚類中,其中同一個(gè)潛在攻擊聚類中的任意兩個(gè)請(qǐng)求字符串之間的相似距離小于或者等于預(yù)置距離,且任意一個(gè)潛在攻擊聚類中的任意一個(gè)請(qǐng)求字符串與其他任意一個(gè)潛在攻擊聚類中的任意一個(gè)請(qǐng)求字符串之間的相似距離大于預(yù)置距離;
[0037]計(jì)算模塊,用于計(jì)算所述潛在攻擊聚類的過濾因子,其中任意一個(gè)所述潛在攻擊聚類的過濾因子為所述潛在攻擊聚類中請(qǐng)求字符串的數(shù)量與所述潛在攻擊集合中請(qǐng)求字符串所對(duì)應(yīng)的Web服務(wù)器的數(shù)量的比值;
[0038]第一確定模塊,用于根據(jù)所述過濾因子確定是否存在攻擊。
[0039]結(jié)合本發(fā)明實(shí)施例的第二方面,本發(fā)明實(shí)施例的第二方面的第一種實(shí)現(xiàn)方式中,所述第一確定模塊具體用于當(dāng)所述過濾因子小于或者等于預(yù)置數(shù)值時(shí),確定存在攻擊;
[0040]所述對(duì)Web服務(wù)器群的攻擊的檢測裝置還包括:
[0041]第二確定模塊,用于將所述小于或者等于預(yù)置數(shù)值的過濾因子對(duì)應(yīng)的潛在攻擊聚類確定為攻擊聚類;
[0042]添加模塊,用于將所述攻擊聚類加入到所述攻擊集合。
[0043]結(jié)合本發(fā)明實(shí)施例的第二方面,本發(fā)明實(shí)施例的第二方面的第二種實(shí)現(xiàn)方式中,所述第一確定模塊具體用于當(dāng)所述過濾因子與所述預(yù)置距離的乘積小于或者等于預(yù)置數(shù)值時(shí),確定存在攻擊;
[0044]所述對(duì)Web服務(wù)器群的攻擊的檢測裝置還包括:
[0045]第三確定模塊,用于將所述過濾因子對(duì)應(yīng)的潛在攻擊聚類確定為攻擊聚類;
[0046]添加模塊,用于將所述攻擊聚類加入到所述攻擊集合。
[0047]結(jié)合本發(fā)明實(shí)施例的第二方面、或第二方面的第一種實(shí)現(xiàn)方式、或第二方面的第二種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第二方面的第三種實(shí)現(xiàn)方式中,所述對(duì)Web服務(wù)器群的攻擊的檢測裝置還包括:
[0048]第二獲取模塊,用于獲取請(qǐng)求集合,所述請(qǐng)求集合包括在所述預(yù)置時(shí)間段內(nèi)對(duì)所述Web服務(wù)器群發(fā)送的所有Web請(qǐng)求中的請(qǐng)求字符串;
[0049]所述第一獲取模塊具體包括:
[0050]匹配單元,用于對(duì)所述請(qǐng)求集合中的請(qǐng)求字符串與預(yù)置第一規(guī)則進(jìn)行匹配,獲得匹配結(jié)果;
[0051]確定單元,用于根據(jù)所述匹配結(jié)果,確定潛在攻擊集合。
[0052]結(jié)合本發(fā)明實(shí)施例的第二方面的第三種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第二方面的第四種實(shí)現(xiàn)方式中,所述對(duì)Web服務(wù)器群的攻擊的檢測裝置還包括:
[0053]匹配模塊,用于在所述匹配單元對(duì)所述請(qǐng)求集合中的請(qǐng)求字符串與預(yù)置第一規(guī)則進(jìn)行匹配之前對(duì)所述請(qǐng)求集合中的請(qǐng)求字符串與預(yù)置黑名單規(guī)則進(jìn)行匹配;
[0054]所述第一獲取模塊中的匹配單元具體用于對(duì)所述請(qǐng)求集合中不符合所述預(yù)置黑名單規(guī)則的請(qǐng)求字符串與預(yù)置第一規(guī)則進(jìn)行匹配,獲得匹配結(jié)果。
[0055]結(jié)合本發(fā)明實(shí)施例的第二方面的第四種實(shí)現(xiàn)方式,本發(fā)明實(shí)施例的第二方面的第五種實(shí)現(xiàn)方式中,所述對(duì)Web服務(wù)器群的攻擊的檢測裝置還包括:
[0056]生成模塊,用于將所述攻擊集合生成正則表達(dá)式規(guī)則;
[0057]添加模塊,用于將所述正則表達(dá)式規(guī)則添加到所述預(yù)置黑名單規(guī)則中。
[0058]從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):
[0059]本發(fā)明實(shí)施例中,通過搜集在預(yù)置時(shí)間段內(nèi)對(duì)Web服務(wù)器群發(fā)送的Web請(qǐng)求中的請(qǐng)求字符串來形成潛在攻擊集合,并對(duì)該集合中的請(qǐng)求字符串進(jìn)行聚類分析以形成不同的聚類,由于在使用工具對(duì)Web服務(wù)器群的大規(guī)模攻擊中,攻擊的請(qǐng)求密度一般會(huì)不加區(qū)分地分布到各Web服務(wù)器中,因此攻擊聚類中請(qǐng)求字符串?dāng)?shù)量與Web服務(wù)器的數(shù)量的比值較小,而在正常聚類中,Web服務(wù)器數(shù)量較小且請(qǐng)求字符串?dāng)?shù)量較大,因此正常聚類中請(qǐng)求字符串?dāng)?shù)量與Web服務(wù)器的數(shù)量的比值與攻擊聚類中請(qǐng)求字符串?dāng)?shù)量與Web服務(wù)器數(shù)量的比值有著明顯的界限;這樣,可通過過濾因子確定是否存在攻擊;本實(shí)施例中,通過對(duì)使用工具對(duì)Web服務(wù)器群的大規(guī)模攻擊與正常訪問的共同區(qū)別特點(diǎn)來識(shí)別出攻擊行為,而不是通過對(duì)某種特定類型的攻擊做具體防護(hù),即使攻擊行為快速變化,但該共同區(qū)別特征并沒有改變,因此本發(fā)明能夠應(yīng)對(duì)現(xiàn)在的快速變化的Web攻擊。
【附圖說明】
[0060]圖1為本發(fā)明的對(duì)Web服務(wù)器群的攻擊的檢測方法的一個(gè)實(shí)施例的流程圖;
[0061]圖2為本發(fā)明的對(duì)Web服務(wù)器群的攻擊的檢測方法的另一個(gè)實(shí)施例的流程圖;
[0062]圖3為本發(fā)明的對(duì)Web服務(wù)器群的攻擊的檢測方法的另一個(gè)實(shí)施例的流程圖;
[0063]圖4為本發(fā)明的攻擊的檢測裝置的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;
[0064]圖5為本發(fā)明的攻擊的檢測裝置的另一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;
[0065]圖6為本發(fā)明實(shí)施例中入侵檢測系統(tǒng)的示意圖;
[0066]圖7為本發(fā)明實(shí)施例中入侵檢測系統(tǒng)內(nèi)部部分結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0067]本發(fā)明實(shí)施例提供了一種對(duì)Web服務(wù)器群的攻擊的檢測方法和裝置,用于應(yīng)對(duì)現(xiàn)在的快速變化的Web攻擊。
[0068]為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
[0069]本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“包括”和“具有”以及它們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備固有的其它步驟或單元。
[0070]請(qǐng)參閱圖1,本發(fā)明的一個(gè)實(shí)施例中對(duì)Web服務(wù)器群的攻擊的檢測方法包括:
[0071]101、獲取潛在攻擊集合;
[0072]用戶通過瀏覽器訪問網(wǎng)頁時(shí),瀏覽器會(huì)向Web服務(wù)器發(fā)出Web請(qǐng)求,然后Web服務(wù)器向發(fā)出Web請(qǐng)求的