欢迎来到天天文库
浏览记录
ID:49328894
大小:246.50 KB
页数:13页
时间:2020-02-04
《系统漏洞攻击第三课:缓冲区溢出原理.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第三课:缓冲区溢出原理认识缓冲区溢出缓冲区溢出的为危害缓冲区溢出的补救措施第三课:缓冲区溢出原理缓冲区溢出缓冲区是内存中存放数据的地方。在程序试图将数据放到计算机内存中的某一位置,但没有足够空间时会发生缓冲区溢出。第三课:缓冲区溢出原理第三课:缓冲区溢出原理第三课:缓冲区溢出原理缓冲区是程序运行时计算机内存中的一个连续的块,它保存了给定类型的数据。问题随着动态分配变量而出现。为了不用太多的内存,一个有动态分配变量的程序在程序运行时才决定给他们分配多少内存。如果程序在动态分配缓冲区放入太多的数据会有什么现象?第三课:缓冲区溢出原理它溢出了,漏到了别的地方。一个缓冲区溢出应用程序
2、使用这个溢出的数据将汇编语言代码放到计算机的内存中,通常是产生root权限的地方。单单的缓冲区溢出,并不会产生安全问题。只有将溢出送到能够以root权限运行命令的区域才行。这样,一个缓冲区利用程序将能运行的指令放在了有root权限的内存中,从而一旦运行这些指令,就是以root权限控制了计算机。总结一下上面的描述。第三课:缓冲区溢出原理缓冲区溢出指的是一种系统攻击的手段,通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。据统计,通过缓冲区溢出进行的攻击占所有系统攻击总数的80%以上。造成缓冲区溢出的原因是程序中没
3、有仔细检查用户输入的参数。第三课:缓冲区溢出原理缓冲区溢出就是在一个缓冲区里写入过多的数据。那怎样利用呢?第三课:缓冲区溢出原理example2.c-----------------------------------------------------------voidfunction(char*str){charbuffer[16];strcpy(buffer,str);}voidmain(){charlarge_string[256];inti;for(i=0;i<255;i++)large_string[i]='A';function(large_s
4、tring);}------------------------------------------------------------第三课:缓冲区溢出原理缓冲区溢出的为危害在当前网络与分布式系统安全中,被广泛利用的80%以上都是缓冲区溢出,其中最著名的例子是1988年利用fingerd漏洞的蠕虫。。第三课:缓冲区溢出原理而缓冲区溢出中,最为危险的是堆栈溢出,因为入侵者可以利用堆栈溢出,在函数返回时改变返回程序的地址,让其跳转到任意地址,带来的危害一种是程序崩溃导致拒绝服务,另外一种就是跳转并且执行一段恶意代码,比如得到shell,然后为所欲为第三课:缓冲区溢出原理缓冲区
5、溢出的漏洞被发现到利用以来一直都是网络安全领域的最大隐患,很多安全人士均对这些漏洞做了仔细的研究,但是缓冲区溢出的完全防止往往因为这样那样的人为或者其它的因素仍显得有点力不从心。第三课:缓冲区溢出原理正确的编写代码非执行的缓冲区检查数组边界程序指针完整性检查
此文档下载收益归作者所有