Stack Data Protection Mechanism for LLVM Intermediate Representation
Weixia Li, Zhuohua Liu · 2023
Stack overflow attack has long history. Recently, it has spawned a number of senior stack overflow ways, such as Return Oriented Programming (ROP). The traditional way can defend against most stack overflow attacks, but cannot protect against this advanced ROP stack overflow attacks, so it is necessary to implement stack data protection against ROP attacks. The work of this paper is to realize the protection of stack overflow attacks (including ROP and other senior stack overflow attacks), our experiments are deployed in LLVM framework. We write a pass which instruments the intermediate represention to split the stack into the safe stack and the unsafe stack. stack into the safe stack and the unsafe stack and the critical data in stack is protected, effectively prevent the destruction of non-control data, can play a certain degree of memory data privacy protection.