缓冲区溢出指的是什么?

缓冲区是内存上的吧,硬盘上有么?他们之间有什么关系么?缓冲区溢出是数据分配的空间不够,那溢出的数据会跑哪里去?溢出攻击是怎么回事?看了知道上的回答还是不怎么明白,求高手进一步解答!谢谢

内存,一个程序谁请了一个 长度为 4的内存来存取数据,但是呢这时候数据长度确实8,那么8大于4,所以多出来4个长度的东西覆盖了原来内存上的东西。 如果运气好,这部分被覆盖的内容无关紧要,就无所谓了。 但是如果被覆盖的 内容刚好是一个函数的 返回地址。 那成寻运行到这个指令要跳转返回时,就不能回到正确位置上。 这个数据刚好可以被黑客随意控制,就等价于黑客可以控制程序流程,想跳到哪里都可以了。 所以黑客可以写一个很长的数据,不光为8长度,可以为更长,比如64长度的数据。。 这64的数据可以是一个攻击代码,木马,随意什么功能。然后程序就运行了这个功能。 这样就是缓冲区溢出攻击。

比如我可以写一个socket在这里连接我的电脑,然后传你一些木马并且安装上,因为这些行为都在你有漏洞的进程中执行的,这个进程往往是一些正版软件,杀软是不会拦截的。

这种漏洞在黑市上能卖不少钱,一般很难发现,容易发现的也基本被官方打了补丁。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-19
缓冲区一般是指 计算机内存中的堆栈溢出,和硬盘没什么关系 是内存中出现的 溢出攻击是通过溢出来控制计算机的指令序列,让计算机执行自己的恶意代码。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网