堆溢出防御虚拟机的研究与实现

来源 :广西师范大学 | 被引量 : 0次 | 上传用户:zhlinen
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
堆溢出是指写到堆内存块的数据大于其内存容量导致超越边界,从而覆盖相邻内存块内容的一种情形。堆溢出破坏数据的完整性,导致程序运行失败、系统当机,甚至利用它改变程序执行流程执行非授权指令,从而获得被攻击主机的特权以便进行各种非法操作。因此对堆溢出防御的研究,对计算机网络与信息安全、信息对抗有非常重要的理论意义和实用价值。本文指出保护数据信息的完整性是防御的关键点,从为用户程序搭建运行时系统环境,以指令最终进入处理机执行为主线,运用虚拟机技术动态检测、控制关键指令和部分系统调用,给出一种基于进程虚拟机动态防御堆溢出的防御方案。 本文主要包括以下几个研究工作: 1、分析国内外在堆溢出防御方面的研究现状,给出当前防御技术的分类,指出当前防御技术中的不足特别是虚拟机技术在堆溢出防御中的不足。 目前堆溢出防御技术的研究可分成静态防御技术和动态防御技术两大类。静态防御技术是指在源程序编译的不同阶段,依据静态库进行程序更改的代码修正技术,它需要高级语言源代码的支持;动态防御技术是对应用软件的运行环境进行修正的上下文检测和更改技术,主要包括堆不可执行和随机化指令集与地址来防止堆溢出、边界检查和沙箱技术。 当前防御存在的问题是:堆溢出防御技术大多依赖有源代码或函数动态调用库支持的防御;在指令进入处理机后,无法动态地对其进行执行逻辑的防御,从而引发安全问题。而目前的虚拟机技术在堆溢出防御中存在看不到溢出过程,控制不住程序的执行流程,且不能记录溢出发生时缓冲区中的数据等不足。 2、分析堆溢出技术、溢出过程以及溢出防御,指出保护数据信息的完整性是防御的关键点,分析并指出进程虚拟机动态防御堆溢出需要关注的几个关键问题。 堆溢出主要原因是语言在实现上没有对写内存进行边界检查,加上堆具有可读、可写属性,通过对某些数据的修改使用,改变程序执行流程,使程序可能临时具有超级用户权限,某些特殊的系统调用等性质,从而诱发堆溢出攻击。并从用户空间和系统空间角度来分析堆溢出攻击所带来的后果。本文指出保护数据信息的完整性是堆溢出防御的关键。并把动态防御技术分为基于进程和基于系统二类,重点分析搭建进程运行时系统环境防御溢出所需要注意的关键问题。 3、分析并论述堆溢出防御方案的关键技术,指出程序加载、内存布局、指令运行是其中主要的关键技术。 首先分析搭建进程虚拟机运行时系统环境所需的关键问题,分别对应不同的关键技术。其次给出程序加载方案,在此基础上,引出内存布局、指令运行、系统调用等关键技术分析。最后分别给出相应的算法描述,并在此基础上给出一种堆溢出防御的系统模型。 4、依据以上的关键技术,以基于Intel X86 CPU的Windows操作系统为例,提出一种堆溢出防御虚拟机DHOVM(Defense of Heap Overflow Virtual Machine)防护堆溢出方案。运用软件工程的思想,设计并实现该系统。 5、给出验证目标、验证环境和测试大纲,验证DHOVM达到保护数据信息完整性和防护堆溢出的系统设计目标,并运用下推自动机理论对DHOVM能够正确的防御堆溢出给出理论证明。从试验结果和理论证明分析来看,论文关注的问题及所提出的解决问题的思想在研究上是有效的,设计上是可行的,方案的实现是正确的。 最后,给出本文研究工作的总结,并指出下一步值得开展研究的工作内容。
其他文献
三维激光扫描技术是国际上近期发展的一项高新技术,又被称做实景复制技术,是测绘领域继GPS技术之后的一次技术革命。它无需接触扫描文物表面,突破了传统的单点测量方法,具有
协同CAD(Computer Aided Design)作为CAD技术与CSCW(Computer SupportedCooperative Work)技术的结合,可以有效地缩短产品开发周期,充分地利用异地资源,降低产品的设计成本,
伴随着日益严峻的信息系统现实安全形势,系统的安全性问题亟待我们有效解决。通过提高可生存系统认知能力来创新和完善过去的信息安全观念,强调信息系统仍然具备实现其关键服
3D GIS技术的研究范围涉及数据库技术、地理信息系统、计算机图形学、虚拟现实等多门学科领域。本文在吸取了上述多门学科领域先进理论的基础上,系统地论述了将3DGIS应用于地
随着计算机技术的不断发展,特别是网络技术的发展,企业以往的信息管理方式已经不能满足需求。面对庞大的信息量我们急需一套自动的信息采集及管理系统去替代人工的工作,于是
计算机和网络技术的普及应用和迅速发展,不仅改变了传统教学的模式和教学环境,而且使教育资源数字化、网络化成为必然趋势。正是在这种趋势下产生了大量的教学资源。现阶段,由于
数据交换是指在两个或多个信息系统间实现数据的实时交互,以实现信息共享、达到信息资源的充分利用和优化配置。由于网络环境下的信息系统通常基于不同操作系统平台、异构数
随着制造企业的不断发展,其产品信息也日趋复杂,在产品整个生命周期内,对其进行一致的表示和描述是制造企业实现产品知识共享的关键;另外,RFID自动识别技术能够实时获取产品
本论文针对基于AVS标准的车载移动电视系统这个领域做了大量研究和实践。以车载移动电视的快速普及、AVS标准的产业化、流媒体技术应用丁移动通信网络平台为课题背景,提出了基
H.264/AVC视频压缩标准是国际电信联盟(ITU-T)的VCEG(视频编码专家组)和国际标准化组织(ISO/IEC)的MPEG(活动图像专家组)的联合视频组(JVT,Joint Video Team)开发的新一代数字