首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >KASLR真的提供了更多的防范漏洞的安全吗?

KASLR真的提供了更多的防范漏洞的安全吗?
EN

Security用户
提问于 2014-10-06 14:39:52
回答 1查看 4K关注 0票数 13

我知道ASLR是如何工作的,它是如何在Linux和Windows系统上实现的。它提供了一个额外的保护层,恶意软件必须加以考虑。但如今,随着计算机的长期使用,ASLR似乎并没有像我们所希望的那样对地址空间进行随机化。Windows 8有采取额外步骤以确保ASLR是有效的。

当我构建和升级我的Linux内核时,我才发现了内核级的ASLR,并注意到在引导时它说:

KASLR not enabled

在做了一些搜索之后,我在KASLR上发现的并不多。所以现在我很好奇这里有没有人有经验。

  1. KASLR值得吗?它是否提供了一个显著的优势?我将不得不重建我的内核,配置它为KASLR和所有的爵士乐。不可怕,但有点烦人。
  2. 这在Windows世界中存在吗?如果是的话,Windows在实现方面做得更好吗?

或者世界还没准备好.

EN

回答 1

Security用户

回答已采纳

发布于 2014-10-07 12:55:08

在Linux发布当天,KASLR受到了严厉的批评,而且在那一天也被打败了。grsecurity公司的“花花公子”就此写了一篇文章. (连同LWN评论),我只想简单地总结一下。我强烈建议阅读原始资料。

正如我们都知道的,地址空间布局随机化最初是通过随机设置堆栈上许多指针的位置来使攻击复杂化的。击败ASLR需要以下任一项:

  • 暴力,直到你意外地找到正确的随机地址(这需要重新启动应用程序,几乎从来不适用于KASLR)
  • 检索泄漏内存布局信息的指针

第二种选择对于内核非常有希望:它们不可能有太多的随机偏移量,因为一些硬件配置可能有有限的地址空间,而最重要的是内核不能在整个生命周期中更改它们的偏移量!这意味着一个单一的内存布局泄漏将击败KASLR,直到机器重新启动。事实证明,这种错误据说经常发生在斯彭德。

这正是Linux的弱点,甚至是Spender所说的“失败”的原因。这一机制不是为内核设计的。如果你想要更多的细节,一定要读他的文章。他确实谈到了其他实现,您应该从上面的要点中了解到,不只是实现薄弱,而是设计。与传统的ASLR相比,KASLR在如何实施方面需要更多的注意,因为开发条件要好得多。

编辑:很显然,你只是一个谷歌搜索远离了解如何利用Windows实现

票数 7
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/69054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档