[發明專利]一種操作系統內核模糊測試種子調度與評估方法在審
| 申請號: | 202310351993.6 | 申請日: | 2023-04-04 |
| 公開(公告)號: | CN116303082A | 公開(公告)日: | 2023-06-23 |
| 發明(設計)人: | 施鶴遠;羅正雄;梁鍇;胡超;沈煜恒;施榮華 | 申請(專利權)人: | 中南大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F18/23;G06N3/084 |
| 代理公司: | 長沙軒榮專利代理有限公司 43235 | 代理人: | 李崇章 |
| 地址: | 410000 湖南*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 操作系統 內核 模糊 測試 種子 調度 評估 方法 | ||
1.一種操作系統內核模糊測試種子調度與評估方法,其特征在于,包括:
步驟1,利用模糊測試工具讀取初始語料庫;
步驟2,利用模糊測試工具隨機選擇語料庫中的種子并將其加入輸入種子池;
步驟3,使用測試工具選擇輸入種子池中的種子并對其執行變異操作生成測試用例;
步驟4,操作系統執行測試用例并收集測試用例覆蓋到的內核位置;
步驟5,判斷操作系統在執行過程中是否產生了異常狀態,若是,則執行步驟6,若否,則執行步驟7;
步驟6,將測試用例作為新種子加入輸出種子池中;
步驟7,判斷測試用例在執行過程中是否在多層級覆蓋率指標評估下出現新增覆蓋的情況,若是,則執行步驟8,若否,則執行步驟9;
步驟8,將測試用例作為新種子加入輸入種子池中;
步驟9,丟棄該測試用例;
步驟10,判斷模糊測試工具是否接收到測試結束指令,若是,則執行步驟11,若否,則執行步驟12;
步驟11,模糊測試工具在接收到測試結束指令之后,結束測試并輸出當前測試過程中維護更新的輸出種子池;
步驟12,根據多層級覆蓋率指標對輸入種子池中的種子進行聚類分析并將輸入種子池構建為一棵多層級樹;
步驟13,將種子調度與評估過程建模為一個多臂老虎機模型,再根據改進的置信區間上界算法改進種子調度與評估策略;
步驟14,根據改進的種子調度與評估策略選擇下一個種子并執行變異操作生成測試用例,然后返回步驟4重新循環執行上述過程。
2.根據權利要求1所述的方法,其特征在于,所述多層級覆蓋率指標包括函數覆蓋率、代碼塊覆蓋率和邊覆蓋率。
3.根據權利要求2所述的方法,其特征在于,所述步驟7具體包括:
步驟7.1,定義覆蓋空間Γ,其中,所述覆蓋空間包括執行內核程序所覆蓋的函數集合ΓF,執行內核程序所覆蓋代碼塊集合ΓB,執行內核程序所覆蓋的邊集合ΓE;
步驟7.2,定義單一覆蓋率指標其中表示內核程序庫,表示測試用例集合;
步驟7.3,利用單一覆蓋率指標C,構造多層級覆蓋率指標其中,Cn~C1,...,Cn;
步驟7.4,將測試用例I輸入至內核程序P中,并利用多層級覆蓋率指標Cn進行評估獲得度量結果M1,...,Mn,度量結果生成過程如下所示:
M1,...,Mn←RunWithInstrument(P,I,Cn)
其中,測試用例內核程序度量結果M∈Γ*;
步驟7.5,將此次度量結果Mt←M1∪...∪Mn與已保存的度量結果M*進行比較,若則返回無新增覆蓋,否則返回出現新增覆蓋,且將此次度量結果加入已保存的度量結果中M*←M*∪Mt。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中南大學,未經中南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310351993.6/1.html,轉載請聲明來源鉆瓜專利網。





