基于内存更新记录的漏洞攻击错误定位方法

来源 :南京大学 | 被引量 : 0次 | 上传用户:blueeyes
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网和计算机应用的的迅猛发展,软件的安全问题已经成为计算机系统安全的一个至关重要的问题。如今的软件越来越复杂,不可避免包含着程序漏洞。程序漏洞攻击威胁日益严重。其中基于内存腐败漏洞的攻击最为普遍,如缓冲区溢出和格式化串漏洞。漏洞攻击带来了巨大的经济损失,迫切需要我们对各种漏洞攻击进行剖析,分析其表现、分类和本质,以期有针对性地防范。   要堵住程序漏洞,最根本和有效的做法还是应当从软件的载体--“程序”出发,检测出程序中的漏洞,定位出漏洞的位置,然后修复该漏洞。自动的错误定位使得程序开发者可以迅速地定位程序漏洞,修补程序漏洞。   本文提出一种针对内存腐败漏洞攻击的自动错误定位方法。基于内存更新操作记录,我们可以回溯找到程序源代码中腐败关键数据的语句。从而提供有益的信息修复漏洞并生成最终补丁。   我们的方法的基本思想是在程序运行时动态记录其内存更新操作,为后续的错误回溯诊断定位提供依据。   首先,我们利用C语言程序转换工具CIL在程序可能的漏洞攻击点插入一小段记录代码,使得程序在运行时能动态记录内存操作。   然后,我们利用地址随机化技术来检测针对内存腐败漏洞的攻击。漏洞攻击在地址随机化的程序上会导致程序崩溃,因此,我们截获该崩溃信号自动调用我们的错误诊断机制。   最后,通过分析程序出错时的内存镜像及记录的内存更新操作,回溯定位到导致程序错误的漏洞语句。   为检测该方法针对内存腐败漏洞攻击错误定位的效果,我们在Linux上实现了原型系统。我们使用由Wilander开发的缓冲区溢出测试平台测试方法的有效性,同时对几个真实的带有漏洞的GNU工具软件进行漏洞攻击的错误定位,实验证明我们的方法有效的定位到了程序漏洞的源程序行。
其他文献
从20世纪60年代至今,地理信息系统(GIS)已迅速发展成为一个独特的研究与应用领域,并形成一个全球性的重要行业。GIS的应用非常广泛,它可以应用在公用事业、电信、交通、城市应急
随着喷墨技术及其应用的高速发展,喷墨质量的自动和精确检测越来越重要。喷头喷出的墨滴运动是喷墨质量的直接和重要表现,墨滴运动的主要特征是大小、长度、飞行速度、飞行方向
虚拟环境是一种逼真的视、听、触觉一体化的计算机生成环境,用户可以借助必要的装备以自然的方式与虚拟环境中的物体进行交互作用、相互影响,从而获得亲临等同真实环境的感受和
Internet正在由最初的内容服务的提供者开始逐渐发展成为以提供计算能力为核心的高层次应用服务的提供者。越来越多的计算资源以服务的形式加入到Internet中,通过某种方式实现
句法分析是自然语言处理中的一个基本问题。许多自然语言处理中的任务,比如语义分析、机器翻译、信息抽取等,其完成的好坏依赖于句法分析的准确率。另一方面,话语是人与人之间交
资源空间模型是面向互联网络环境的基于正交分类语义的资源组织模型。它采用多维资源空间的方式组织资源,支持有效的资源管理。本论文的创新点主要包括:   1.提出资源空间模
WinWin项目管理理论提出项目成功必须让所有的涉众达到共赢。如何让涉众达到共赢是需求协商需要解决的问题。实践证明Easywinwin,ARENA,ARENA-M这些基于WinWin的协商工具在获取
基于内容的视频检索技术在过去十几年取得了很大进展,但是由于视频内容底层特征与高层语义之间存在“语义鸿沟”,视频内容无法有效地映射到用户的查询语义。交互式视频检索技术
随着大量数据以XML格式保存,针对XML文档的关键词检索技术已经成为信息检索和数据库等相关领域的研究热点。本文通过研究XML文档树的特点以及杜威ID的相关性质,提出了求解SLCA
真空定向结晶铸造炉是针对特有材料结合特有工艺完成定向结晶一次成型的铸造过程的生产设备。由于是针对特有工艺过程,操作员要在操作台上操作生产过程,包括温度控制时人工整