272 / 1971-01-01 00:00:00
Symbolic Execution Based On Context-sensitive, Path-sensitive Slicing And Refactoring
5735
终稿
周 林 / 数学工程与先进计算国家重点实验室
Symbolic execution is a systematic program analysis technique that has become increasingly popular in network software testing, due to algorithmic advances and availability of computational power and constraint solving technology. Recent research utilizes symbolic execution to verify alarms that static analysis reports. However, A main challenge is to detect determining symbolic values for program variables related to library and combination explosion of loop paths. Test generation may time out on real-sized programs before confirming some alarms as real bugs or rejecting some others as unreachable. In this paper, we propose a symbolic analysis based on context-sensitive, path-sensitive slicing and refactoring, a hybrid technique that enables fully automatic symbolic analysis even for the traditionally challenging code. The novelties of this work are threefold: 1) new optimized and adaptive usages of context-sensitive and path-sensitive slicing to reduce the program’s complexity 2) refactoring sliced program with the loop and library model and 3) dynamic executions are performed on the refactored program. Our method is implemented in SESR framework. Our experiments show that our method with program slicing outperforms previous symbolic execution. Moreover, simplifying the program makes it easier to analyze detected errors and remaining alarms.
重要日期
  • 会议日期

    01月22日

    2015

    02月23日

    2015

  • 12月20日 2014

    初稿截稿日期

  • 12月20日 2014

    提前注册日期

  • 12月31日 2014

    终稿截稿日期

  • 02月23日 2015

    注册截止日期

  • 04月20日 2015

    摘要截稿日期

联系方式
移动端
在手机上打开
小程序
打开微信小程序
客服
扫码或点此咨询