堆分配大小可控的檢測與分析
本文選題:漏洞分析 + 符號執(zhí)行; 參考:《清華大學學報(自然科學版)》2015年05期
【摘要】:不當內存操作一直是引發(fā)軟件漏洞的主要原因之一。堆分配大小可控(CMA)是指當動態(tài)內存分配的關鍵參數可以被外界輸入控制時,惡意用戶可以通過精心構造輸入數據導致非預期的內存分配。該文討論了CMA可能引發(fā)的相關安全問題和CMA的檢測方法。該CMA檢測方法主要通過結合靜態(tài)路徑分析和路徑導向符號執(zhí)行技術的優(yōu)勢,系統(tǒng)地檢測目標代碼中的CMA問題。在經典的符號執(zhí)行引擎KLEE的基礎上,實現了CMA檢測原型系統(tǒng)SCAD;通過對Linux系統(tǒng)常用的工具程序Coreutils進行測試,SCAD發(fā)現了10個CMA相關的問題,其中3個屬于未公開漏洞。實驗結果表明:SCAD的導向路徑搜索算法與KLEE提供的8個路徑搜索算法相比具有明顯優(yōu)勢;針對內存分配相關的代碼,SCAD的導向符號執(zhí)行相比傳統(tǒng)的符號執(zhí)行引擎具有更高的代碼覆蓋率。
[Abstract]:Improper memory operation has been one of the main causes of software vulnerabilities. When the key parameters of dynamic memory allocation can be controlled by external input, malicious users can input data carefully to lead to unexpected memory allocation. In this paper, the related security problems caused by CMA and the detection method of CMA are discussed. The CMA detection method systematically detects the CMA problem in the target code by combining the advantages of static path analysis and path-oriented symbol execution technology. Based on the classical symbol execution engine (KLEE), the prototype system of CMA detection is implemented, and 10 CMA related problems are found by testing the common tool program Coreutils in Linux system, three of which are undisclosed vulnerabilities. The experimental results show that the guided path search algorithm proposed by the President SCAD has obvious advantages over the eight path search algorithms provided by KLEE. Compared with the traditional symbol execution engine, SCAD has higher code coverage than the traditional symbol execution engine.
【作者單位】: 清華大學計算機科學與技術系;北方電子設備研究所;解放軍電子工程學院網絡工程系;
【基金】:國家自然科學基金面上項目(61170050) 核高基重大專項(2012ZX01039-004)
【分類號】:TP311.1;TP333
【參考文獻】
相關期刊論文 前1條
1 吳世忠;郭濤;董國偉;王嘉捷;;軟件漏洞分析技術進展[J];清華大學學報(自然科學版);2012年10期
【共引文獻】
相關期刊論文 前10條
1 萬勇兵;徐中偉;梅萌;;一種符號化執(zhí)行的實時系統(tǒng)一致性測試生成方法[J];電子學報;2013年11期
2 郭曦;王盼;;基于動態(tài)協(xié)同雙向映射的相似執(zhí)行路徑生成方法[J];電子學報;2014年11期
3 王志;賈春福;劉偉杰;王曉初;張海寧;于曉旭;陳鋒;;一種抵抗符號執(zhí)行的路徑分支混淆技術[J];電子學報;2015年05期
4 牛偉納;丁雪峰;劉智;張小松;;基于符號執(zhí)行的二進制代碼漏洞發(fā)現[J];計算機科學;2013年10期
5 張仕金;尚趙偉;;基于區(qū)間集的Cppcheck數組邊界缺陷檢測[J];計算機應用;2013年11期
6 曹琰;歐陽永基;魏強;王清賢;;基于混合輸入的環(huán)境交互問題研究[J];計算機應用研究;2013年11期
7 陳冬火;劉全;;基于符號執(zhí)行和LTL公式重寫的測試用例產生方法[J];計算機研究與發(fā)展;2013年12期
8 張亞軍;李舟軍;廖湘科;蔣瑞成;李海峰;;自動化白盒模糊測試技術研究[J];計算機科學;2014年02期
9 趙躍華;闞俊杰;;基于符號執(zhí)行的測試數據生成方法的研究與設計[J];計算機應用與軟件;2014年02期
10 陸萍萍;李慧;穆文思;韓青;;基于混合符號執(zhí)行的Fuzzing測試技術[J];計算機應用研究;2014年07期
相關會議論文 前1條
1 劉峻宇;李強;余祥;何海洋;;基于符號執(zhí)行的指揮信息系統(tǒng)軟件缺陷檢測技術[A];2014第二屆中國指揮控制大會論文集(上)[C];2014年
相關博士學位論文 前10條
1 曹琰;面向軟件脆弱性分析的并行符號執(zhí)行技術研究[D];解放軍信息工程大學;2013年
2 劉智;二進制代碼級的漏洞攻擊檢測研究[D];電子科技大學;2013年
3 陳廳;動態(tài)程序分析技術在軟件安全領域的研究[D];電子科技大學;2013年
4 杜乃喬;過程感知信息系統(tǒng)的負載生成技術[D];清華大學;2012年
5 馬超;操作系統(tǒng)設備驅動可靠性研究[D];清華大學;2013年
6 楊歡;協(xié)議漏洞挖掘及Android平臺惡意應用檢測技術研究[D];西安電子科技大學;2014年
7 吳迪;基于加權相似度的序列聚類算法研究[D];燕山大學;2014年
8 邢穎;測試用例自動生成的分支限界算法及實驗研究[D];北京郵電大學;2014年
9 董玉坤;空指針引用缺陷充分性檢測技術研究[D];北京郵電大學;2014年
10 安靖;動態(tài)符號執(zhí)行關鍵技術研究[D];北京郵電大學;2014年
相關碩士學位論文 前10條
1 王國好;細粒度內存訪問跟蹤模型研究與應用[D];解放軍信息工程大學;2013年
2 張莉英;百貨公司倉庫管理系統(tǒng)的設計與實現[D];電子科技大學;2013年
3 王士濤;面向路徑的測試數據生成方法的研究[D];湖南大學;2013年
4 楊靜;編譯器的語法分析測試用例生成方法研究[D];華中科技大學;2013年
5 萬季;嵌入式軟件缺陷檢測的測試用例生成與排序研究[D];杭州電子科技大學;2014年
6 董路路;OpenFlow協(xié)議可擴展性建模方法研究及測試例生成[D];內蒙古大學;2014年
7 李楨;可信軟件并發(fā)正確性測試技術的研究與應用[D];廣東工業(yè)大學;2014年
8 邵巳航;基于過程間動態(tài)符號執(zhí)行的自動測試工具設計與實現[D];華東師范大學;2014年
9 方昭潭;基于CIL的運行時監(jiān)控設計與實現[D];華東師范大學;2014年
10 劉春宏;分段式混合執(zhí)行測試方法的研究[D];華東師范大學;2014年
【二級參考文獻】
相關期刊論文 前8條
1 嚴俊;郭濤;阮輝;玄躋峰;;JUTA:一個Java自動化單元測試工具[J];計算機研究與發(fā)展;2010年10期
2 忽朝儉;李舟軍;郭濤;時志偉;;寫污點值到污點地址漏洞模式檢測[J];計算機研究與發(fā)展;2011年08期
3 熊浩;晏海華;郭濤;黃永剛;郝永樂;李舟軍;;代碼相似性檢測技術:研究綜述[J];計算機科學;2010年08期
4 梅宏;王千祥;張路;王戟;;軟件分析技術進展[J];計算機學報;2009年09期
5 吳世忠;;信息安全漏洞分析回顧與展望[J];清華大學學報(自然科學版);2009年S2期
6 陳石坤;李舟軍;黃永剛;邢建英;;一種基于SAT的C程序緩沖區(qū)溢出漏洞檢測技術[J];清華大學學報(自然科學版);2009年S2期
7 易錦;郭濤;黃永剛;張普含;;基于語言等價關系化簡Büchi自動機的算法[J];清華大學學報(自然科學版);2009年S2期
8 程紹銀;蔣凡;王嘉捷;張曉菲;;一種自動生成軟件缺陷輸入的方法[J];中國科學技術大學學報;2010年02期
【相似文獻】
相關期刊論文 前10條
1 洪宇;陳光;于見平;韓柯;;處理符號執(zhí)行中數組元素混淆的一種新方法[J];計算機應用;2005年S1期
2 過辰楷;姬秀娟;許靜;;基于分支混淆算法的符號執(zhí)行技術[J];計算機科學;2012年09期
3 劉杰;曹琰;魏強;彭建山;;符號執(zhí)行中的循環(huán)依賴分析方法[J];計算機工程;2012年22期
4 黃暉;陸余良;夏陽;;基于動態(tài)符號執(zhí)行的二進制程序缺陷發(fā)現系統(tǒng)[J];計算機應用研究;2013年09期
5 翁子盛;王寶生;林錦濱;;程序符號執(zhí)行中的數組分析[J];長江大學學報(自然科學版)理工卷;2010年01期
6 賈春福;王志;劉昕;劉昕海;;路徑模糊:一種有效抵抗符號執(zhí)行的二進制混淆技術[J];計算機研究與發(fā)展;2011年11期
7 周孔偉,蔡經球;符號執(zhí)行—介于程序驗證和程序調試之間的方法[J];小型微型計算機系統(tǒng);1982年04期
8 高仲儀 ,梁霞;符號執(zhí)行和測試數據輔助生成的實驗系統(tǒng)[J];北京航空學院學報;1988年04期
9 程紹銀;蔣凡;林錦濱;唐艷武;;基于有限回溯符號執(zhí)行的軟件疑似缺陷的自動驗證[J];清華大學學報(自然科學版);2009年S2期
10 梁娟娟;劉久富;朱丹丹;陳柯;;基于符號執(zhí)行的軟件靜態(tài)測試研究[J];計算機技術與發(fā)展;2013年06期
相關會議論文 前3條
1 林錦濱;張曉菲;劉暉;;符號執(zhí)行技術研究[A];全國計算機安全學術交流會論文集(第二十四卷)[C];2009年
2 范海虹;;俄漢姓名稱呼對比[A];外語語言教學研究——黑龍江省外國語學會第十一次學術年會論文集[C];1997年
3 劉峻宇;李強;余祥;何海洋;;基于符號執(zhí)行的指揮信息系統(tǒng)軟件缺陷檢測技術[A];2014第二屆中國指揮控制大會論文集(上)[C];2014年
相關博士學位論文 前5條
1 范文慶;分段符號執(zhí)行模型及其環(huán)境交互問題研究[D];北京郵電大學;2010年
2 安靖;動態(tài)符號執(zhí)行關鍵技術研究[D];北京郵電大學;2014年
3 曹琰;面向軟件脆弱性分析的并行符號執(zhí)行技術研究[D];解放軍信息工程大學;2013年
4 陳廳;動態(tài)程序分析技術在軟件安全領域的研究[D];電子科技大學;2013年
5 邢學智;基于TTCN-3語言的測試理論與技術研究[D];中國科學技術大學;2010年
相關碩士學位論文 前10條
1 蔣思遠;基于動態(tài)符號執(zhí)行的測試工具設計與實現[D];華東師范大學;2012年
2 閆曉偉;基于符號執(zhí)行的軟件脆弱性測試技術[D];電子科技大學;2012年
3 吉小麗;動態(tài)符號執(zhí)行的性能優(yōu)化[D];電子科技大學;2013年
4 邵巳航;基于過程間動態(tài)符號執(zhí)行的自動測試工具設計與實現[D];華東師范大學;2014年
5 陳泓旭;基于選擇性符號執(zhí)行的補丁驗證[D];上海交通大學;2014年
6 王卓;基于符號執(zhí)行的二進制代碼動態(tài)污點分析[D];上海交通大學;2011年
7 肖戌;基于符號執(zhí)行的軟件脆弱性分析技術研究[D];電子科技大學;2011年
8 倪康奇;基于二進制代碼的動態(tài)符號執(zhí)行工具[D];上海交通大學;2011年
9 朱聰;動態(tài)符號執(zhí)行中的外部函數調用處理[D];電子科技大學;2013年
10 婁堅波;面向宿主的嵌入式軟件符號執(zhí)行技術研究與實現[D];南京航空航天大學;2011年
,本文編號:1993806
本文鏈接:http://www.wukwdryxk.cn/kejilunwen/jisuanjikexuelunwen/1993806.html