发明名称 METHOD AND APPARATUS FOR VERIFYING A SUSPECT RETURN POINTER IN A STACK
摘要 The present invention provides a computer implemented method, data processing system, and computer program product for verifying a return address. A computer stores the return address into a stack based on a function call. The computer generates a first hash based on a first stack frame and a second stack frame. The computer stores the first hash in a first canary location, wherein the first canary location is in the first stack frame. The computer executes at least one instruction of a routine referenced by the function call. The computer reads the first canary location to form a first suspect hash. The computer calculates a first verification hash based on the first stack frame and the second stack frame. The computer determines that the first verification hash matches the first suspect hash to form a first positive determination. The computer responsive to the first positive determination, the computer reads a second canary location to form a second suspect hash. The computer calculates a second verification hash based on the second stack frame. The computer determines that the second verification hash matches the second suspect hash to form a second positive determination. The computer responsive to the first positive determination and the second positive determination, the computer pops the return address off the stack. The computer executes at least one instruction at a memory location pointed to by the return address.
申请公布号 US2009144309(A1) 申请公布日期 2009.06.04
申请号 US20070947961 申请日期 2007.11.30
申请人 CABRERA ESCANDELL MARCO A;MCLANE TOMMY L;MURRAY ELIZABETH J 发明人 CABRERA ESCANDELL MARCO A.;MCLANE TOMMY L.;MURRAY ELIZABETH J.
分类号 G06F17/30 主分类号 G06F17/30
代理机构 代理人
主权项
地址