To support C++ exception handling, compilers generate metadata that is a rich source of information about the code layout. On Linux, this metadata is also used to support stack tracing, thread cleanup and other functions. For this reason, Linux binaries contain code-layout-revealing metadata for C-code as well. Even hand-written assembly in low-level system libraries is covered by such metadata. We investigate the implications of this metadata in this paper, and show that it can be used to (a) improve accuracy of disassembly, (b) achieve significantly better accuracy at function boundary identification as compared to previous research, and (c) as a rich source of information for defeating fine-grained code randomization.
CITATION STYLE
Priyadarshan, S., Nguyen, H., & Sekar, R. (2020). On the Impact of Exception Handling Compatibility on Binary Instrumentation. In FEAST 2020 - Proceedings of the 2020 ACM Workshop on Forming an Ecosystem Around Software Transformation (pp. 23–28). Association for Computing Machinery, Inc. https://doi.org/10.1145/3411502.3418428
Mendeley helps you to discover research relevant for your work.