共查询到16条相似文献,搜索用时 125 毫秒
1.
基于对ELF文件加载机制的分析,提出了一种新的main()函数定位思路,当从符号表中查找main()函数地址失败时,则从.text的起始位置(即start例程)开始进行分析,根据特定体系结构下_start例程的规范来确定函数_libc_start_main同main()函数地址相关的参数,依据这些参数来获取main()函数地址。 相似文献
2.
3.
静态二进制翻译的入口点通常为main函数,所以main函数执行之前的动态地址解析部分就无法在目标机上恢复。通过分析基于ELF文件的动态地址解析机制,提出了在目标代码中插入代码模拟动态地址解析的方法来解决该问题。该方法已在静态二进制翻译项目中实现,测试结果表明该方法是有效的。 相似文献
4.
ITC反编译系统应用了基于动态链接信息的库函数快速识别技术,对于绝大部分待翻译IA-64二进制可执行程序中的库函数它都能正确识别,但是当二进制可执行程序包含有与库函数同名的用户函数时,就可能会出现问题.作者在深入分析基于动态链接信息的库函数快速识别技术所导致的问题原因的基础上,充分研究了ELF64格式二进制文件的具体组... 相似文献
5.
给出了一种基于ELF目标文件生成二进制可复用软件构件的方法,并在EOS领域作了初步尝试.与其它软件构件封装技术相比较.从ELF目标文件生成可复用二进制软件构件(称作CELF格式)的过程更为直接.为解决原ELF格式中名字冲突问题,非安全指令问题以及来源信任问题,分别采用了接口元素名称再鳊码、源指令流扫描及MD5文摘生成技术.可复用的EOS构件中包含源ELF文件的代码及数据,改进了其中符号表和重定位信息组织,独立部署、参与组装的可能性得到增强. 相似文献
6.
过程识别技术及相关参数的提取是二进制翻译中过程调用恢复的基础.为较好实现对过程的识别,首先设计了针对GCC编译的ELF(executable and linkable format)文件的过程识别技术,取得了良好的效果.不过随着研究的深入,要求对C编译器和ICC(Intel C compiler)编译器同时具有良好的支持,但在测试中发现这种识别技术在处理ICC编译的ELF程序指令流时存在的一些问题,为此提出了改进算法,这个算法已经在IA-64-Alpha反编译中实现,从而使系统对C编译器和ICC编译器编译的ELF文件都能进行正确的过程识别和参数提取. 相似文献
7.
8.
9.
10.
11.
在对IA-64二进制代码进行翻译的过程中,一个重要的问题就是识别和恢复通过跳转表实现的switch语句。分析了编译器生成跳转表时采用的策略,提出了前向预取同反向切片及表达式置换相结合以识别和恢复switch语句的技术,归纳了用于获取跳转表地址的规格化形式,给出了跳转表分支目标地址恢复方法,从而可将包含跳转表的IA-64二进制代码恢复为高级switch语句。该技术已经在二进制翻译框架I2A上进行了测试,可以处理编译器gcc 2.96及gcc 3.2.3在多种优化级别下生成的IA-64代码。 相似文献
12.
IA-64二进制代码switch语句恢复技术研究 总被引:1,自引:1,他引:0
在对IA-64二进制代码进行分析的过程中,一个基本的问题就是识别通过跳转表实现的switch语句中n-条件分支的目标地址,该问题的解决使得对指定过程的机器指令的解码更加完整。文章基于切片和表达式置换技术,结合IA-64中为switch语句生成的汇编代码特点,给出了恢复跳转表及目标地址的方法,从而可以将包含跳转表的IA-64二进制代码恢复为高级switch语句。 相似文献
13.
14.
15.
16.
IA-64体系结构使用64位指令集,该指令集应用显式并行指令计算(EPIC)技术,可提供更高的指令级并行性(ILP),但同时也给IA-64二进制代码流的分析和变换带来了困难.介绍了一个IA-64解码器自动生成器的结构与实现,该生成器的输入为IA-64指令集的SLED描述,自动生成用于IA-64指令解码器的C代码.通过该生成器可有效减少解码器的开发时间,确保解码器的正确性,提高解码器的执行效率.实现的自动生成器可应用于IA-64二进制翻译及逆向工程中. 相似文献