Detecting all potential null dereferences based on points-to property sound analysis

被引:0
|
作者
Dong Y. [1 ]
机构
[1] College of Computer and Communication Engineering, China University of Petroleum, Qingdao
基金
中国国家自然科学基金;
关键词
abstract interpretation; defect detection; null dereference; sound analysis; Static analysis;
D O I
10.1080/1206212X.2018.1476805
中图分类号
学科分类号
摘要
Null dereferences are a bane of programming in languages such as C, and static analysis is an effective method to detect them but often due to false negative. This paper proposes a points-to property sound analysis method to detect all potential null dereferences. First, the feature and detection method of null dereference of C programs are introduced. Second, an abstract memory model Region-based Symbolic Three-Valued Logic (RSTVL) is proposed to describe storage states of memory objects. Third, the property sound analysis theory based on abstract interpretation is proposed, which only analyze a single property of a program applies over-approximation strategy. Then, evaluations’ rules of points-to property based on RSTVL are presented, which guarantees the points-to property of a pointer contains the actual points-to property and detect all potential null dereferences. Experiment results of five real projects show that this method could detect all potential null dereferences with acceptable false-positive rates and efficiency. © 2018, © 2018 Informa UK Limited, trading as Taylor & Francis Group.
引用
收藏
页码:187 / 195
页数:8
相关论文
共 30 条
  • [1] Parallel Replication-Based Points-To Analysis
    Putta, Sandeep
    Nasre, Rupesh
    COMPILER CONSTRUCTION, CC 2012, 2012, 7210 : 61 - 80
  • [2] Prioritizing pointer analysis algorithm based on points-to updating
    PLA Information Engineering University, Zhengzhou
    450002, China
    Ruan Jian Xue Bao, 11 (2486-2498):
  • [3] Parallel Inclusion-based Points-to Analysis
    Mendez-Lojo, Mario
    Mathew, Augustine
    Pingali, Keshav
    ACM SIGPLAN NOTICES, 2010, 45 (10) : 428 - 443
  • [4] A GPU Implementation of Inclusion-based Points-to Analysis
    Mendez-Lojo, Mario
    Burtscher, Martin
    Pingali, Keshav
    ACM SIGPLAN NOTICES, 2012, 47 (08) : 107 - 116
  • [5] Scaling Type-Based Points-to Analysis with Saturation
    Wimmer, Christian
    Stancu, Codrut
    Kozak, David
    Wurthinger, Thomas
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (PLDI):
  • [6] Set-Based Pre-Processing for Points-To Analysis
    Smaragdakis, Yannis
    Balatsouras, George
    Kastrinis, George
    ACM SIGPLAN NOTICES, 2013, 48 (10) : 253 - 269
  • [7] Stacking-based context-sensitive points-to analysis for Java
    School of Information Science, Japan Advanced Institute of Science and Technology, Nomi, Japan
    Lect. Notes Comput. Sci., (133-149):
  • [8] Refinement-based context-sensitive points-to analysis for Java']Java
    Sridharan, Manu
    Bodik, Rastislav
    ACM SIGPLAN NOTICES, 2006, 41 (06) : 387 - 400
  • [9] An efficient inclusion-based points-to analysis for strictly-typed languages
    Whaley, J
    Lam, MS
    STATIC ANALYSIS, PROCEEDINGS, 2002, 2477 : 180 - 195
  • [10] Instance-wise points-to analysis for loop-based dependence testing
    Wu, Peng
    Feautrier, Paul
    Padua, David
    Sura, Zehra
    Proceedings of the International Conference on Supercomputing, 2002, : 262 - 273