首页> 中文学位 >可执行程序的反编译
【6h】

可执行程序的反编译

代理获取

目录

文摘

英文文摘

独创性声明和学位论文版权使用授权书

1绪论

1.1课题的目的与意义

1.2国内外研究概况

1.3主要研究工作

2反编译系统unASM的总体设计

2.1 unASM的总体结构

2.2 unASM的关键技术

2.3小结

3反编译系统unASM的实现

3.1代码和数据分离

3.2签名识别

3.3小结

4反编译系统的应用

4.2试验结果

4.3运用实例

4.4小结

5总结及展望

致谢

参考文献

附录攻读学位期间发表和已录用论文目录

展开▼

摘要

随着计算机软件的广泛应用,可执行程序的反编译已成为软件逆向工程的重要研究领域,在可执行程序的移植、商业软件的安全性分析、软件的加解密分析、软件复用等方面充分显示其应用价值.针对主流反编译软件没有解决好的文件格式识别、代码和数据分离、签名识别等问题,课题进行了重点研究.我们分析了反编译的几种主要模式,选择了一种适合于可执行程序反编译的结构化反编译模式,该模式主要由文件格式识别、代码和数据分离、签名识别这三个阶段组成.在文件格式识别阶段采用Autocoder方法解析文件的代码段、数据段、输入段等特殊字段.在代码和数据分离阶段,分析了传统的直接对代码段实行静态分离易产生伪代码的缺点,设计了一种利用程序入口地址和函数调用地址等特点来进行启发式的静态分离算法,并将该分离算法和动态分离有效的结合起来用于可执行程序的反编译.在签名识别阶段,利用动态库函数引用特点,实现了一种重定位模式比较的签名方法,解决了编译器签名和静态库签名的识别率低、速度慢的缺点;基于可执行程序动态库的输入表不变特点,实现了一种依据输入表进行识别的动态库签名方法.采用VC++语言和一些SDK工具实现了两个实用反编译工具:静态反编译系统unASM、动态调试器cuteDBG.最后以软件破解、加密分析、程序结构分析等几个实例显示了该工具的应用价值.按照这些技术设计的反编译系统可以识别Windows和Linux平台下的所有可执行程序,有效的分离这些可执行程序中的代码和数据,最后产生一种较为易懂的伪汇编代码.

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号