一個符號執(zhí)行工具的C++語言擴展
發(fā)布時間:2022-01-01 21:04
當今世界,軟件已經(jīng)在我們的生活和生產(chǎn)中發(fā)揮著基礎性的作用。與其重要性相伴的,是人類對軟件安全日益增加的重視。對于那些安全攸關的大型軟件系統(tǒng),為了保證其安全可靠,已經(jīng)有各種各樣的方法被發(fā)明出來用以避免由此帶來的損失。符號執(zhí)行是一種在特定領域十分有效的用來提高軟件質(zhì)量的方法。符號執(zhí)行以對變量的約束代替具體數(shù)值對程序進行模擬執(zhí)行,用相對低的代價達到較高的路徑覆蓋率,以自動化的生成測試例以及搜尋程序中的缺陷。ShapeChecker是一個面向C語言的符號執(zhí)行分析器,利用Clang作為前端,對由源代碼編譯得到的LLVM中間表示進行符號執(zhí)行分析,可以找出程序中諸如訪問越界、懸垂指針和算術溢出這樣的錯誤。作為一種基礎性的編程語言,由于其使用領域的敏感性和相對其他主流編程語言的脆弱性,C++一直是靜態(tài)分析軟件所關注的重點。在本文中,為了使ShapeChecker分析器能夠?qū)++語言的程序進行分析,我們對其提出了一系列修改和擴展,包含:·一組在符號執(zhí)行過程中引入標記和使用類型信息的方法,使用類型信息輔助分析的過程;·一組對ShapeChecker斷言語言和執(zhí)行狀態(tài)的擴展,使其能夠支持對包含異常處理特性...
【文章來源】:中國科學技術大學安徽省 211工程院校 985工程院校
【文章頁數(shù)】:76 頁
【學位級別】:碩士
【部分圖文】:
圖4.1異常對象的結(jié)構(gòu)??
【參考文獻】:
期刊論文
[1]C程序分析工具中程序切片的設計與實現(xiàn)[J]. 蔣剛,李兆鵬. 小型微型計算機系統(tǒng). 2018(03)
[2]C程序精確形狀分析中的規(guī)范語言設計[J]. 朱玲,李兆鵬,梁家彪,鄧維. 小型微型計算機系統(tǒng). 2016(04)
[3]支持形狀分析的符號執(zhí)行引擎的設計與實現(xiàn)[J]. 梁家彪,李兆鵬,朱玲,沈咸飛. 計算機科學. 2016(03)
本文編號:3562842
【文章來源】:中國科學技術大學安徽省 211工程院校 985工程院校
【文章頁數(shù)】:76 頁
【學位級別】:碩士
【部分圖文】:
圖4.1異常對象的結(jié)構(gòu)??
【參考文獻】:
期刊論文
[1]C程序分析工具中程序切片的設計與實現(xiàn)[J]. 蔣剛,李兆鵬. 小型微型計算機系統(tǒng). 2018(03)
[2]C程序精確形狀分析中的規(guī)范語言設計[J]. 朱玲,李兆鵬,梁家彪,鄧維. 小型微型計算機系統(tǒng). 2016(04)
[3]支持形狀分析的符號執(zhí)行引擎的設計與實現(xiàn)[J]. 梁家彪,李兆鵬,朱玲,沈咸飛. 計算機科學. 2016(03)
本文編號:3562842
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3562842.html
最近更新
教材專著