網(wǎng)絡攻擊檢測方法和設備的制造方法
【技術領域】
[0001]本發(fā)明屬于無線通信技術領域,尤其是涉及一種網(wǎng)絡攻擊檢測方法和設備。
【背景技術】
[0002]網(wǎng)絡攻擊是影響網(wǎng)絡安全的一個重要隱患,為了保證網(wǎng)絡安全運行,需要及時檢測出網(wǎng)絡中存在的攻擊行為。
[0003]現(xiàn)有的網(wǎng)絡攻擊檢測技術都是使用特征庫中的正則表達式來匹配諸如http請求等網(wǎng)絡傳輸數(shù)據(jù),以此判定傳輸數(shù)據(jù)中是否存在攻擊。
[0004]這種方式需要基于大量的正則表達式特征庫,但該特征庫中經(jīng)常會出現(xiàn)盲點,而且特征庫中的特征經(jīng)常會出現(xiàn)前后關聯(lián)的情況,導致添加新特征人工成本更高,甚至可能出現(xiàn)新特征影響舊特征,致使舊特征失效的情況,從而無法保證網(wǎng)絡攻擊檢測的準確可靠。
【發(fā)明內容】
[0005]針對上述存在的問題,本發(fā)明提供一種網(wǎng)絡攻擊檢測方法和設備,用以提高網(wǎng)絡攻擊檢測的準確性。
[0006]本發(fā)明提供了一種網(wǎng)絡攻擊檢測方法,包括:
[0007]獲取待檢測字符串,并對所述待檢測字符串進行分詞處理,得到所述待檢測字符串中包含的各單詞;
[0008]根據(jù)預設元組構成規(guī)則對所述各單詞進行元組生成處理,以確定與所述待檢測字符串對應的各元組;
[0009]確定預先獲得的攻擊模型數(shù)據(jù)庫中,是否存在與所述各元組對應的模型元組,是否存在與所述各單詞中的第一個單詞對應的模型單詞,所述攻擊模型數(shù)據(jù)庫中存儲有各模型元組以及每個模型元組的出現(xiàn)概率,各模型單詞以及每個模型單詞的出現(xiàn)概率;
[0010]若存在,則獲取各對應模型元組以及對應模型單詞的出現(xiàn)概率,并根據(jù)所述各對應模型元組的出現(xiàn)概率以及各對應模型單詞的出現(xiàn)概率,確定所述待檢測字符串對應的攻擊概率;
[0011]若所述攻擊概率大于或等于預設概率閾值,則確定所述待檢測字符串是具有攻擊行為的字符串。
[0012]本發(fā)明提供了一種網(wǎng)絡攻擊檢測設備,包括:
[0013]第一獲取模塊,用于獲取待檢測字符串,并對所述待檢測字符串進行分詞處理,得到所述待檢測字符串中包含的各單詞;
[0014]第一確定模塊,用于根據(jù)預設元組構成規(guī)則對所述各單詞進行元組生成處理,以確定與所述待檢測字符串對應的各元組;
[0015]第二確定模塊,用于確定預先獲得的攻擊模型數(shù)據(jù)庫中,是否存在與所述各元組對應的模型元組,是否存在與所述各單詞中的第一個單詞對應的模型單詞,所述攻擊模型數(shù)據(jù)庫中存儲有各模型元組以及每個模型元組的出現(xiàn)概率,各模型單詞以及每個模型單詞的出現(xiàn)概率;
[0016]第三確定模塊,用于在所述第二確定模塊確定存在各對應模型元組和對應模型單詞時,獲取各對應模型元組以及對應模型單詞的出現(xiàn)概率,并根據(jù)所述各對應模型元組的出現(xiàn)概率以及各對應模型單詞的出現(xiàn)概率,確定所述待檢測字符串對應的攻擊概率;
[0017]第四確定模塊,用于在所述攻擊概率大于或等于預設概率閾值時,確定所述待檢測字符串是具有攻擊行為的字符串。
[0018]本發(fā)明提供的網(wǎng)絡攻擊檢測方法和設備,針對當前待檢測字符串即網(wǎng)絡傳輸數(shù)據(jù),在確定其是否具有網(wǎng)絡攻擊行為時,首先對其進行分詞、元組構成處理,得到對應的各元組;進而,在預先獲得的存儲有各模型元組及其對應出現(xiàn)概率和各模型單詞及其對應出現(xiàn)概率的攻擊模型數(shù)據(jù)庫中,匹配與得到的各元組對應的模型元組和第一個單詞,從而根據(jù)對應模型元組和對應模型單詞的出現(xiàn)概率確定出該待檢測字符串的攻擊概率,如果攻擊概率大于一定閾值,則確定該字符串為具有攻擊行為的字符串。由于攻擊模型數(shù)據(jù)庫中存儲的各模型單詞和模型元組的出現(xiàn)概率是基于對大量攻擊樣本統(tǒng)計分析獲得的,能夠體現(xiàn)出攻擊樣本的統(tǒng)計特征,從而,基于該統(tǒng)計特征能夠使得待檢測字符串的攻擊行為檢測結果更加準確。
【附圖說明】
[0019]圖1為本發(fā)明網(wǎng)絡攻擊檢測方法實施例一的流程圖;
[0020]圖2為本發(fā)明網(wǎng)絡攻擊檢測方法實施例二的流程圖;
[0021]圖3為本發(fā)明網(wǎng)絡攻擊檢測設備實施例一的結構示意圖;
[0022]圖4為本發(fā)明網(wǎng)絡攻擊檢測設備實施例二的結構示意圖。
【具體實施方式】
[0023]圖1為本發(fā)明網(wǎng)絡攻擊檢測方法實施例一的流程圖,如圖1所示,該方法包括如下步驟:
[0024]步驟101、獲取待檢測字符串,并對所述待檢測字符串進行分詞處理,得到所述待檢測字符串中包含的各單詞。
[0025]本實施例中,上述待檢測字符串是指比如HTTP請求消息等網(wǎng)絡傳輸數(shù)據(jù)?;谡Z義以及字符識別等方式,對待檢測字符串進行分詞處理,得到其中包含的各單詞。
[0026]值得說明的是,對于一條待檢測字符串來說,其并非完全由英文單詞組成的,還包含數(shù)字、符號等組成部分,本實施例中,將這些組成部分統(tǒng)稱為單詞。
[0027]步驟102、根據(jù)預設元組構成規(guī)則對所述各單詞進行元組生成處理,以確定與所述待檢測字符串對應的各元組。
[0028]上述預設元組構成規(guī)則中比如規(guī)定了元組大小即每個元組中包含的單詞數(shù)量,以及每個元組內各單詞的位置關系。
[0029]舉例來說,假設待檢測字符串S的分詞結果是依次包括:A、B、C三個單詞。并且假設元組構成規(guī)則規(guī)定元組的大小為2即每個元組包含2個單詞,且依次針對每個單詞來說,其對應的元組由自身以及其后相鄰的一個單詞構成。那么,上述待檢測字符串S對應的元組包括(A, B)和(B, C)這兩個元組。
[0030]步驟103、確定預先獲得的攻擊模型數(shù)據(jù)庫中,是否存在與所述各元組對應的模型元組,是否存在與所述各單詞中的第一個單詞對應的模型單詞,若存在,則執(zhí)行步驟104,否貝IJ,結束。
[0031]其中,所述攻擊模型數(shù)據(jù)庫中存儲有各模型元組以及每個模型元組的出現(xiàn)概率,各模型單詞以及每個模型單詞的出現(xiàn)概率。
[0032]步驟104、獲取各對應模型元組以及對應模型單詞的出現(xiàn)概率,并根據(jù)所述各對應模型元組的出現(xiàn)概率以及各對應模型單詞的出現(xiàn)概率,確定所述待檢測字符串對應的攻擊概率。
[0033]步驟105、若所述攻擊概率大于或等于預設概率閾值,則確定所述待檢測字符串是具有攻擊行為的字符串。
[0034]本實施例中,上述攻擊模型數(shù)據(jù)庫是預先建立的,是通過對預先獲得的大量攻擊樣本字符串進行統(tǒng)計分析后獲得的,具體來說,攻擊模型數(shù)據(jù)庫中存儲的各模型元組以及每個模型元組的出現(xiàn)概率,各模型單詞以及每個模型單詞的出現(xiàn)概率,都是對大量攻擊樣本字符串統(tǒng)計分析獲得的。
[0035]其中,各模型單詞包括對大量攻擊樣本字符串分別分詞處理后得到的各單詞;各模型元組包括對每個攻擊樣本字符串中包含的各模型單詞進行組建元組后得到的各元組。
[0036]具體的攻擊模型數(shù)據(jù)庫的建立過程將在后續(xù)實施例中描述。本實施例中,僅涉及攻擊模型數(shù)據(jù)庫的使用過程。
[0037]具體地,在獲得了待檢測字符串中包含的各單詞以及各元組之后,查詢攻擊模型數(shù)據(jù)庫,以確定攻擊模型數(shù)據(jù)庫中是否存在與各元組對應的模型元組,是否存在與待檢測字符串分詞處理后得到的第一個單詞對應的模型單詞。如果存在,則分別獲得對應的出現(xiàn)概率。
[0038]其中,之所以是確定是否存在與待檢測字符串分詞處理后得到的第一個單詞對應的模型單詞,是由待檢測字符串的攻擊概率計算公式?jīng)Q定的,下面會介紹。
[0039]在得到各對應模型元組的出現(xiàn)概率以及與第一個單詞對應的模型單詞的出現(xiàn)概率之后,可以通過如下方式得到待檢測字符串對應的攻擊概率:
[0040]將各對應攻擊模型元組的出現(xiàn)概率和對應模型單詞的出現(xiàn)概率加和。
[0041]仍以上述舉例來說,待檢測字符串S分詞處理后得到的第一個單詞為A。假設攻擊模型數(shù)據(jù)庫中存在上述單詞A,以及元組(A,B)和元組(B,C),且A的出現(xiàn)概率P(A) = pi,元組(A, B)的出現(xiàn)概率P (A| B) =p2,元組(B, C)的出現(xiàn)概率P (B |C) = p3。
[0042]從而,待檢測字符串S 的攻擊概率 P (S) =P (A) +P (A | B) +P (B | C) = pl+p2+p3。
[0043]進而,如果(pl+p2+p3)大于預設概率閾值p0,則說明該待檢測字符串S中具有很多具有攻擊特征的元組和單詞,此時,確定待檢測字符串S是具有攻擊行為的字符串。
[0044]本實施例中,針對當