Detecting stack layout corruptions with robust stack unwinding

1Citations
Citations of this article
9Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The stack is a critical memory structure to ensure the correct execution of programs because control flow changes through the data stored in it, such as return addresses and function pointers. Thus the stack has been a popular target by many attacks and exploits like stack smashing attacks and return-oriented programming (ROP). We present a novel system to detect the corruption of the stack layout using a robust stack unwinding technique and detailed stack layouts extracted from the stack unwinding information for exception handling widely available in off-the-shelf binaries. Our evaluation with real-world ROP exploits has demonstrated successful detection of them with performance overhead of only 3.93% on average transparently without accessing any source code or debugging symbols of a protected binary.

Cite

CITATION STYLE

APA

Fu, Y., Rhee, J., Lin, Z., Li, Z., Zhang, H., & Jiang, G. (2016). Detecting stack layout corruptions with robust stack unwinding. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9854 LNCS, pp. 71–94). Springer Verlag. https://doi.org/10.1007/978-3-319-45719-2_4

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free