摘要 |
PROBLEM TO BE SOLVED: To prevent an attacker from rewriting a return address that a calling source passes as an argument to make a jump to the rewritten address when returning from a called destination. SOLUTION: When a procedure call is realized, the return address is not passed from the calling source to the called destination and a return address ID is passed instead. The return address ID is a number for retrieval from a return address table as a table wherein the return address is recorded. When a return is made, it is checked whether the return address ID is valid and when so a return address corresponding to the return address ID is obtained from the return address table to make a jump to the obtained return address. When not valid, on the other hand, the abnormality is reported to an administrator by initiating an interruption. Consequently, a jump destination of a return is limited to only an address registered in the return address table to stop an attack. COPYRIGHT: (C)2006,JPO&NCIPI |