Modeling Software Execution Environment

  • Authors:
  • Dawei Qi;William N. Sumner;Feng Qin;Mai Zheng;Xiangyu Zhang;Abhik Roychoudhury

  • Affiliations:
  • -;-;-;-;-;-

  • Venue:
  • WCRE '12 Proceedings of the 2012 19th Working Conference on Reverse Engineering
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software execution environment, interfaced with software through library functions and system calls, constitutes an important aspect of the software's semantics. Software analysis ought to take the execution environment into consideration. However, due to lack of source code and the inherent implementation complexity of these functions, it is quite difficult to co-analyze software and its environment. In this paper, we propose to extend program synthesis techniques to construct models for system and library functions. The technique samples the behavior of the original implementation of a function. The samples are used as the specification to synthesize the model, which is a C program. The generated model is iteratively refined. We have developed a prototype that can successfully construct models for a pool of system and library calls from their real world complex binary implementations. Moreover, our experiments have shown that the constructed models can improve dynamic test generation and failure tolerance.