Infeasible Path Detection Based on Code Pattern and Backward Symbolic Execution

被引:4
|
作者
Song, Yang [1 ]
Zhang, Xuzhou [1 ]
Gong, Yun-Zhan [1 ]
机构
[1] Beijing Univ Posts & Telecommun, Beijing, Peoples R China
关键词
GENERATION; PROGRAMS;
D O I
10.1155/2020/4258291
中图分类号
T [工业技术];
学科分类号
08 ;
摘要
This paper sets out to reveal the relationship between code pattern and infeasible paths and gives advices to the selection of infeasible path detection techniques. Lots of program paths are proved to be infeasible, which leads to imprecision and low efficiency of program analysis. Detection of infeasible paths is required in many areas of software engineering including test coverage analysis, test case generation, and security vulnerability analysis. The immediate cause of path infeasibility is the contradiction of path constraints, whose distribution will affect the performance of different program analysis techniques. But there is a lack of research on the distribution of contradict constraints currently. We propose a code pattern based on the empirical study of infeasible paths; the statistical result proves the correlation of the pattern with contradict constraints. We then develop a path feasibility detection method based on backward symbolic execution. Performance of the proposed technique is evaluated from two aspects: the efficiency of detecting infeasibility paths for specific program element and the improvement of applying the technique on code coverage testing.
引用
收藏
页数:12
相关论文
共 50 条
  • [1] Infeasible path generalization in dynamic symbolic execution
    Delahaye, Mickael
    Botella, Bernard
    Gotlieb, Arnaud
    INFORMATION AND SOFTWARE TECHNOLOGY, 2015, 58 : 403 - 418
  • [2] Binary code execution path based on symbolic and actual program execution
    Cui, Baojiang
    Guo, Pengfei
    Wang, Jianxin
    Qinghua Daxue Xuebao/Journal of Tsinghua University, 2009, 49 (SUPPL. 2): : 2186 - 2192
  • [3] Similar Execution Path Generation Based on Backward Symbolic Analysis
    Guo, Xi
    Wang, Jianyong
    MODERN TENDENCIES IN ENGINEERING SCIENCES, 2014, 533 : 427 - 431
  • [4] Source Code Assertion Verification Using Backward Symbolic Execution
    Husak, Robert
    Zavoral, Filip
    INTERNATIONAL CONFERENCE ON NUMERICAL ANALYSIS AND APPLIED MATHEMATICS (ICNAAM-2018), 2019, 2116
  • [5] Infeasible Code Detection
    Bertolini, Cristiano
    Schaef, Martin
    Schweitzer, Pascal
    VERIFIED SOFTWARE: THEORIES, TOOLS, EXPERIMENTS, 2012, 7152 : 310 - +
  • [6] Learning to Prune Infeasible Paths in Generalized Symbolic Execution
    Molina, Facundo
    Ponzio, Pablo
    Aguirre, Nazareno
    Frias, Marcelo
    2022 IEEE 33RD INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE 2022), 2022, : 494 - 504
  • [7] Backward Symbolic Execution with Loop Folding
    Chalupa, Marek
    Strejcek, Jan
    STATIC ANALYSIS, SAS 2021, 2021, 12913 : 49 - 76
  • [8] Symbolic Execution of Obfuscated Code
    Yadegari, Babak
    Debray, Saumya
    CCS'15: PROCEEDINGS OF THE 22ND ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2015, : 732 - 744
  • [9] Detection of infeasible path in procedure
    Chen, Rui
    Zhang, Guangmei
    Li, Xiaowei
    Jisuanji Gongcheng/Computer Engineering, 2006, 32 (16): : 86 - 88
  • [10] Detection of Unlink Attack Based on Symbolic Execution
    Huang N.
    Huang S.
    Liang Z.
    Huanan Ligong Daxue Xuebao/Journal of South China University of Technology (Natural Science), 2018, 46 (08): : 81 - 87