反编译器自动评测与中间代码生成研究

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:tianxu36966688
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
反编泽是将较为低级的程序代码翻译成与之等价的、更为高级和抽象的程序语言表示的过程。作为软件逆向工程的重要组成部分,反编译在软件移植、恶意代码检测、程序调试以及软件维护与理解等方面起着十分重要的作用。虽然很早就开始了与反编译相关的研究(1960年),并且未曾中断,然而一直以来都还没有形成一套系统的理论和方法,并且随着程序设计语言理论和编泽器技术的发展,反编泽的研究内容和对象也在不断变化。 本文在已有的反编译研究的基础之上,针对现有的C语言反编译器提出了一个基于抽象语法树的反编译器自动评测方法,用于帮助改进现有反编译器的设计,并在CIL系统的基础上实现了一个比较系统SDdiff,通过对dcc,DECLER,Boomerang和Hex-Rays这四种C语言反编译器的反编译效果的评测表明该方法能有效地对反编译器的反编译效果进行自动评测,同时也揭示了反编泽技术随着时间的推移在不断进步和发展。 此外,本文还描述了一个基于栈空间分析的反编译中问代码生成系统Rene,与传统基于模式匹配的方法不同的是,Rene通过分析函数中各点的当前栈偏移来恢复局部变量和函数参数,并以此处理函数调用语句。该方法克服了模式匹配通用性差的缺点,并且能够减少函数内无关的操作语句,从而能够生成更为简洁的中间代码。
其他文献
数据挖掘是研究从大量数据中发现有用知识的理论与方法,它是目前国际上数据库和信息决策领域的最前沿研究方向之一。关联规则是数据挖掘中一个较早的、有意义的研究课题之一。
伴随大数据时代的到来,人们每天面临着海量数字信息,信息过载问题日益严重。传统的获取信息的方式是传统的门户网站和通过搜索引擎主动搜索,这已经不能及时满足人们对有效信
随着软件产品在整个社会中的作用越来越重要,公司在生产和交付软件产品及服务上的竞争进一步加剧,使得在短时间内有效地开发出高质量的软件成为必须。其中,测试是保证软件质
当今,我们可以从网络上获取大量的数据与服务来满足人们对知识的需求。语义Web的出现为知识工程、数据工程提供了上下文环境,它帮助我们改善了网络上的知识组织,并使用户更加
随着数字媒体产业的高速发展,近年来,在国内动漫产业正日益成为一个巨大的产业。媒体技术的发展给动画带来巨大的发展机遇,无论从电影到电视还是互联网、移动通讯,我们正处在媒体
无线传感器网络是集信息采集、信息传输。信息处理于一体的综合智能信息系统,在环境监测、医疗卫生、智能家居、国防军事等方面会有极大的应用。无线传感器网络是一项重要的
可信计算组织认为隐私保护是可信系统的一个必要因素,用户对自己的隐私信息必须拥有选择和控制权,为此可信计算组织于2004年发布了DAA方案来保证证过程的匿名性和解决Privacy
集成了传感器、微机电系统和网络三大技术而形成的传感器网络是一种全新的信息获取和处理技术,其目的就是协作地感知、采集和处理网络覆盖区域中感知对象的信息,并发送给观察
在互联网广泛普及的今天,电子邮件已经成为人们进行信息交互的重要工具之一。它在给人们带来极大便利的同时,也给人们带来了造成很大困扰的副产品——垃圾邮件。为了解决垃圾
随着有限元结构分析的不断复杂,传统的有限元串行计算方法因运算速度的限制,己远远不能满足工程应用的需求。网格技术和并行计算方法的飞速发展,使得这一问题得到很好的解决。利