二进制代码逆向分析中基于符号执行的虚函数解析研究

来源 :北京大学 | 被引量 : 0次 | 上传用户:colinvin
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
二进制代码逆向分析在系统安全领域有着广泛的应用。涉及面向对象语言的逆向分析面临的一个基本问题是如何从二进制代码中解析出由虚函数引起的间接调用。本文基于符号执行等技术对此问题进行了研究,提出一种虚函数解析技术。该技术首先识别对象构造和由虚函数引起的间接调用,然后沿控制流图跟踪对象等信息从对象构造点到虚函数调用的传播,最后在虚函数调用点根据对象、虚表等信息计算该间接调用的目标函数地址。本文主要贡献包括:   (1)提出一种基于子图的符号执行技术,用于跟踪二进制程序中对象等信息从对象构造点到虚函数调用的传播。该技术不仅可以计算程序中内存单元与寄存器问值的算术运算关系,而且能有效缓解传统符号执行面临的路径爆炸问题。   (2)提出一种对象构造识别方法,用于识别二进制程序中含虚表指针对象的构造。与现有方法相比,该技术可有效地识别内联的对象创建指令序列。   (3)提出一种由虚函数引起的间接调用识别方法,用于发现二进制程序中由源码中虚函数引起的间接调用。与现有方法相比,该技术具有更低漏报率。   基于以上研究,实现了一个原型系统AutoCG,并针对Windows平台和Linux平台的典型可执行程序做了大量实验,验证了算法的有效性。   本文工作得到国家863高技术研究发展计划项目(2006AA01Z402)和某国防基础预研项目的资助。  
其他文献
目前,随着搜索引擎使用人群不断增长,其商业价值也日益突显出来,同时作为搜索引擎本身,也需要有一定的盈利模式来支撑它的发展。此时,竞价排名应运而生,现已成为搜索引擎最主要的收
随着硬件技术和移动网络技术的快速发展,以智能手机为代表的嵌入式系统的硬件性能越来越强,软件应用越来越丰富,使得嵌入式设备在性能和功能上越来越接近微型个人电脑。性能
随着互联网基础设施和各种互联网应用的快速发展,多媒体内容如音乐、影视、图片等已经占据了互联网绝大部分的流量。在文字搜索的领域,传统的搜索如Google,百度都已经有很成
随着计算机网络的飞速发展和信息化的推进,数据集成技术得到了越来越广泛而深入的应用,也引起了学术界和工业界的高度重视。XML由于其半结构化等特性使其能够集成来自不同数
随着数据库管理系统应用环境的不断变化,一方面,数据管理、数据访问等相关技术变得越来越复杂;而另一方面,维护成本变得越来越昂贵。于是,企业为了更好地专注于所擅长的业务领域,会
随着计算机和网络技术的发展,工具书由纸质载体逐渐向电子版本的方式发展,商务印书馆拥有一百多年的历史,是国内首屈一指的出版和文化机构,至今出版各类书刊近5万种,其中包括大量
自从XML,诞生以来,越来越多的数据以XML文档格式存储和发布,XML已经成为Internet和Intranet上数据集成和交换的标准,被广泛应用于电子商务、内容管理、多媒体、数字图书馆以
由于广东省珠三角地区工业现阶段的发达,其自然环境特别是农业环境也日益呈现出存在着重金属污染的严重问题。土壤重金属污染带来的问题,对人类健康、生态环境和社会的发展,都有
电子投票(Electronic Voting)泛指使用电信、网络、电子机械等手段投票或者通过电子方式计票的投票活动。使用电子投票可以显著地提高计票工作的效率;同时,投票方式的多样化也
历史网页集是一个规模庞大、随时间动态变化,同时承载了许多有价值的信息的数据集。本文研究了在这样一个数据集上进行二维区间数据查询的性能优化问题。二维区间数据查询由两