用於網絡安全設備性能測試的測試流量合成方法及裝置的製作方法
2023-07-29 17:42:31
專利名稱:用於網絡安全設備性能測試的測試流量合成方法及裝置的製作方法
技術領域:
本發明涉及網絡安全檢測,尤其涉及網絡安全設備的測試流量合成。
背景技術:
網絡安全設備,如防火牆,安全網管等的性能測試依賴於測試流量,為了分析網絡安全設備的檢測精度,測試流量通常由正常訪問流量(也可以稱為合法流量)和攻擊流量共同構成。為了分析網絡安全設備在大負載下的性能,攻擊流量往往較大,而且攻擊流量可採取多種手段隱藏攻擊行為,例如圖1所示的脈衝流量攻擊方式。可見,測試流量可以包含多種攻擊流量方式。但是現有的性能測試方法只能生成與所捕獲的流量方式相同的流量或勻速的流量,不能靈活地生成多種方式的攻擊流量。圖2所示的是目前通常採用對網絡安全設備的檢測系統,其中用一臺主機播放合法請求捕包,另一臺主機播放攻擊流量捕包,二者合成測試流量,該測試流量在到達目標主機之前經過待檢測的網絡安全設備。其基本的工作原理如下為了測試網絡安全系統性能,首先採用攻擊工具生成攻擊流量,採用sniffer捕獲攻擊流量,生成相應的Pcap文件;同時用sniffer捕獲正常訪問流量,生成相應的pcap文件。在進行網絡安全系統性能測試時,在兩臺Unix或者Linux主機上,分別根據攻擊流量的pcap文件和合法流量pcap文件,採用tcpr印lay重放數據包,生成目標地址為目標主機的測試流量,進行網絡安全系統性能測試。這種性能測試方法受限於捕獲的pcap文件和 tcpreplay軟體本身,生成測試流量的方式不夠靈活,通常無法靈活地生成包含各種攻擊流量的測試流量。例如,如果在相應的pcap文件中捕獲的攻擊流量為勻速流量,即每秒的包數恆定,那麼tcpr印lay無法通過重放,生成包含脈衝式的攻擊流量或者包速率逐漸增加的攻擊流量等的測試流量。
發明內容
因此,本發明的目的在於克服上述現有技術的缺陷,提供一種用於網絡安全設備性能測試的測試流量合成方法,可用於生成測試所需的各種流量。本發明的目的是通過以下技術方案實現的根據本發明的一個方面,提供了一種用於網絡安全設備性能測試的測試流量合成方法,所述方法包括步驟1)根據所需的攻擊流量方式,將用於測試的總時間段劃分為不同的時隙;步驟2、對於每個時隙內,根據所需的攻擊包速率計算各攻擊包的時間間隔,根據攻擊包的時間戳以及所述時間間隔來順序地插入對應的攻擊包,並且根據合法包的時間戳,在該時隙內插入對應的合法包;步驟幻根據步驟2、所形成的攻擊包和合法包的序列生成測試流量文件。上述方法中,在步驟1)所劃分的每個時隙必須滿足如下要求1)在該時隙內攻擊包速率固定不變;幻在該時隙內攻擊包可視為均勻分布;幻與相連時隙的攻擊包速率不同。上述方法中,所述步驟1)中攻擊流量方式為脈衝式攻擊流量、包速率逐漸增加的攻擊流量或勻速式攻擊流量。上述方法中,在步驟2、中所述的攻擊包和合法包來自通過捕獲攻擊流量和合法流量而生成的相應文件,並且在每個時隙內所述攻擊包速率是固定不變的。上述方法中,使用 sniffer> ethereal、winpcap、wireshark 或 tcpdump 捕獲攻擊
流量和合法流量。上述方法中,還包括利用重放軟體根據所生成的測試流量文件生成包含所需的攻擊流量方式的測試流量的步驟。上述方法中,重放軟體為tcpr印lay或Pr印lay。根據本發明的另一個方面,提供了一種用於網絡安全設備性能測試的測試流量合成裝置,所述裝置包括用於根據所需的攻擊流量方式,將用於測試的總時間段劃分為不同的時隙的裝置;序列生成裝置,其用於對每個時隙,根據所需的攻擊包速率計算各攻擊包的時間間隔,根據攻擊包的時間戳以及所述時間間隔來順序地插入對應的攻擊包,並且根據合法包的時間戳,在該時隙內插入對應的合法包;用於接收序列生成裝置所形成的攻擊包和合法包的序列來生成測試流量文件的
直ο上述裝置中,所劃分的每個時隙必須滿足如下要求1)在該時隙內攻擊包速率固定不變;2)在該時隙內攻擊包可視為均勻分布;3)與相連時隙的攻擊包速率不同。上述裝置中,所述攻擊流量方式為脈衝式攻擊流量、包速率逐漸增加的攻擊流量或勻速式攻擊流量。與現有技術相比,本發明的優點在於1)構造方式靈活,能生成各種複雜類型的流量;2)構造方法簡單,只需捕獲幾個攻擊包,即可合成所需的測試流量。
以下參照附圖對本發明實施例作進一步說明,其中圖1為脈衝式攻擊流量時序的示意圖;圖2為現有的網絡安全檢測系統的示意圖;圖3為根據本發明實施例的包速率逐漸增加情況的時隙劃分的示意圖;圖4 (a)至4 (d)為根據本發明實施例的合成包含脈衝式攻擊流量的測試流量過程示意圖;圖5為根據本發明實施例的測量流量合成方法的流程圖。
具體實施例方式為了使本發明的目的,技術方案及優點更加清楚明白,以下結合附圖通過具體實施例對本發明進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。為了滿足網絡安全設備性能測試對各種不同流量類型的需求,在本申請中給出了一種測試流量合成方法。該方法根據實際需要的攻擊流量方式將所捕獲的攻擊流量和合法流量生成一個相應的測試流量文件(例如,Pcap類型的文件)。利用重放軟體根據所生成的測試流量文件重放數據包,從而得到包含所需的攻擊流量方式的測試流量。在一個實施例中,可使用本領域普通技術人員所熟知的各種技術來捕獲攻擊流量和合法流量,例如 sniffer> ethereal, winpcap, wireshark, tcpdump等。在一個實施例中,可使用本令頁域普通技術人員所熟知的各種重放工具來播放測試流量文件中的數據包以形成測試流量,例如 tcpreplay, Preplay等。在下文中以sniffer、tcpreplay以及對應的pcap類型的測試流量文件為例對該方法進行說明。更具體地,在通過sniffer捕獲攻擊流量和合法流量所生成的pcap文件基礎上, 該方法根據所需的攻擊流量方式,將用於測試的總時間段分為不同的時隙,在一個時隙內, 攻擊包速率視為勻速分布。在該時隙內,根據攻擊包速率計算各攻擊包的時間間隔,插入對應攻擊包的pcap包。同時,根據合法包的pcap包的時間戳,插入對應合法包的pcap包。該方法最終生成了一個pcap文件,其包含了攻擊pcap包和合法pcap包,相應地只需要根據該文件重放數據包就可以生成包含所需的攻擊流量方式的測試流量了。其中,根據所需的攻擊流量方式劃分時隙(slot)時,每個時隙代表不同的時間段,而一個時間段可作為一個時隙,必須滿足如下要求1)這個時間段內攻擊包速率固定不變;幻在這個時間段內攻擊包可視為均勻分布;幻與相連時隙的攻擊包速率不同。現參考圖3說明如何劃分時隙,圖3給出了一個包速率逐漸增加情況的時隙劃分的示意圖。其中,所需的攻擊流量方式為包速率逐漸增加的情況,那麼假設初試攻擊包速率為10/s,然後每隔一段時間(如圖3所示分別是2s, 2s, 2s, 3s, 3s, 4s, 4s),攻擊包速率增加2,那麼時隙劃分為slotl slot8,時隙大小分別是2s,2s,2s,2s,3s,3s,4s,4s,在每個時隙內攻擊包的速率可視為勻速的,例如,在slotl內(這k長的時間段內),攻擊包的速率可視為10/ s ;而在不同的時隙內攻擊包的速率是不同的,例如與slotl相鄰的時隙slot2(也是^長的時間端)內,攻擊包的速率不同於slotl內的速率,為12/s。同樣地,如果所需攻擊流量方式為均勻分布的情況,那麼就只有一個時隙,時隙長度為測試的總時間段。現參考圖4(a)至圖4(d)以脈衝攻擊流量為例,來說明時隙slot劃分,以及在一個時隙內攻擊包和合法包的插入過程。圖4(a)為所需的脈衝攻擊流量的示意圖,其脈衝間隔時間為0. 8秒,脈衝時間為 0.2秒,即攻擊包集中出現在每個脈衝時間(0.2秒)內,而脈衝間隔時間出現的都是合法包,那麼可以按兩種不同長度的時間段相互間隔的方式來劃分時隙,例如,假設測試流量的總時間長度T為10秒,共劃分20個時隙,其中10個時隙為0. 8秒,其餘10個為0. 2秒,並且這兩種時隙互相間隔。下面以圖4(a)所示的slot2時隙(對應於0. 8秒-1. 0秒的時間軸)為例,介紹這段時間(相當於0.2秒的脈衝時間)內的pcap文件合成方式。假設在這段時間內,合法流量有4個數據包,捕獲時間分別是0. 85秒、0. 89秒、0. 97秒,在時間軸上分布如圖4(b) 所示。在一個時隙內,攻擊包速率視為勻速分布。本示例中,脈衝時攻擊包速率為10/s,脈衝間隔時間為0. 8秒,脈衝時間為0. 2秒,即每個脈衝時間(0. 2秒)內要發送10個攻擊包。相應地,在slot2時間段內,攻擊包的開始時間的分布如圖4(c)所示,每個包間隔時間為0.02秒。這樣可以相應地插入對應攻擊包的pcap包。同時,根據合法包的pcap包的時間戳,插入合法pcap包。圖4(d)所示的最終合成的slot2內數據包的開始時間的分布。其中,短的線表示合法包的開始時間,長的線為攻擊包的開始時間。相應地,通過上述過程所合成的pcap文件內,數據包對應的pcap包順序與圖4(d)相同。現參考圖5來介紹該方法的具體步驟(1)時隙劃分階段設置測試流量所需的總時間T(也可以稱為總合成時間),攻擊包類型,攻擊流量分布情況。根據流量分布狀況,依據攻擊包速率不同,將總合成時間劃分為不同的時隙。一個時隙,必須滿足如下要求1)這個時間段內攻擊包速率固定不變;2) 在這個時間段內攻擊包可視為均勻分布;幻與相連時隙的攻擊包速率不同。設合法流量 pcap文件中,第一個數據包的時間戳為、,第η個數據包的時間戳為tn。假設在測試時,合法流量在第t/秒發送,將第一個數據包的時間戳改為t/秒,第η個數據包的時間戳改為 k-ti+t/,合法數據包指針指向合法流量pcap的第一個數據包。待插入攻擊包時戳cts =
00(2)進入一個新的時隙,該時隙長度為slot,設在該時隙內的攻擊包總數為M,對在此時隙內插入的攻擊包的計數Num的初始值為0,在該時隙內插入一個攻擊包,Num即加
1;如果待插入攻擊包時戳cts =當前時隙開始時間+slot/M.進入步驟(3)。slot的範圍為0 < slot < =總時間T,slot的設置依據檢測所要求的攻擊流量分布,例如在圖1所示的脈衝流量分布中,slot交替設為流量為0的時間長度tl和脈衝持續時間t2。下文會給出具體的例子。在該slot內的攻擊包速率為v,則M = vXslot,M即為該時隙內的攻擊包總數。(3)判斷Num是否小於等於M,如果是,進入步驟(4),否則轉入步驟(7)G) cts是否大於當前待插入合法數據包時間戳且當前指針不為空,如果是,轉入步驟(5),否則轉入步驟(6).(5)插入當前指針所指合法數據包,如果當前合法數據包為最後一個,則將當前待插入合法數據包指針置空,否則將指針指向後一個合法數據包。轉入步驟(3).(6)插入一個攻擊包,並令 cts = cts+slot/M, Num = Num+1,轉入步驟(3).(7)令cts =當前時隙結束時間。轉入步驟(8).(8)判斷合成時間是否已到,如果已到轉入步驟(9),否則轉入步驟O).(9)流量合成結束。在又一個實施例中,本發明還提供了一種用於網絡安全設備性能測試的測試流量合成裝置,所述裝置包括用於根據所需的攻擊流量方式,將用於測試的總時間段劃分為不同的時隙的裝置;序列生成裝置,以及用於接收序列生成裝置所形成的攻擊包和合法包的序列來生成測試流量文件的裝置。其中,所述序列生成裝置用於對每個時隙,根據所需的攻擊包速率計算各攻擊包的時間間隔,根據攻擊包的時間戳以及所述時間間隔來順序地插入對應的攻擊包,並且根據合法包的時間戳,在該時隙內插入對應的合法包。綜上所述,本發明提供了的用於網絡安全系統性能測試的測試流量合成方法,其根據攻擊流量分布要求,劃分出不同時隙,將每個時隙內的攻擊包分布視為均勻分布,並按合法包的時間戳將其插入該時隙。該方法可靈活地生成測試所需的各類流量。
雖然本發明已經通過優選實施例進行了描述,然而本發明並非局限於這裡所描述的實施例,在不脫離本發明範圍的情況下還包括所作出的各種改變以及變化。
權利要求
1.一種用於網絡安全設備性能測試的測試流量合成方法,所述方法包括步驟1)根據所需的攻擊流量方式,將用於測試的總時間段劃分為不同的時隙;步驟2、對於每個時隙內,根據所需的攻擊包速率計算各攻擊包的時間間隔,根據攻擊包的時間戳以及所述時間間隔來順序地插入對應的攻擊包,並且根據合法包的時間戳,在該時隙內插入對應的合法包;步驟幻根據步驟幻所形成的攻擊包和合法包的序列生成測試流量文件。
2.根據權利要求1所述的測試流量合成方法,在步驟1)所劃分的每個時隙必須滿足如下要求1)在該時隙內攻擊包速率固定不變;2)在該時隙內攻擊包可視為均勻分布;3)與相連時隙的攻擊包速率不同。
3.根據權利要求1或2所述的測試流量合成方法,所述步驟1)中攻擊流量方式為脈衝式攻擊流量、包速率逐漸增加的攻擊流量或勻速式攻擊流量。
4.根據權利要求1所述的測試流量合成方法,在步驟幻中所述的攻擊包和合法包來自通過捕獲攻擊流量和合法流量而生成的相應文件,並且在每個時隙內所述攻擊包速率是固定不變的。
5.根據權利要求4所述的測試流量合成方法,其中,使用sniffer、ethereal、WinpCap、 wireshark或tcpdump捕獲攻擊流量和合法流量。
6.根據權利要求1所述的測試流量合成方法,其中還包括利用重放軟體根據所生成的測試流量文件生成包含所需的攻擊流量方式的測試流量的步驟。
7.根據權利要求6所述的測試流量合成方法,其中,重放軟體為tcpreplay或 Preplay0
8.一種用於網絡安全設備性能測試的測試流量合成裝置,所述裝置包括用於根據所需的攻擊流量方式,將用於測試的總時間段劃分為不同的時隙的裝置;序列生成裝置,其用於對每個時隙,根據所需的攻擊包速率計算各攻擊包的時間間隔,根據攻擊包的時間戳以及所述時間間隔來順序地插入對應的攻擊包,並且根據合法包的時間戳,在該時隙內插入對應的合法包;用於接收序列生成裝置所形成的攻擊包和合法包的序列來生成測試流量文件的裝置。
9.根據權利要求8所述的測試流量合成裝置,所劃分的每個時隙必須滿足如下要求 1)在該時隙內攻擊包速率固定不變;2)在該時隙內攻擊包可視為均勻分布;3)與相連時隙的攻擊包速率不同。
10.根據權利要求8所述的測試流量合成裝置,所述攻擊流量方式為脈衝式攻擊流量、 包速率逐漸增加的攻擊流量或勻速式攻擊流量。
全文摘要
本發明提供一種用於網絡安全系統性能測試的測試流量合成方法及裝置,其根據攻擊流量分布要求,劃分出不同時隙,將每個時隙內的攻擊包分布視為均勻分布,並按合法包的時間戳將其插入該時隙。該方法可靈活地生成測試所需的各類測試流量。
文檔編號H04L1/00GK102299828SQ20111025225
公開日2011年12月28日 申請日期2011年8月30日 優先權日2011年8月30日
發明者雲曉春, 張永錚, 肖軍 申請人:中國科學院計算技術研究所