什么是堆栈随机化以及它如何防止缓冲区溢出攻击



我从一本书中读到,缓冲区溢出可能被用作注入攻击系统的漏洞利用代码的一种方式。堆栈随机化是防止此类攻击的有效方法之一。

我不明白什么是堆栈随机化以及它如何防止这些攻击?

不是堆栈随机化,而是击败(或使更困难的)堆栈或缓冲区溢出的技术称为地址空间布局随机化(ASLR)。 这背后的理论是尝试随机化项目在内存中的位置,以使注入恶意代码的任务更加困难。 某些缓冲区溢出和堆栈溢出攻击依赖于了解项在内存中的位置,以便能够注入可以进行有效内存引用的代码。

所有这一切的困难在于,即使有这样的机制,仍然可以注入自包含代码,这些代码可以在运行时进行有效的相对内存引用,从而允许恶意代码执行。

查看堆栈溢出上的这篇文章,其中包含有关缓冲区溢出的更多信息的链接。

最新更新