[發明專利]模糊測試的種子處理、模糊測試方法、系統和存儲介質有效
| 申請號: | 202010723505.6 | 申請日: | 2020-07-24 |
| 公開(公告)號: | CN111881039B | 公開(公告)日: | 2022-04-26 |
| 發明(設計)人: | 魯輝;張鑫國;田志宏;殷麗華;孫彥斌;蘇申;楊佳庚 | 申請(專利權)人: | 廣州大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 廣州嘉權專利商標事務所有限公司 44205 | 代理人: | 胡輝 |
| 地址: | 510006 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 模糊 測試 種子 處理 方法 系統 存儲 介質 | ||
本發明公開了一種模糊測試的種子處理、模糊測試方法、系統和存儲介質,應用在軟件測試技術中,其中種子處理方法包括獲取各程序塊的靜態權重;在模糊測試中對各程序塊的運行次數進行統計,在每次模糊測試中根據所述統計中各程序塊的運行次數得到各程序塊的動態權重;根據所述靜態權重和動態權重對種子庫中的種子進行評分;選擇種子進行變異,其中,獲得測試用例,種子評分越高被選擇的概率越高;統計代碼覆蓋率,根據測試用例的代碼覆蓋率將測試用例更新到種子庫中。本方案可以提升代碼覆蓋率,以充分挖掘軟件漏洞。
技術領域
本發明涉及軟件測試技術,尤其是一種模糊測試的種子處理、模糊測試方法、系統和存儲介質。
背景技術
隨著軟件規模的飛速增長,導致軟件復雜性不斷提高,軟件內漏洞數目也在不斷增多。由于軟件復雜性的提高,漏洞藏得越來越深,導致對漏洞的挖掘的工作量越來越大。為了降低挖掘漏洞的工作量,人們開始使用模糊測試這種自動化方式來取代人工挖掘漏洞。所謂的模糊測試就是不斷的生成一些隨機的輸入作為測試用例不斷的測試程序,根據程序運行情況調節測試用例的生成。依據這一原理人們開發出許多模糊測試工具。但由于模糊測試工具afl的成功,所以目前普遍認為模糊測試中被測試程序覆蓋率對模糊測試性能提高有較強的引導。有研究表明當代碼覆蓋率增加1%,發現bug的百分比就會增加0.92%。
針對如何提高模糊測試工具測試被測試程序覆蓋率,國內外提出了許多方案。比如將模糊測試工具和符號執行相結合,當模糊測試工具面對一些比較復雜的判斷條件無法靠隨機的方式覆蓋的時候,符號執行工具將對該條件求解獲得可以覆蓋該判斷條件及之后代碼的種子,從而提高代碼覆蓋率。或者將模糊測試工具和污點分析相結合,同樣是面對比較復雜的判斷條件,通過污點分析獲知輸入的哪些部分與判斷條件有關,然后只變異污點分析獲知與判斷條件相關的輸入部分以覆蓋判斷條件,提高代碼覆蓋率。再或者改變覆蓋率的衡量方式,在afl中使用了邊覆蓋率來衡量覆蓋率,在模糊測試工具libfuzz中使用了塊覆蓋率來衡量覆蓋率。
相關技術要不是太重,或者對提升模糊測試工具測試被測試程序的覆蓋率并沒有很好的指導。現有技術要不是太重,或者對提升模糊測試工具測試被測試程序的覆蓋率并沒有很好的指導。例如符號執行技術需要將輸入換成符號,跟隨程序模擬執行,直到約束處條件建立方程求解。但程序規模越大,建立方程越困難,同時對于一些特定的內核程序難以模擬。符號執行求解越困難。再者使用污點分析技術需要建立污點標簽和污染傳播規則,這不僅需要對所有的被污染指令進行重新解釋以添加污染操作,還需要存儲大量的污點標簽。一方面導致原被測試程序運行時間增長,還使得模糊測試工具申請較大的空間存儲污點標簽。而模糊測試只是簡單對種子進行隨機變異然后交給被測試程序執行??梢钥闯錾鲜龅募夹g的過程遠遠重于模糊測試工具的運行,拖慢模糊測試工具的速度。而簡單的選擇塊覆蓋率或邊覆蓋率為標準對被測試程序覆蓋率,導致覆蓋率信息大量的缺失,很難對模糊測試工具提升被測試程序的代碼覆蓋率有好的幫助。
發明內容
為解決上述技術問題的至少之一,本發明的目的在于:提供一種模糊測試的種子處理、模糊測試方法、系統和存儲介質,以提高被測程序的代碼覆蓋率。
第一方面,本發明實施例提供了:
一種模糊測試的種子處理方法,包括以下步驟:
獲取各程序塊的靜態權重;
在模糊測試中對各程序塊的運行次數進行統計,在每次模糊測試中根據所述統計中各程序塊的運行次數得到各程序塊的動態權重;
根據所述靜態權重和動態權重對種子庫中的種子進行評分;
選擇種子進行變異,其中,獲得測試用例,種子評分越高被選擇的概率越高;
統計代碼覆蓋率,根據測試用例的代碼覆蓋率將測試用例更新到種子庫中。
進一步,所述獲取各程序塊的靜態權重,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣州大學,未經廣州大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010723505.6/2.html,轉載請聲明來源鉆瓜專利網。





