摘要: 针对使用C后端的静态二进制翻译框架,提出了间接调用动态链接库函数恢复方法。该方法使用伪地址来代替需要动态解析的动态链接库函数的地址,在后端构建了伪地址与目标机上动态链接库函数地址的对应表,在后端C代码生成过程中插入根据伪地址获得动态链接库函数地址的查表代码,使用查表得到的库函数地址恢复对于动态链接库函数的间接调用。
关键词:
静态二进制翻译,
间接过程调用,
动态库
Abstract: Aiming at the static binary translation of using C language as backend, this paper puts forward a technique to recover indirect call to dynamic linking library functions that uses pseudo addresses to subtitle the addresses of dynamic linking library functions and construct a table to mapping pseudo addresses with the addresses of dynamic linking library functions at the target machine. The target program obtains the target procedure address based on the source pseudo address by codes plugging into the target program, it uses the searching result to call the dynamic library function.
Key words:
static binary translation,
indirect procedure call,
dynamic library
中图分类号:
丁松阳;赵荣彩. 二进制翻译中间接调用动态链接库恢复技术[J]. 计算机工程, 2007, 33(24): 49-51.
DING Song-yang; ZHAO Rong-cai. Recovery Technology of Indirect Procedure Call to Dynamic Linking Library Function in Static Binary Translation[J]. Computer Engineering, 2007, 33(24): 49-51.