Source Code and Backward Edge-based Protection Against Advanced Code Reuse Attacks
Source Code and Backward Edge-based Protection Against Advanced Code Reuse Attacks
Supervisor(s): | Paul Muntean |
Status: | finished |
Topic: | Integrity Measures (CFI etc.) |
Author: | Matthias Neumayer |
Submission: | 2018-02-15 |
Type of Thesis: | Bachelorthesis |
Proof of Concept | No |
Astract:The security of software systems depends on the possibility for an attacker to exploit certain vulnerabilities which a given system might have. Complex software systems contain software bugs which if exploitable could be used by an attacker to craft code reuse attacks. These attacks are based on violations of the forward and backward edges in the control flow graph (CFG) of the attacked program. In this thesis, a tool is developed which can be used to protect against violation of backward edge attacks by enforcing the class hierarchy on backward edges after virtual calls and by using function signature information which helps to drastically reduce the legitimate target set for a function return (i.e., backward edges). The evaluation shows that the tool is precise, effective, and imposes low performance overhead on the hardened programs. |