System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請屬于模糊測試,尤其涉及基于格式約束與煙花算法的智能模糊檢測方法及設備。
技術介紹
1、模糊測試是一種自動化漏洞挖掘技術,模糊測試的核心思想是根據一定的規則,自動或半自動生成的隨機數據,然后將產生的數據輸入到程序中,并監視程序是否有異常出現,以發現可能的程序錯誤,如內存泄漏、系統崩潰、未處理的異常等。
2、現有技術中,模糊測試生成的隨機數據中,大部分可能是不符合被測系統輸入格式的無效數據,這些無效輸入數據無法觸發系統的有效代碼路徑,導致測試效率低下。模糊測試缺乏對輸入生成的有效指導,無法根據被測系統的特點生成有針對性的輸入數據,使得測試過程具有較大的盲目性,也很難確保能夠覆蓋到所有的測試場景和邊界條件。
3、綜上所述,使用模糊測試檢測系統漏洞時,存在測試效率低和覆蓋率低的問題。
技術實現思路
1、本申請實施例提供了一種基于格式約束與煙花算法的智能模糊檢測方法及設備,可以解決相關技術中使用模糊測試檢測系統漏洞時,存在測試效率低和覆蓋率低的問題。
2、第一方面,本申請實施例提供了一種基于格式約束與煙花算法的智能模糊檢測方法,包括:
3、獲取第一輸入數據;
4、依次基于煙花算法和格式約束,對所述第一輸入數據執行對應的操作,得到第一終止輸入數據;其中,所述格式約束用于約束輸入數據的格式,所述煙花算法用于生成新的輸入數據;
5、依次基于格式約束和煙花算法,對所述第一輸入數據執行對應的操作,得到第二終止輸入數據;
>6、將所述第一終止輸入數據和所述第二終止輸入數據輸入目標系統,并對所述目標系統進行模糊測試,得到測試結果。
7、本申請實施例中上述的技術方案,至少具有如下技術效果:
8、本申請提供的基于格式約束與煙花算法的智能模糊檢測方法,先通過獲取第一輸入數據,然后依次基于煙花算法和格式約束,對第一輸入數據執行對應的操作,得到第一終止輸入數據,再依次基于格式約束和煙花算法,對第一輸入數據執行對應的操作,得到第二終止輸入數據,最后將第一終止輸入數據和第二終止輸入數據輸入目標系統,并對目標系統進行模糊測試,得到測試結果。該方法通過格式約束減少了無效數據的生成,從而提高了測試效率和準確率;通過煙花算法生成新的輸入數據,可以探索更廣泛的數據空間,從而提高模糊測試的有效性。該方法中包含兩條數據處理路徑,分別基于“先煙花算法后格式約束”和“先格式約束后煙花算法”對數據進行處理,有助于在不同順序下生成的輸入數據進行對比和分析,從而覆蓋更多的測試場景,進一步提高測試的全面性。該方法通過將兩種不同處理順序下生成的終止輸入數據輸入目標系統進行模糊測試,可以更全面地探測系統在不同輸入條件下的表現,發現潛在的安全問題或性能瓶頸,增強系統的魯棒性。
9、在第一方面的一種可能的實現方式中,所述依次基于煙花算法和格式約束,對所述第一輸入數據執行對應的操作,得到第一終止輸入數據,包括:
10、第一爆炸操作:利用所述煙花算法對所述第一輸入數據執行爆炸操作,生成第二輸入數據;
11、第一變異操作:基于所述格式約束,對所述第二輸入數據進行變異操作,得到第三輸入數據;
12、第一選擇操作:判斷所述第三輸入數據是否滿足終止條件,得到第一判斷結果;當所述第一判斷結果指示所述第三輸入數據不滿足所述終止條件,根據評估函數,評估并選擇所述第三輸入數據,得到第四輸入數據;
13、將所述第四輸入數據輸入到所述煙花算法中,迭代所述第一爆炸操作、所述第一變異操作和所述第一選擇操作,直至滿足所述終止條件,將滿足所述終止條件的輸入數據確定為所述第一終止輸入數據。
14、在第一方面的一種可能的實現方式中,所述利用所述煙花算法對所述第一輸入數據執行爆炸操作,生成第二輸入數據,包括:
15、計算所述煙花算法的爆炸半徑以及爆炸火花數量;
16、基于所述爆炸半徑和爆炸火花數量,對所述第一輸入數據執行爆炸操作,生成爆炸數據;
17、對所述爆炸數據進行數據評估和數據選擇,得到所述第二輸入數據。
18、在第一方面的一種可能的實現方式中,所述基于所述格式約束,對所述第二輸入數據進行變異操作,得到第三輸入數據,包括:
19、獲取所述目標系統的格式規則;
20、根據所述目標系統的格式規則和所述格式約束,對所述第二輸入數據進行變異操作,得到變異數據;
21、判斷所述變異數據是否符合所述目標系統的格式規則,得到變異判斷結果;
22、當所述變異判斷結果指示所述變異數據符合所述目標系統的格式規則,確定所述變異數據為所述第三輸入數據。
23、在第一方面的一種可能的實現方式中,所述根據所述目標系統的格式規則和所述格式約束,對所述第二輸入數據進行變異操作,得到變異數據,包括:
24、根據所述目標系統的格式規則,對所述第二輸入數據進行格式約束,生成約束數據;
25、根據變異強度計算公式,計算所述約束數據的變異強度,得到變異強度信息;其中,所述變異強度計算公式用于計算所述約束數據的變異強度;
26、根據生成樣本數量計算公式,計算所述約束數據的生成樣本數量,得到生成樣本數量信息;其中,所述生成樣本數量計算公式用于計算所述約束數據的生成樣本數量;
27、基于所述變異強度信息和所述生成樣本數量信息,利用變異算法對所述約束數據進行變異操作,得到所述變異數據。
28、在第一方面的一種可能的實現方式中,所述根據評估函數,評估并選擇所述第三輸入數據,得到第四輸入數據,包括:
29、根據所述評估函數,計算所述第三輸入數據中每個樣本數據的評估值,得到評估值集合;
30、基于排序規則,將所述評估值集合中的每個評估值對應的樣本數據進行排序,并選擇評估值大于終止閾值的n個樣本數據,得到所述第四輸入數據;其中,所述排序規則為由高評估值到低評估值排序。
31、在第一方面的一種可能的實現方式中,所述依次基于所述格式約束和所述煙花算法,對所述第一輸入數據執行對應的操作,得到第二終止輸入數據,包括:
32、第二變異操作:基于所述格式約束,對所述第一輸入數據進行變異操作,得到第一樣本數據;
33、第二爆炸操作:利用所述煙花算法對所述第一樣本數據進行爆炸操作,得到第二樣本數據;
34、第二選擇操作:判斷所述第二樣本數據是否滿足所述終止條件,得到第二判斷結果;當所述第二判斷結果指示所述第二樣本數據不滿足所述終止條件,根據所述評估函數,評估并選擇所述第二樣本數據,得到第三樣本數據;
35、對所述第三樣本數據進行格式約束,迭代所述第二變異操作、所述第二爆炸操作和所述第二選擇操作,直至滿足所述終止條件,將滿足所述終止條件的輸入數據確定為所述第二終止輸入數據。
36、在第一方面的一種可能的實現方式中,所述將所述第一終止輸入數據和所述本文檔來自技高網...
【技術保護點】
1.一種基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,包括:
2.如權利要求1所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述依次基于煙花算法和格式約束,對所述第一輸入數據執行對應的操作,得到第一終止輸入數據,包括:
3.如權利要求2所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述利用所述煙花算法對所述第一輸入數據執行爆炸操作,生成第二輸入數據,包括:
4.如權利要求2所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述基于所述格式約束,對所述第二輸入數據進行變異操作,得到第三輸入數據,包括:
5.如權利要求4所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述根據所述目標系統的格式規則和所述格式約束,對所述第二輸入數據進行變異操作,得到變異數據,包括:
6.如權利要求2所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述根據評估函數,評估并選擇所述第三輸入數據,得到第四輸入數據,包括:
7.如權利要求2所述的基于格式約束與煙花算法的
8.如權利要求1所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述將所述第一終止輸入數據和所述第二終止輸入數據輸入目標系統,并對所述目標系統進行模糊測試,得到測試結果,包括:
9.如權利要求8所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述方法還包括:
10.一種基于格式約束與煙花算法的智能模糊檢測設備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現如權利要求1至9任一項所述的方法。
...【技術特征摘要】
1.一種基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,包括:
2.如權利要求1所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述依次基于煙花算法和格式約束,對所述第一輸入數據執行對應的操作,得到第一終止輸入數據,包括:
3.如權利要求2所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述利用所述煙花算法對所述第一輸入數據執行爆炸操作,生成第二輸入數據,包括:
4.如權利要求2所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述基于所述格式約束,對所述第二輸入數據進行變異操作,得到第三輸入數據,包括:
5.如權利要求4所述的基于格式約束與煙花算法的智能模糊檢測方法,其特征在于,所述根據所述目標系統的格式規則和所述格式約束,對所述第二輸入數據進行變異操作,得到變異數據,包括:
6.如權利要求2所述的基于格式約束與煙花...
【專利技術屬性】
技術研發人員:杜磊,游明卓,羅寧,田永界,王仕衛,
申請(專利權)人:江西智慧云測安全檢測中心股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。