八亿电脑网
游戏盒子
当前位置: 首页 > 八亿电脑 > 电脑知识 >

心脏出血漏洞 Heartbleed 固定大小缓冲区分析(2)

时间:2015-03-13 22:36来源:网络 作者:win8e 点击:
游戏盒子


之所以花了大量的篇幅讲这样一个故事,是因为它透露出我觉得非常重要的几点:

缓冲区越界通常发生在程序中某个部分A分配内存,而实际需要的存储空间大小只有另一个部分B知道。
在程序中的同一个函数内部分配内存,并将其填充。这种方式解决了缓冲区分配的问题,而付出的代价是必须要让程序的另一个函数负责内存的释放。内存的分配和释放在程序的两个不同的函数中。
这种分配和释放在两个不同的函数将会导致程序的可用性问题,除非在编程语言上有系统的支持,否则很难绕开。
即使用户为了安全和通用性,需要接收这个现实,但是他们可能也无法接受动态分配内存引入的开销。

我想,程序员不愿为了安全而引入运行时开销,是很多安全性问题之所以普遍存在的原因。 我们将在下周详细聊聊这种现象。

本篇文章标签: 教程 Win10 win7 软件 Win8
发表评论