缓冲区溢出利用研究.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
缓冲区溢出利用研究   摘要:探讨了缓冲区溢出攻击的原理,研究了国内外缓冲区溢出攻击的分类,对三种缓冲区溢出攻击类型进行了深入的技术分析探讨,最后对三种攻击类型进行总结和分析比较。   关键词:缓冲区溢出;栈溢出攻击;堆溢出攻击;Bss溢出攻击   中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)19-30041-03   Utilization of Buffer Overflow   ZHONG Da-fu1, TANG Yi-fang1, LI Xiao-Jian2   (1.School of Computer Science and Engineering, Guangdong Institute of Science and Technology, Zhuhai 519090, China; 2.School of Information Engineering, University of Science and Technology Beijing, Beijing 100083, China; 3.School of Computer Science, Beihang University, Beijing 100083, China)   Abstract: Discussion on the principle of buffer overflow attacks, Research at home and abroad buffer overflow attacks Category, Analysis the three types of buffer overflow attacks technical in-depth. Finally, Summary and analysis and comparison the three types of overflow attacks.   Key words: buffer overflow;stack overflow attack;heap overflow attack;bss overflow attack      1 引言      1988年11月2日康乃尔大学计算机系的一位名叫Robert T. Morris, Jr.硕士研究生――利用缓冲区溢出漏洞――制造了“Morris Worm”,在短时间内就感染了60000多台计算机[1],对ARPA网(互联网的前身)的计算机系统造成了巨大的破坏。缓冲区溢出漏洞非常普遍,据绿盟科技每月公布的安全漏洞中,缓冲区溢出漏洞占了大部分,如BSD上存在的打印守护进程远程缓冲区溢出漏洞、Sun OS上的Solaris whodo本地缓冲区溢出漏洞、Windows下IIS4、IIS5某些版本在处理超长文件名时的缓冲区溢出漏洞,等等。但在“Morris Worm”事件之前和之后的一段时间里,人们对此类攻击技术所知无几。直到1996年11月,Aleph One在Phrack magazine杂志上发表了“Smashing the stack for fun and profit”[2]的文章后,利用缓冲区漏洞进行系统攻击的事件就逐年大幅增加,诸如Code Red worm[3]、SQL slammer worm[4]、Blaster worm[5]等都是典型的缓冲区溢出攻击事件。据CERT(Computer Emergency Response Team)统计,目前,利用缓冲区溢出漏洞进行的攻击已经占到整个网络攻击次数的一半以上。   缓冲区溢出攻击,可以导致程序运行失败、系统崩溃、重新启动甚至整个网络瘫痪等效果。更为重要的是,可以利用缓冲区溢出执行非授权指令,甚至取得系统特权,从而给予攻击者想要的一切。因此,哪怕是一次不成功的缓冲区溢出攻击,也可以使服务程序宕掉,造成拒绝服务(Deny of Service)攻击的效果。      2 缓冲区溢出原理      所谓缓冲区,是指计算机在内存区域开辟一段连续内存块,用以存放相同数据类型的多个实例[3],应用最多的缓冲区类型是字符数组。缓冲区溢出是指当某个用户/进程试图往程序中一个固定长度的缓冲区放置比原初分配的存储空间还要多的数据的时候,通常会导致超越存储边界,从而影响相邻内存空间的数据。造成缓冲区越界的根本原因是由于 C 和 C++ 等高级语言里,程序将数据读入或复制到缓冲区中的任何时候,所用函数缺乏边界检查机制,这些函数包括 strcpy()、strcat()、sprintf()、vsprintf()、gets()、scanf()、fscanf()、sscanf()、vscanf()、vsscan

文档评论(0)

heroliuguan + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档