一種網(wǎng)絡(luò)安全流量生成方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供一種基于攻擊向量的網(wǎng)絡(luò)安全流量生成方法和系統(tǒng)。本發(fā)明根據(jù)要模擬的目標網(wǎng)絡(luò)攻擊場景,確定需要模擬的網(wǎng)絡(luò)實體及攻擊步驟,為攻擊步驟建立安全攻擊狀態(tài)序列,完整的安全攻擊狀態(tài)序列組成攻擊向量。對于不確定攻擊步驟的未知攻擊類型,采用基于內(nèi)容和狀態(tài)的流量提取方法,構(gòu)造攻擊向量。基于攻擊向量,由攻擊引擎創(chuàng)建多進程或線程實例來執(zhí)行以產(chǎn)生網(wǎng)絡(luò)安全流量數(shù)據(jù)。該方法通過對安全攻擊過程中客戶端、服務(wù)端以及客戶端和服務(wù)端交互過程進行模擬,實現(xiàn)自動化生成具有完整狀態(tài)的真實安全流量,并且通過對已有攻擊流量的分析提取,支持新攻擊和未知安全流量,具有良好的可擴展性和實用性,且實現(xiàn)簡單,可行性高。
【專利說明】一種網(wǎng)絡(luò)安全流量生成方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及網(wǎng)絡(luò)測試領(lǐng)域,具體而言,涉及一種網(wǎng)絡(luò)安全流量生成方法和系統(tǒng)。
【背景技術(shù)】
[0002] 網(wǎng)絡(luò)安全測試是檢查和驗證網(wǎng)絡(luò)系統(tǒng)的安全性的重要手段,被廣泛應(yīng)用到網(wǎng)絡(luò)系 統(tǒng)的開發(fā)和維護工作中。網(wǎng)絡(luò)安全測試的核心就是通過自動化的方式產(chǎn)生盡可能符合真實 攻擊場景的惡意流量數(shù)據(jù),讓被測系統(tǒng)進行處理,從而檢測被測網(wǎng)絡(luò)系統(tǒng)在處理這些自動 化生成的安全流量數(shù)據(jù)過程中的表現(xiàn),進行網(wǎng)絡(luò)系統(tǒng)的安全性驗證。
[0003] 目前網(wǎng)絡(luò)安全流量產(chǎn)生方法主要有:
[0004] 1)基于日志回放:這類方法通過將真實網(wǎng)絡(luò)環(huán)境中捕獲的流量數(shù)據(jù)進行重放,實 現(xiàn)網(wǎng)絡(luò)攻擊場景的重現(xiàn)。該方法存在以下局限性:(1)前提是可以獲取到攻擊場景流量; (2)回放的流量往往包含大量違反協(xié)議語義的分組,影響DPI設(shè)備過濾準確性;(3)由于網(wǎng) 絡(luò)配置等變化,流量往往無法回放到真實網(wǎng)絡(luò)中,適用的場景小;(4)流量回放很難覆蓋各 種安全攻擊類型,也難以進行可控的混合生成,無法全面評估安全威脅。(5)回放的流量也 只能檢測DPI設(shè)備過濾出的安全流量,而無法發(fā)現(xiàn)成功或者失敗過濾的原因。(1)和(2)說 明缺少狀態(tài),真實性差;(3)和⑷說明靈活性差。
[0005] 2)基于安全規(guī)則:根據(jù)防火墻配置策略規(guī)則,自動生成對應(yīng)規(guī)則的流量數(shù)據(jù),對 防火墻進行自動化的測試,這類方法非常局限,只能測試防火墻規(guī)則的有效性。該方法存在 以下局限性:(1)缺少攻擊語義狀態(tài),往往導(dǎo)致漏報和誤報;(2)很多安全攻擊涉及復(fù)雜的 攻擊過程,安全規(guī)則無法表達整個攻擊過程;(3)對新的攻擊需要仔細的逆向工程,分析攻 擊特征,對最新攻擊特征的提取和構(gòu)造比較困難,靈活性差。(1)和⑵說明缺少狀態(tài),真實 性差;(3)說明靈活性差。
[0006] 3)基于受控網(wǎng)絡(luò):這種方法利用虛擬機等,在受控/隔離環(huán)境中進行真實安全攻 擊的實驗、測試和分析。該方法存在以下局限性:(1)無法應(yīng)用到真實系統(tǒng)中發(fā)現(xiàn)和評估安 全威脅;(2)通?;谡鎸嵉墓艄ぞ?,環(huán)境搭建復(fù)雜,安全攻擊種類非常有限。因此這種 方法的靈活性很差。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明提供一種用于網(wǎng)絡(luò)安全測試的網(wǎng)絡(luò)安全流量生成方法和系統(tǒng),可以靈活地 生成各種具有完整狀態(tài)的安全攻擊流量。
[0008] 為達到上述目的,本發(fā)明提供了一種用于網(wǎng)絡(luò)安全測試的網(wǎng)絡(luò)安全流量生成方 法,包括:
[0009] 對于已知類型的攻擊,包括以下步驟:
[0010] 步驟1)流量分類,根據(jù)安全流量構(gòu)造方法進行分類,將網(wǎng)絡(luò)安全流量分為惡意分 組、應(yīng)用攻擊及DoS攻擊,并分別抽象出對應(yīng)的安全流量生成動作;
[0011] 步驟2)攻擊分解,將攻擊行為分解為若干攻擊步驟,為每個步驟定義一個對應(yīng)的 安全攻擊狀態(tài),對所述若干攻擊步驟分別對應(yīng)的安全攻擊狀態(tài)進行組合,得到對應(yīng)攻擊行 為的一組安全攻擊狀態(tài)跳轉(zhuǎn)序列,并表示為攻擊向量,其中,所述安全攻擊狀態(tài)包括安全流 量生成動作以及可選的響應(yīng)判斷;
[0012] 步驟3)攻擊構(gòu)造,根據(jù)所述攻擊向量生成安全攻擊腳本;
[0013] 步驟4)流量生成,通過攻擊引擎執(zhí)行所述安全攻擊腳本,生成網(wǎng)絡(luò)安全流量。
[0014] 進一步地,對于未知類型的攻擊或新型攻擊,在獲得流量數(shù)據(jù)的前提下,采用下述 步驟生成上述步驟中的攻擊向量:
[0015] 步驟21)流量分解,將安全流量分解為若干條網(wǎng)絡(luò)流量序列;
[0016] 步驟22)數(shù)據(jù)識別,對每條網(wǎng)絡(luò)流量序列提取對應(yīng)的行為特征,構(gòu)造安全攻擊狀 態(tài);
[0017] 步驟23)攻擊構(gòu)造,根據(jù)流量的時間戳序列和所述若干條網(wǎng)絡(luò)流量序列分別對應(yīng) 的安全攻擊狀態(tài)構(gòu)造安全攻擊狀態(tài)跳轉(zhuǎn)序列,并表示為攻擊向量;
[0018] 進而執(zhí)行上述步驟3)攻擊構(gòu)造和步驟4)攻擊執(zhí)行。
[0019] 進一步地,所述安全流量生成動作支持構(gòu)造任何格式的攻擊數(shù)據(jù)及完備的攻擊邏 輯,包括下列類型的動作:流量動作、數(shù)據(jù)構(gòu)造和解析動作、運算和控制動作;所述響應(yīng)判 斷包括收集和處理目標實體的響應(yīng),判斷流量生成動作成功/失敗的結(jié)果。
[0020] 進一步地,根據(jù)每個網(wǎng)絡(luò)攻擊所采用的應(yīng)用協(xié)議的協(xié)議規(guī)范,按照應(yīng)用的消息交 互過程或者按照被模擬的網(wǎng)絡(luò)實體之間的交互過程,分解出基本流量動作。
[0021] 進一步地,根據(jù)要模擬的網(wǎng)絡(luò)攻擊所采用的協(xié)議規(guī)范中所規(guī)定的消息格式,以及 該網(wǎng)絡(luò)攻擊中可能出現(xiàn)的特殊數(shù)據(jù)分組來分解出消息構(gòu)造和解析動作。
[0022] 進一步地,所述運算和控制動作用來進行數(shù)據(jù)運算和邏輯控制,包括基本算術(shù)、邏 輯運算和邏輯控制動作。
[0023] 進一步地,所述行為特征根據(jù)識別出的協(xié)議類型的有限狀態(tài)轉(zhuǎn)移自動機的狀態(tài)特 征提取,將行為特征表示為流量生成動作,對應(yīng)協(xié)議的有限狀態(tài)轉(zhuǎn)移自動機對應(yīng)流量的攻 擊向量。
[0024] 進一步地,如果攻擊為多個時,在通過攻擊引擎執(zhí)行所述安全攻擊腳本時,創(chuàng)建多 個進程或線程并發(fā)執(zhí)行每個攻擊對應(yīng)的安全攻擊腳本。
[0025] 進一步地,在所述流量分解步驟中,根據(jù)數(shù)據(jù)流量特征對所獲得的流量數(shù)據(jù)進行 分解。
[0026] 為達到上述目的,本發(fā)明還提供了一種網(wǎng)絡(luò)安全流量生成系統(tǒng),對于已知類型的 攻擊,所述系統(tǒng)包括:
[0027] 流量分類模塊,用于根據(jù)安全流量構(gòu)造方法進行分類,將網(wǎng)絡(luò)安全流量分為惡意 分組、應(yīng)用攻擊及DoS攻擊,并分別抽象出對應(yīng)的安全流量生成動作;
[0028] 攻擊分解模塊,用于將攻擊行為分解為若干攻擊步驟,為每個步驟定義一個對應(yīng) 的安全攻擊狀態(tài),對所述若干攻擊步驟分別對應(yīng)的安全攻擊狀態(tài)進行組合,得到對應(yīng)攻擊 行為的一組安全攻擊狀態(tài)跳轉(zhuǎn)序列,并表示為攻擊向量,其中,所述安全攻擊狀態(tài)包括安全 流量生成動作以及可選的響應(yīng)判斷;
[0029] 攻擊構(gòu)造模塊,用于根據(jù)所述攻擊向量生成安全攻擊腳本;
[0030] 流量生成模塊,用于通過攻擊引擎執(zhí)行所述安全攻擊腳本,生成網(wǎng)絡(luò)安全流量。
[0031] 與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:
[0032] 本發(fā)明通過對安全攻擊過程中客戶端、服務(wù)端以及客戶端和服務(wù)端交互過程進行 模擬,實現(xiàn)自動化生成具有各種完整狀態(tài)的真實安全流量,并且通過對已有攻擊流量的分 析提取,支持新攻擊和未知安全流量,具有良好的可擴展性和實用性,且實現(xiàn)簡單,可行性 商。
【專利附圖】
【附圖說明】
[0033] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
[0034] 圖1為本發(fā)明一個實施例的基于攻擊向量的網(wǎng)絡(luò)安全流量生成方法流程圖;
[0035] 圖2為本發(fā)明一個實施例的利用遠程代碼執(zhí)行漏洞的典型攻擊過程示意圖;
[0036] 圖3為本發(fā)明一個實施例的TCP有限狀態(tài)機示意圖;
[0037] 圖4為本發(fā)明一個實施例的其他協(xié)議有限狀態(tài)機示意圖;
[0038] 圖5為本發(fā)明一個實施例的網(wǎng)絡(luò)場景的示意圖;
[0039] 圖6為可本發(fā)明另一個實施例的網(wǎng)絡(luò)場景的示意圖。
【具體實施方式】
[0040] 下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;?本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有付出創(chuàng)造性勞動前提下所獲得的所有其他 實施例,都屬于本發(fā)明保護的范圍。
[0041] 圖1為本發(fā)明一個實施例的基于攻擊向量的網(wǎng)絡(luò)安全流量生成方法流程圖。如圖 所示,該方法包括:步驟1)流量分類,根據(jù)安全流量構(gòu)造方法進行分類,分為惡意分組,應(yīng) 用攻擊及DoS攻擊,抽象出安全流量生成動作。步驟2)攻擊分解,將攻擊分解為若干攻擊 步驟,為每個步驟定義一個安全攻擊狀態(tài),攻擊行為即為一組安全攻擊狀態(tài)跳轉(zhuǎn)序列,表示 為攻擊向量。步驟3)攻擊構(gòu)造,由攻擊向量生成安全攻擊腳本。步驟4)安全流量生成,通 過攻擊引擎執(zhí)行安全攻擊腳本,生成網(wǎng)絡(luò)安全流量。
[0042] 上述方法中,所述安全攻擊狀態(tài)用以進行安全流量生成評估,從而實現(xiàn)完整的攻 擊過程的分析,得出安全攻擊成功和失敗深層報告。安全攻擊狀態(tài)包括安全流量生成動作 以及可選的響應(yīng)判斷。響應(yīng)判斷應(yīng)該包括收集和處理目標實體的響應(yīng),判斷流量生成動作 成功/失敗的結(jié)果。
[0043] 更具體地,在步驟1)的流量分類中,根據(jù)安全流量構(gòu)造方法進行分類,分為惡意 分組攻擊,應(yīng)用攻擊及DoS攻擊,抽象出安全流量生成動作。
[0044] 表 1
[0045]
【權(quán)利要求】
1. 一種用于網(wǎng)絡(luò)安全測試的網(wǎng)絡(luò)安全流量生成方法,其特征在于,包括: 對于已知類型的攻擊,包括以下步驟: 步驟1)流量分類,根據(jù)安全流量構(gòu)造方法進行分類,將網(wǎng)絡(luò)安全流量分為惡意分組、 應(yīng)用攻擊及DoS攻擊,并分別抽象出對應(yīng)的安全流量生成動作; 步驟2)攻擊分解,將攻擊行為分解為若干攻擊步驟,為每個步驟定義一個對應(yīng)的安全 攻擊狀態(tài),對所述若干攻擊步驟分別對應(yīng)的安全攻擊狀態(tài)進行組合,得到對應(yīng)攻擊行為的 一組安全攻擊狀態(tài)跳轉(zhuǎn)序列,并表示為攻擊向量,其中,所述安全攻擊狀態(tài)包括安全流量生 成動作以及可選的響應(yīng)判斷; 步驟3)攻擊構(gòu)造,根據(jù)所述攻擊向量生成安全攻擊腳本; 步驟4)流量生成,通過攻擊引擎執(zhí)行所述安全攻擊腳本,生成網(wǎng)絡(luò)安全流量。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括: 對于未知類型的攻擊或新型攻擊,在獲得流量數(shù)據(jù)的前提下,采用下述步驟生成上述 步驟中的攻擊向量: 步驟21)流量分解,將安全流量分解為若干條網(wǎng)絡(luò)流量序列; 步驟22)數(shù)據(jù)識別,對每條網(wǎng)絡(luò)流量序列提取對應(yīng)的行為特征,構(gòu)造安全攻擊狀態(tài); 步驟23)攻擊構(gòu)造,根據(jù)流量的時間戳序列和所述若干條網(wǎng)絡(luò)流量序列分別對應(yīng)的安 全攻擊狀態(tài)構(gòu)造安全攻擊狀態(tài)跳轉(zhuǎn)序列,并表示為攻擊向量; 進而執(zhí)行上述步驟3)攻擊構(gòu)造和步驟4)攻擊執(zhí)行。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述安全流量生成動作支持構(gòu)造任何格 式的攻擊數(shù)據(jù)及完備的攻擊邏輯,包括下列類型的動作:流量動作、數(shù)據(jù)構(gòu)造和解析動作、 運算和控制動作;所述響應(yīng)判斷包括收集和處理目標實體的響應(yīng),判斷流量生成動作成功 /失敗的結(jié)果。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)每個網(wǎng)絡(luò)攻擊所采用的應(yīng)用協(xié)議的 協(xié)議規(guī)范,按照應(yīng)用的消息交互過程或者按照被模擬的網(wǎng)絡(luò)實體之間的交互過程,分解出 基本流量動作。
5. 根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)要模擬的網(wǎng)絡(luò)攻擊所采用的協(xié)議規(guī) 范中所規(guī)定的消息格式,以及該網(wǎng)絡(luò)攻擊中可能出現(xiàn)的特殊數(shù)據(jù)分組來分解出消息構(gòu)造和 解析動作。
6. 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述運算和控制動作用來進行數(shù)據(jù)運算 和邏輯控制,包括基本算術(shù)、邏輯運算和邏輯控制動作。
7. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述行為特征根據(jù)識別出的協(xié)議類型的 有限狀態(tài)轉(zhuǎn)移自動機的狀態(tài)特征提取,將行為特征表示為流量生成動作,對應(yīng)協(xié)議的有限 狀態(tài)轉(zhuǎn)移自動機對應(yīng)流量的攻擊向量。
8. 根據(jù)權(quán)利要求1所述的方法,其特征在于,如果攻擊為多個時,在通過攻擊引擎執(zhí)行 所述安全攻擊腳本時,創(chuàng)建多個進程或線程并發(fā)執(zhí)行每個攻擊對應(yīng)的安全攻擊腳本。
9. 根據(jù)權(quán)利要求2所述的方法,其特征在于,在所述流量分解步驟中,根據(jù)數(shù)據(jù)流量特 征對所獲得的流量數(shù)據(jù)進行分解。
10. -種網(wǎng)絡(luò)安全流量生成系統(tǒng),其特征在于,對于已知類型的攻擊,所述系統(tǒng)包括: 流量分類模塊,用于根據(jù)安全流量構(gòu)造方法進行分類,將網(wǎng)絡(luò)安全流量分為惡意分組、 應(yīng)用攻擊及DoS攻擊,并分別抽象出對應(yīng)的安全流量生成動作; 攻擊分解模塊,用于將攻擊行為分解為若干攻擊步驟,為每個步驟定義一個對應(yīng)的安 全攻擊狀態(tài),對所述若干攻擊步驟分別對應(yīng)的安全攻擊狀態(tài)進行組合,得到對應(yīng)攻擊行為 的一組安全攻擊狀態(tài)跳轉(zhuǎn)序列,并表示為攻擊向量,其中,所述安全攻擊狀態(tài)包括安全流量 生成動作以及可選的響應(yīng)判斷; 攻擊構(gòu)造模塊,用于根據(jù)所述攻擊向量生成安全攻擊腳本; 流量生成模塊,用于通過攻擊引擎執(zhí)行所述安全攻擊腳本,生成網(wǎng)絡(luò)安全流量。
【文檔編號】H04L12/26GK104219221SQ201410238904
【公開日】2014年12月17日 申請日期:2014年5月30日 優(yōu)先權(quán)日:2014年5月30日
【發(fā)明者】郭瑞 申請人:郭瑞