基于结构研究高级语言控制结构恢复方法.docVIP

  • 3
  • 0
  • 约6.59千字
  • 约 12页
  • 2017-11-14 发布于福建
  • 举报

基于结构研究高级语言控制结构恢复方法.doc

基于结构研究高级语言控制结构恢复方法

基于结构研究高级语言控制结构恢复方法   摘要:为正确获得嵌入式可执行程序和汇编代码的高级语言控制结构,弥补现有高级程序控制结构恢复算法在处理非结构化区域的不足,将编译领域经典的控制流分析方法——结构分析算法引入到嵌入式汇编代码高级程序控制结构恢复研究中;针对嵌入式可执行程序的特点,对结构分析算法加以改进;利用结构分析算法的结果构造程序的控制树,生成高级语言代码与开源反编译器DCC的对比实验结果表明,改进的结构分析算法在高级程序结构恢复问题上是可行有效的 关键词:反编译; 控制流分析; 嵌入式系统; 逆向分析 中图分类号:TP314 文献标志码:A 0引言 反编译是一个由机器代码或汇编代码生成更易理解的高级语言程序的过程 在这一过程中,根据程序控制流图提取高级程序控制结构是至关重要的一步在嵌入式程序中,为减少生成的代码所占用的存储空间,编译器对程序进行了大量的优化,导致程序中的跳转错综复杂,提取出的控制流图中包含了大量的非结构化子图,对高级程序控制结构恢复造成了较大的影响 目前控制结构恢复技术的研究主要针对桌面系统中的可执行程序进行,且主要关注结构化子图的分析与识别[1-3],这些方法能够提取出控制流图中的大部分控制结构,但是对于非结构化区域的处理略显不足对于非结构化流图结构恢复问题的研究目前主要采取4种方法,分别是引入布尔变量[4-6]、代码复制[7

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档