基于备份控制流信息的缓冲区溢出监测技术.PDF

基于备份控制流信息的缓冲区溢出监测技术.PDF

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于备份控制流信息的缓冲区溢出监测技术.PDF

26 《高性能计算发展与应用》 2016年第一期 总第五十四期 基于备份控制流信息的缓冲区溢出监测技术 1,2 1 1 2  谢汶兵 马晓东 李中升 牛夏牧 1江南计算技术研究所 无锡 214083 2哈尔滨工业大学 计算机学院 哈尔滨 518000 摘要: C/C++在提供灵活的使用方式和高效目标码的同时,由于缺少边界检查机制,缓冲区溢出 成为C/C++程序面临的一种严重的攻击威胁。给出了一种缓冲区溢出攻击的动态防护方法。使 用在库中声明的数组来备份函数的控制流信息,包括返回地址和栈帧指针,来动态监测非法的 篡改行为。本方法可以对缓冲区溢出攻击中的直接攻击和间接攻击均有效防护。通过RIPE基准 平台和两道实际应用的测试以及理论比较表明该方法的有效性。 关键词:缓冲区溢出、控制流备份、返回地址、帧指针、动态监测、RIPE 1. 概述 缓冲区溢出的情况。缓冲区溢出是向一个有限区间 在网络时代,随着软件规模的扩大、复杂度 中拷贝过长字符串,从而覆盖相邻区域的内容。计 的提高,软件的安全性成为一个日益突出的问题。 算机程序在运行时不可避免地对缓冲区进行读写, [1] 而缓冲区的大小,通常在动态运行时才能准确获 据CERT安全小组统计 ,自1995年到2006年安全漏 洞报告累计达到30780个;操作系统中超过50%的 得。如何避免缓冲区读写越界,是提高软件安全性 安全漏洞都是由缓冲区溢出引起的。2011年,US- 的一个重要问题。 [2] 缓冲区溢出攻击包括栈溢出、堆溢出、格式化 CERT发现了超过200个缓冲区溢出漏洞,其中很 [4-5] 多是存在于诸如Microsoft,Adobe和Google等商业软 字符串攻击 等攻击类型。其防护手段包括静态的 件中。这些与缓冲区溢出相关的安全漏洞正在被越 数组边界检查、堆栈的不可执行、动态的缓冲区溢 [6] 来越多的蠕虫病毒所利用。与此同时,网络安全形 出监测以及库函数的安全增强等 。而相比堆缓冲区 势日趋严峻,大规模互联网攻击事件频繁发生。在 溢出和格式化字符串攻击的漏洞,栈缓冲区溢出漏 这些攻击事件中,最常见的攻击是针对系统和程序 洞仍占多数,且攻击者利用栈缓冲区溢出漏洞的手 自身存在的缓冲区溢出漏洞编写的攻击程序。攻击 段多样化,攻击更隐蔽。 者通过对缓冲区的越界写入,修改程序的控制流信 本文从编译器角度来防范缓冲区溢出攻击,提 息,并植入恶意代码进行攻击,例如获得高等级的 出并实现了一种通过备份程序控制流信息的防御缓 [3] 冲区溢出攻击的方法。在程序运行至每个函数的入 权限、窃取信息等 。 C/C++是一种被广泛使用的编程语言,它们在提

文档评论(0)

wendang_12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档