[發明專利]基于路徑感知變異策略的模糊測試方法有效
| 申請號: | 201911343779.6 | 申請日: | 2019-12-24 |
| 公開(公告)號: | CN111191245B | 公開(公告)日: | 2022-06-17 |
| 發明(設計)人: | 魏強;李錫星;武澤慧 | 申請(專利權)人: | 中國人民解放軍戰略支援部隊信息工程大學 |
| 主分類號: | G06F21/57 | 分類號: | G06F21/57;G06F11/36 |
| 代理公司: | 鄭州大通專利商標代理有限公司 41111 | 代理人: | 張立強 |
| 地址: | 450000 河*** | 國省代碼: | 河南;41 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 路徑 感知 變異 策略 模糊 測試 方法 | ||
本發明提供一種基于路徑感知變異策略的模糊測試方法。該方法包括:步驟1:對插樁后的測試程序進行檢測,判斷是否檢測到魔術字節:若是,則執行步驟2;步驟2:若檢測到魔術字節,則在共享內存中記錄;步驟3:繼續對插樁后的測試程序進行檢測,采用基于啟發式的方法判斷是否突破魔術字節:若是,則將該魔術字節及其偏移量加入全局映射;若否,則執行步驟4;步驟4:繼續對插樁后的測試程序進行檢測,判斷是否經過magic變異:若是,則調用原始變異策略進行變異,返回步驟1;若否,則調用魔術字典策略進行變異,返回步驟1。本發明擺脫了依靠動態分析技術突破檢查點過程中所帶來的巨大開銷問題,且可提升模糊測試效率。
技術領域
本發明涉及計算軟件安全測試技術領域,尤其涉及一種基于路徑感知變異策略的模糊測試方法。
背景技術
模糊測試(Fuzzing)是一種自動化軟件測試技術,通過將半有效數據作為輸入提供給測試程序并監測程序是否出現異常的一種測試方法。由于其簡單、高效,因此被廣泛應用于各大軟件廠商以及開源軟件開發測試中,且該技術已在各類軟件中發現大量漏洞。但隨著軟件安全測試工具的廣泛應用及代碼安全開發意識的提升,漏洞通常出現在代碼結構更為復雜的位置。現有模糊測試在挖掘代碼結構相對簡單的代碼漏洞時效果顯著,但是面對結構復雜的代碼時往往難以捕獲到異常。其中魔術字節檢查是阻礙深層測試的重要因素之一。
目前主流的模糊測試器中采用的變異策略主要分為bitflip、arithmetic、interest、dictionary、havoc、splice六種,其中前四種變異方式稱為確定性策略,后兩種則稱為隨機性策略。雖然已有的變異策略已經十分全面,但由于缺乏程序感知導致在某些程序的測試中會相對低效。如圖5所示的代碼1-1示例,程序崩潰點在一個魔術字節比較之后,如果想觸發程序崩潰,則必須準確變異樣本中的某些字節,可能為連續的四個字節甚至更多的字節。對于目前的變異策略而言,簡單的翻轉、運算等策略很難突破此處檢查。而對于字典策略,雖然可以通過替換實現突破,但由于沒有準確的值進行替換,因此該策略在應對這種情況下也無法實現突破。
針對上述問題,已有相關研究提出不同的方法實現更高效的探索。AFLFast假設這些將以低頻路徑出現,并對觸發低頻路徑的種子側重于應用havoc策略以實現更多低頻路徑分支的探索;Driller使用符號執行來產生這些魔術字節;Steelix為AFL添加了靜態分析階段、額外的插裝和突變,以便在多字節比較中的某字節周圍徹底搜索其他相關字節。
但這些技術或使用開銷過大的分析技術或依概率提高,且上述技術的優勢在于面對樣本特殊字節非直接比較的情況,即字節經過一定的轉換后作為比較對象。而對于樣本字節的直接比較情況,上述技術較傳統的字典策略優勢并不明顯。同時,針對敏感字節變異問題,Fairfuzz修改變異策略使樣本保持稀有分支的觸發,防止對關鍵字節的變異。但該方法不能防止后續對其他樣本在特定字節處的變異。且對于字節固定偏移的情況,后續樣本的變異過程也會浪費一定的計算資源。因此在該問題上還缺少一定完善的解決方案。
發明內容
為解決現有的模糊測試方法存在開銷過大或者依概率提高,且針對樣本字節直接比較情況效果并不明顯的問題,本發明提供一種基于路徑感知變異策略的模糊測試方法。
本發明提供一種基于路徑感知變異策略的模糊測試方法,包括:
步驟1:對插樁后的測試程序進行檢測,判斷是否檢測到魔術字節:若是,則執行步驟2;所述插樁后的測試程序包括:利用覆蓋率插樁方式進行插樁得到的測試程序,利用原始變異策略進行變異后得到的測試程序,以及利用魔術字典策略進行變異后的測試程序;
步驟2:若檢測到魔術字節,則在共享內存中記錄;
步驟3:繼續對插樁后的測試程序進行檢測,采用基于啟發式的方法判斷是否突破魔術字節:若是,則將該魔術字節及其偏移量加入全局映射;若否,則執行步驟4;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍戰略支援部隊信息工程大學,未經中國人民解放軍戰略支援部隊信息工程大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911343779.6/2.html,轉載請聲明來源鉆瓜專利網。





