堆栈的概念: 堆栈是一种人为设置的计算机软件模块装置,它能够向里面压 入数据,也能弹出数据,但必须遵循后进先出原则。
举例1:家里吃饭的碗,通常在洗干净后一个一个地落在一起 存放,在使用时,若一个一个地拿,一定最先拿走最上面的那只 碗,而最后拿出最下面的那只碗。
举例2:在建筑工地上,使用的砖块从底往上一层一层地码放, 在使用时,将从最上面一层一层地拿取。 后进先出(Last In First Out),简称为LIFO线性表。
举例3:手枪、冲锋枪、机关枪的子弹匣的子弹装填,先装进 的子弹后射出。 特征:后进先出。或者说,先产生的数据后被取用。
网页堆栈溢出通常是:网页木马通过向程序的缓冲区(堆、栈等)中写入超出其长度的数据,造成缓冲区溢出。
缓冲区的溢出可以破坏程序执行流程,使程序转向执行其它指令。利用缓冲区溢出可以达到攻击主机的目的。
缓冲区溢出是指:当计算机向缓冲区内填充数据位数时超过了缓冲区本身的容量溢出的数据覆盖在合法数据上,理想的情况是程序检查数据长度并不允许输入超过缓冲区长度的字符,但是绝大多数程序都会假设数据长度总是与所分配的储存空间相匹配,这就为缓冲区溢出埋下隐患。 操作系统所使用的缓冲区 又被称为“堆栈”。
在各个操作进程之间,指令会被临时储存在“堆栈”当中“堆栈”也会出现缓冲区溢出。 目前有四种基本的方法保护缓冲区免受缓冲区溢出的攻击和影响。
分别是: 编写正确的代码,非执行的缓冲区,数组边界检查,程序指针完整性检查。 试试这个 工具一》internet选项一》高级 禁用脚本调试 亲,如果我的回答对您有帮助,请赐个好评吧。
谢谢。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
蜀ICP备2020033479号-4 Copyright © 2016 学习鸟. 页面生成时间:2.730秒