請用此 Handle URI 來引用此文件:
http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/80773| 標題: | yFuzz: 資料狀態驅動式模糊測試 yFuzz: Data-Driven Fuzzing |
| 作者: | Yuan Chang 張元 |
| 指導教授: | 蕭旭君(Hsu-Chun Hsiao) |
| 關鍵字: | 資料狀態驅動式模糊測試, Data-Driven Fuzzing, |
| 出版年 : | 2021 |
| 學位: | 碩士 |
| 摘要: | 覆蓋率引導式模糊測試是當今最成功的主流模糊測試技術,已經在真實世界無數專案程式中展現其自動化挖掘漏洞的能力。然而,覆蓋率引導式模糊測試技術仍面臨著本質上的限制:即使覆蓋了漏洞存在的代碼,也難以觸發漏洞。這是由於現今主流覆蓋率引導式模糊測試僅以代碼覆蓋率作為引導模糊測試的指標,專注於可達性上。事實上,要成功發現漏洞,程式不僅需要能執行達到漏洞代碼,亦需要滿足觸發條件。不幸的是,許多觸發漏洞至關重要的條件資訊無法呈現在代碼覆蓋率中。因此,代碼覆蓋率引導式模糊測試忽略了觸發漏洞條件的探索,導致覆蓋到許多漏洞存在的代碼區域,卻因為無法觸發漏洞而未能發現該漏洞。在這篇論文中,我們提出了一個新模糊測試技術:資料狀態驅動式模糊測試,透過搜集分析具有造成漏洞潛力的變數資料狀態,結合變異策略,驅動模糊器有效地探索垂直於程式路徑的程式狀態搜尋空間維度,並提出一個定向灰箱模糊測試技術,在執行時期分析變數極端值並回饋給模糊器,引導模糊器探索至易觸發漏洞的目標程式狀態,我們將方法實作出模糊器原型 yFuzz。我們的實驗結果顯示,yFuzz 有效地大幅增加程式狀態覆蓋率相較於最先進的代碼覆蓋率引導式模糊器 AFL++,提升覆蓋到滿足漏洞觸發條件的程式狀態機會,結果也證實定向灰箱模糊測試技術可以成功地引導模糊器探索至目標程式狀態,進一步增強漏洞挖掘能力。在許多已被大量模糊測試的真實世界程式中,yFuzz仍能挖掘出位在路徑淺層的漏洞,意即容易覆蓋卻難以觸發的漏洞,更印證了 yFuzz的漏洞觸發能力,其中四個漏洞已被分配 CVE 編號。 |
| URI: | http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/80773 |
| DOI: | 10.6342/NTU202103659 |
| 全文授權: | 同意授權(限校園內公開) |
| 顯示於系所單位: | 資訊工程學系 |
文件中的檔案:
| 檔案 | 大小 | 格式 | |
|---|---|---|---|
| U0001-1210202113464300.pdf 授權僅限NTU校內IP使用(校園外請利用VPN校外連線服務) | 691.74 kB | Adobe PDF |
系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。
