VTable hijacking has lately been promoted to the de facto technique for exploiting C++ applications, and in particular web browsers. VTables, however, can be manipulated without necessarily corrupting memory, simply by leveraging use-after-free bugs. In fact, in the recent Pwn2Own competitions all major web browsers were compromised with exploits that employed (among others) use-afterfree vulnerabilities and VTable hijacking. In this paper, we propose VTPin: a system to protect against VTable hijacking, via use-after-free vulnerabilities, in large C++ binaries that cannot be re-compiled or re-written. The main idea behind VTPin is to pin all the freed VTable pointers on a safe VTable under VTPin's control. Specifically, for every object dea...
Programs written in C and C++ are susceptible to a number of memory errors, including buffer overflo...
Memory safety vulnerabilities remain one of the most critical sources of exploitable security proble...
We present, Vip, an approach to boosting the precision of Virtual call Integrity Protection for larg...
VTable hijacking has lately been promoted to the de facto technique for exploiting C++ applications,...
As VTable hijacking becomes the primary mode of ex-ploitation against modern browsers, protecting sa...
As VTable hijacking becomes the primary mode of ex-ploitation against modern browsers, protecting sa...
Web browsers are one of the most used, complex and popular software systems nowadays. They are prone...
Abstract-Several defenses have increased the cost of traditional, low-level attacks that corrupt con...
Polymorphism and inheritance make C++ suitable for writing complex software, but significantly incre...
Control-flow hijacking attacks allow adversaries to take over seemingly benign software, e.g., a web...
C, C++ and most other popular low-level languages delegate memory management to the programmer, freq...
© 2017 Association for Computing Machinery. We present, Vip, an approach to boosting the precision o...
Code reuse attacks such as return-oriented programming (ROP) have become prevalent techniques to exp...
Exploit development is an arm race between attackers and defenders. In this thesis, I will introduce...
Systems software written in C/C++ is plagued by bugs, which attackers exploit to gain control of sys...
Programs written in C and C++ are susceptible to a number of memory errors, including buffer overflo...
Memory safety vulnerabilities remain one of the most critical sources of exploitable security proble...
We present, Vip, an approach to boosting the precision of Virtual call Integrity Protection for larg...
VTable hijacking has lately been promoted to the de facto technique for exploiting C++ applications,...
As VTable hijacking becomes the primary mode of ex-ploitation against modern browsers, protecting sa...
As VTable hijacking becomes the primary mode of ex-ploitation against modern browsers, protecting sa...
Web browsers are one of the most used, complex and popular software systems nowadays. They are prone...
Abstract-Several defenses have increased the cost of traditional, low-level attacks that corrupt con...
Polymorphism and inheritance make C++ suitable for writing complex software, but significantly incre...
Control-flow hijacking attacks allow adversaries to take over seemingly benign software, e.g., a web...
C, C++ and most other popular low-level languages delegate memory management to the programmer, freq...
© 2017 Association for Computing Machinery. We present, Vip, an approach to boosting the precision o...
Code reuse attacks such as return-oriented programming (ROP) have become prevalent techniques to exp...
Exploit development is an arm race between attackers and defenders. In this thesis, I will introduce...
Systems software written in C/C++ is plagued by bugs, which attackers exploit to gain control of sys...
Programs written in C and C++ are susceptible to a number of memory errors, including buffer overflo...
Memory safety vulnerabilities remain one of the most critical sources of exploitable security proble...
We present, Vip, an approach to boosting the precision of Virtual call Integrity Protection for larg...