All binaries compiled by recent versions of GCC from C++ programs include complex data and dedicated code for exception handling support. The data structures describe the call stack frame layout in the DWARF format byte-code. The dedicated code includes an interpreter of this bytecode and logic to implement the call stack unwinding. Despite being present in a large class of programs – and therefore poten-tially providing a huge attack surface – this mechanism is not widely known or studied. Of particular interest to us is that the exception handling mech-anism provides the means for fundamentally altering the flow of a program. DWARF is designed specifically for calculating call frame addresses and reg-ister values. DWARF expressions are Tu...
Systems software written in C/C++ is plagued by bugs, which attackers exploit to gain control of sys...
C++ and Microsoft's Component Object Model (COM) are examples of a high- level lan- guage and develo...
Programs written in C and C++ are susceptible to a number of memory errors, including buffer overflo...
All binaries compiled by recent versions of GCC from C++ programs include complex data and dedicated...
The study of vulnerabilities and exploitation is one of finding mechanisms affecting the flow of com...
The study of vulnerabilities and exploitation is one of finding mechanisms affecting the flow of com...
Control-flow hijacking attacks allow adversaries to take over seemingly benign software, e.g., a web...
International audienceDebug information, usually encoded in the DWARF format, is a hidden and obscur...
Hardware Trojan Horses (HTHs) represent today a serious issue not only for academy but also for indu...
Abstract—Several defenses have increased the cost of tradi-tional, low-level attacks that corrupt co...
In this book we examine a number of vulnerabilities in C-like languages that can be exploited by att...
This paper describes the design and implementation of a lightweight static security analyzer that ex...
The goal of the research presented in this dissertation is to prevent, detect, and mitigate maliciou...
Abstract. The paper addresses the problem of stack smashing or stack overflows in modern operating s...
Low-level exploitation is an ongoing security issue. History has shown multiple methods to gain cont...
Systems software written in C/C++ is plagued by bugs, which attackers exploit to gain control of sys...
C++ and Microsoft's Component Object Model (COM) are examples of a high- level lan- guage and develo...
Programs written in C and C++ are susceptible to a number of memory errors, including buffer overflo...
All binaries compiled by recent versions of GCC from C++ programs include complex data and dedicated...
The study of vulnerabilities and exploitation is one of finding mechanisms affecting the flow of com...
The study of vulnerabilities and exploitation is one of finding mechanisms affecting the flow of com...
Control-flow hijacking attacks allow adversaries to take over seemingly benign software, e.g., a web...
International audienceDebug information, usually encoded in the DWARF format, is a hidden and obscur...
Hardware Trojan Horses (HTHs) represent today a serious issue not only for academy but also for indu...
Abstract—Several defenses have increased the cost of tradi-tional, low-level attacks that corrupt co...
In this book we examine a number of vulnerabilities in C-like languages that can be exploited by att...
This paper describes the design and implementation of a lightweight static security analyzer that ex...
The goal of the research presented in this dissertation is to prevent, detect, and mitigate maliciou...
Abstract. The paper addresses the problem of stack smashing or stack overflows in modern operating s...
Low-level exploitation is an ongoing security issue. History has shown multiple methods to gain cont...
Systems software written in C/C++ is plagued by bugs, which attackers exploit to gain control of sys...
C++ and Microsoft's Component Object Model (COM) are examples of a high- level lan- guage and develo...
Programs written in C and C++ are susceptible to a number of memory errors, including buffer overflo...