发明名称 SYSTEM FOR DETECTING CALL STACK TAMPERING
摘要 The invention relates to a method for detecting a subroutine call stack modification, including the steps of, when calling a subroutine, placing a return address at the top of the stack; at the end of the subroutine, using the address at the top of the stack as the return address, and removing the address from the stack; when calling the subroutine, accumulating the return address in a memory location with a first operation; at the end of the subroutine, accumulating the address from the top of the stack in the memory location with a second operation, reciprocal of the first operation; and detecting a change when the content of the memory location is different from its initial value.
申请公布号 US2015220328(A1) 申请公布日期 2015.08.06
申请号 US201314417639 申请日期 2013.07.31
申请人 INSIDE SECURE 发明人 Galdo Florian
分类号 G06F9/44;G06F12/06 主分类号 G06F9/44
代理机构 代理人
主权项 1. A method for detecting a subroutine call stack modification, comprising the following steps for each subroutine in a sequence of subroutines nested in an initial subroutine: when calling a current subroutine, placing a return address at the top of the stack; at the end of the current subroutine, using the address at the top of the stack as the return address, and removing the address from the stack; assigning a single memory location to the sequence of subroutines; saving the initial value of the memory location before calling the initial subroutine; when calling the current subroutine, accumulating the return address in the memory location with a first operation; at the end of the current subroutine, accumulating the address from the top of the stack in the memory location with a second operation, reciprocal of the first operation; and upon returning from the initial subroutine, detecting a modification when the content of the memory location differs from the initial value.
地址 Meyreuil FR