An accurate stack memory abstraction and symbolic analysis framework for executables

K Anand, K Elwazeer, A Kotha… - 2013 IEEE …, 2013 - ieeexplore.ieee.org
2013 IEEE International Conference on Software Maintenance, 2013ieeexplore.ieee.org
This paper makes two contributions regarding reverse engineering of executables. First,
techniques are presented for recovering a precise and correct stack memory model in
executables in presence of executable-specific artifacts such as indirect control transfers.
Next, the enhanced memory model is employed to define a novel symbolic analysis
framework for executables that can perform the same types of program analysis as source-
level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct …
This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise memory model and ignore memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
ieeexplore.ieee.org