期刊文献+

基于属性可靠分析的空指针引用缺陷检测 被引量:2

Null pointer dereference defects detection based on property sound analysis
下载PDF
导出
摘要 为实现基于静态分析技术充分地检测出C程序中的空指针引用缺陷,提出了一种基于属性可靠分析的缺陷检测方法。首先介绍了空指针引用缺陷模式及特征。然后针对空指针引用缺陷的检测特点提出了属性可靠分析理论,并将指针的指向属性描述为一个属性格。通过提出的抽象内存模型,基于给出的每种程序语句上的迁移实现指针指向属性的可靠分析,根据得到的每个被引用指针的指向属性进而实现空指针引用缺陷的检测。通过对五个实际工程的检测结果分析表明,方法可充分检测出C程序的空指针引用缺陷。 In order to fully detect null pointer dereference defects for C procedures based on static analysis, this paperintroduces a method based on property sound analysis. Firstly, defect pattern and feature of null pointer dereference areintroduced. Then, the property sound analysis theory is proposed to detect null pointer dereference defects, and the pointproperty of pointers is abstracted as attribute lattice. Through an abstract memory model and transfer function of eachkind of statement, point-to property of each pointer can be get soundly, and null pointer dereference defects detectioncan be realized based on the point-to property of each referenced pointer. Experiment results of five real projects showthat this method can fully detect null pointer dereference defects.
作者 董玉坤 DONG Yukun(College of Computer and Communication Engineering, China University of Petroleum, Qingdao, Shandong 266580, China)
出处 《计算机工程与应用》 CSCD 北大核心 2016年第22期9-14,104,共7页 Computer Engineering and Applications
基金 山东省自然科学基金(No.BS2015DX017) 中央高校基本科研业务费专项资金(No.15CX02050A)
关键词 缺陷检测 缺陷模式 空指针引用 属性可靠分析 defect detection defect pattern null pointer dereference property sound analysis
  • 相关文献

参考文献5

二级参考文献66

  • 1Flanagan C, Saxe J B. Avoiding exponential explosion:Generating compact verification conditions//Proceedings of" the 28th ACM SIGPLAN SIGACT Symposium on Prinei ples of Programming Languages(POPL01). London, 2001 : 193 205.
  • 2Ball T, Rajamani S K. The SALM project: Debugging system software via static analysis//Proceedings of the 29th ACM SIGPLAN SIGACT Symposium on Principles of Program ming Languages (POPL'02). Portland, 2002 : 1-3.
  • 3Xie Y, Aiken A. Saturn: A scalable framework for error de- tection using boolean satisfiability. ACM Transactions on Programming Languages and Systems, 2007, 29(3) 16.
  • 4Barnett M, Leino K R M, Schulte W. The Spec program ming system: An overview//Proceedings of the 2004 Interna- tional Conference on Construction and Analysis of Safe, Secure, and lnteroperable Smart Devices (CASS1S 04 ). Marseille, France, 2004: 49 69.
  • 5Babic D, Hu A J. Calysto: Scalable and precise extended static eheeking//Proceedings o{ 30th International Conference on Software Engineering (ICSE' 08), Leipzig, Germany, 2008: 221 220.
  • 6Kremenek T. Finding Software Bugs with the Clang Static Analyzer. California: Apple Inc. , 2008.
  • 7Evans D, Larochelle D. Improving security using extensible lightweight static analysis. IEEE Software, 2002, 19 (1) : 42-51.
  • 8Xu Z X, Kremenek T, Zhang J. A memory model for static analysis of C programs//Proceedings of the 4th International Conference on Leveraging Applications of Formal Methods, Verification, and Validation (1SoLA 10 ). Amirandes, Heraclion,Crete, 2010:535-548.
  • 9Manevich R, Sridharan M, Adams S. PSE: Explaining pro- gram failure via postmortem static analysis//Proceedings of the 12th ACM SIGSOFT twelfth International Symposium on Foundations of Software Engineering (SIGSOFT 04/FSE-12). Newport Beach, CA USA, 2004:63-72.
  • 10张冠楠,官云战,金大海.过程问的空指针引用故障静态检测方法//第三届全国软件测试会议与移动计算、栅格、智能化高级论坛.中国,湖北,武汉,2009:53-56.

共引文献18

同被引文献23

引证文献2

二级引证文献2

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部