Tackling 3rd Generation Code-Reuse Attacks


Betreuer: Moritz Contag, Andre Pawlowski

Beginn: ab sofort

Weitere Details: [COOP]


Counterfeit object-oriented programming (COOP) is a recently proposed advanced code-reuse attack technique for C++ applications. By design, control flow patterns in a COOP attack resemble those of benign C++ code. In order to reliably detect COOP-based attacks, certain high-level C++ semantics of applications need to be considered. While trivial for source code, extracting these semantics from binary code only is challenging.

In this thesis, a binary-only defense against COOP-based attacks is to be developed. The goal is to implement a generic tool that dynamically rewrites a given C++ application (e.g., MS Internet EXplorer) in certain ways such that COOP-based attacks are unlikely to succeed.


  • Good understanding of modern code-reuse attacks
  • Solid C/C++ coding skills
  • Experience in reverse engineering