问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

缓冲区是什么?缓冲区的溢出是什么意思?5

发布网友 发布时间:2023-10-19 11:32

我来回答

1个回答

热心网友 时间:2024-10-29 07:17

缓冲区溢出好比是将十磅的糖放进一个只能装五磅的容器里……

 堆栈溢出(又称缓冲区溢出)攻击是最常用的黑客技术之一。我们知道,UNIX本身以及其上的许多应用程序都是用C语言编写的,C语言不检查缓冲区的边界。在某些情况下,如果用户输入的数据长度超过应用程序给定的缓冲区,就会覆盖其他数据区。这称作“堆栈溢出或缓冲溢出”。

 一般情况下,覆盖其他数据区的数据是没有意义的,最多造成应用程序错误。但是,如果输入的数据是经过“黑客”精心设计的,覆盖堆栈的数据恰恰是黑客的入侵程序代码,黑客就获取了程序的控制权。如果该程序恰好是以root运行的,黑客就获得了root权限,然后他就可以编译黑客程序、留下入侵后门等,实施进一步地攻击。按照这种原理进行的黑客入侵就叫做“堆栈溢出攻击”。

  为了便于理解,我们不妨打个比方。缓冲区溢出好比是将十磅的糖放进一个只能装五磅的容器里。一旦该容器放满了,余下的部分就溢出在柜台和地板上,弄得一团糟。由于计算机程序的编写者写了一些编码,但是这些编码没有对目的区域或缓冲区——五磅的容器——做适当的检查,看它们是否够大,能否完全装入新的内容——十磅的糖,结果可能造成缓冲区溢出的产生。如果打算被放进新地方的数据不适合,溢得到处都是,该数据也会制造很多麻烦。但是,如果缓冲区仅仅溢出,这只是一个问题。到此时为止,它还没有破坏性。当糖溢出时,柜台被盖住。可以把糖擦掉或用吸尘器吸走,还柜台本来面貌。与之相对的是,当缓冲区溢出时,过剩的信息覆盖的是计算机内存中以前的内容。除非这些被覆盖的内容被保存或能够恢复,否则就会永远丢失。

  在丢失的信息里有能够被程序调用的子程序的列表信息,直到缓冲区溢出发生。另外,给那些子程序的信息——参数——也丢失了。这意味着程序不能得到足够的信息从子程序返回,以完成它的任务。就像一个人步行穿过沙漠。如果他依赖于他的足迹走回头路,当沙暴来袭抹去了这些痕迹时,他将迷失在沙漠中。这个问题比程序仅仅迷失方向严重多了。入侵者用精心编写的入侵代码(一种恶意程序)使缓冲区溢出,然后告诉程序依据预设的方法处理缓冲区,并且执行。此时的程序已经完全被入侵者操纵了。

  入侵者经常改编现有的应用程序运行不同的程序。例如,一个入侵者能启动一个新的程序,发送秘密文件(支票本记录,口令文件,或财产清单)给入侵者的电子邮件。这就好像不仅仅是沙暴吹了脚印,而且后来者也会踩出新的脚印,将我们的迷路者领向不同的地方,他自己一无所知的地方。

缓冲区溢出的处理

  你屋子里的门和窗户越少,入侵者进入的方式就越少……

  由于缓冲区溢出是一个编程问题,所以只能通过修复被破坏的程序的代码而解决问题。如果你没有源代码,从上面“堆栈溢出攻击”的原理可以看出,要防止此类攻击,我们可以:

1、开放程序时仔细检查溢出情况,不允许数据溢出缓冲区。由于编程和编程语言的原因,这非常困难,而且不适合大量已经在使用的程序;

2、使用检查堆栈溢出的编译器或者在程序中加入某些记号,以便程序运行时确认禁止黑客有意造成的溢出。问题是无法针对已有程序,对新程序来讲,需要修改编译器;

3、经常检查你的操作系统和应用程序提供商的站点,一旦发现他们提供的补丁程序,就马上下载并且应用在系统上,这是最好的方法。但是系统管理员总要比攻击者慢一步,如果这个有问题的软件是可选的,甚至是临时的,把它从你的系统中删除。举另外一个例子,你屋子里的门和窗户越少,入侵者进入的方式就越少。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
王奇 这个名字好不好 城建税等计入什么科目 灭火器多久保养一次 灭火器保养周期是多久? 朋友在北京想开一家超市的,请问什么地方适合?还有前期要准备什么? 恐龙宝宝漫游记之我爱我家2内容提要 我爱我家艳红为什么离婚 Faudel演唱的法语歌曲mon pays 的中文歌词,哈哈哈哈,谁有 Shy'm的Le blues de toi 歌词意思 ...那个t后面省略了什么 还有,希望能帮我翻译一下以下的歌词_百度... 地下城堡2小米版安卓APK如何下载 缓冲区溢出是什么意思?18 “QDW”是什么意思?有什么用?什么来历?有什么性能?1 浙江新能走势?2021年浙江新能股票的走势?浙江新能股份实时股价? ...我们只聊了有半个月,没见过面,她还在外地工作,我想见她,但她说当网... 婚内从父母那继承的房产已经约定归一方单独所有,离婚时另一方还有... 我百度云里很多电影为什么都不能看了??求解 早孕出血打黄体酮可以吗 清明古诗描写的景色有什么?7 我最自豪的那件事为题写一篇作文。48 清明这首诗描写了什么的景象?158 服装设计与工程专业需要一定的美术基础吗12 笔记本电脑忽然黑屏,电源键越还是亮着,是为什么1 大便不能控制,一分钟内说拉立即就要拉,咋办?6 低血压、贫血怎样治?4 关于建筑符号1 ...误把除数3看成8,算出的商是12,余数是1。正确的应该是多少?_百度... 清明这首诗描写了什么景物15 关于电脑开机显示器上方有一条绿色的横条 我是一名大一新生,入学开始,我加入了学生会的社团部,现在一年就快到了... 微信多开分身怎么不能用了?1 淘宝上绝对化语有"国际"这个词吗2 血橙哪个季节哪个地区出产的最好吃?34 闷骚委婉点怎么说6 形容一个人无耻说的隐晦点7 卡拉赞夜之魇掉落圣物么 2012年1月搬家黄道吉日我属羊79年3月23日生,老公属羊79年9月16i生,女... 用微信分身会被封号吗?29 是原来的手机号,手机号不用了,微信也登不上了,怎么办?820 在电路图中,这JMP叫什么,在pretues仿真里面该怎么搜...4 cadence原理图是用公制画的,我想把它转化成英制进行操作... 康复治疗技术职称考试第一年四科没过,第二年过了三科,第三年考...6 我的丢了,绑定的银行卡怎么取消? 报服装设计与工程专业需要绘画基础吗?386 学服装设计与工程要有美术功底吗4 清明这首诗用优美的生动的语言描述了一幅怎么样的图解清明时的景...1 东华大学的服装设计与工程专业需要美术基础么?前景怎样?具体学... 清明这首诗描写的时间是什么特定景物为,什么,人物心情是什么25 及以纸笔巡让宾客,勃不辞让是什么意思14 【清明】这首诗描写的时间是什么,特定景物为什么,人物心情是什...114 我怎么拉稀控制不住?14