Readactor: Practical Code Randomization Resilient to Memory Disclosure阅读笔记(一)

本文深入探讨Readactor系统,这是一种旨在防范代码重用攻击,特别是ROP攻击的实用防御策略。论文强调了面对内存泄露时现有代码随机化方法的局限性,并提出Readactor的核心思想是通过代码产生范式和硬件支持实现execute-only内存,同时隐藏代码指针以抵抗直接和间接内存泄露。实验结果显示,Readactor在复杂软件上的实施仅带来6.4%的平均性能开销。
摘要由CSDN通过智能技术生成

Readactor:代码随机化应对内存泄漏问题-阅读笔记(一)

前段时间在学习信息系统安全方面的内容,阅读了很多相关论文。其中对Readactor: Practical Code Randomization Resilient to Memory Disclosure这篇论文阅读之后,我进行了一些整理和总结,讨论了我对这篇论文的理解、分析和评价,论文工作的核心思想和主要贡献,其中包括论文所针对的问题和所实现的目标,供有需要的人参考。这篇论文刚开始读的时候我感觉不是很好理解,它涉及到了软件代码安全和硬件保护等方面的知识,而且顶级会议S&P上的文献,果然也是很难懂的。好了,下面我们就开始吧。

报告目录

  • 要解决什么问题
  • 相关背景知识
  • 该领域研究现状
  • 本论文实现目标
  • 论文核心思想
  • 论文主要贡献
  • 本文具体工作内容分析
  • 论文中的攻击模型和假设
  • 实验结果评价
  • 结论

要解决什么问题

本文提出的方法主要是针对解决代码重用攻击(Code-reuse attacks),比如ROP攻击。这些攻击严重威胁了现代软件的安全,因此急需设计一种实用且有效的防御方式来抵抗代码重用攻击。然而之前提出的所有方法都存在问题,有的方法存在内存泄漏漏洞,有的方法在实际商业系统的部署中无法实施。因此本文要解决的问题就是既能防止代码重用攻击,又能避免其他方法存在的内存泄漏和无法实际操作使用的问题。

相关背景知识

本文提到了许多重要的概念和名词,掌握它们以及相关背景知识有助于理解整篇文章。

1、ROP(Return-oriented Programming)

返回导向编程技术。核心思想是在整个进程空间内现存的函数中寻找适合指令片断(gadget),并通过精心设计返回堆栈把各个gadget拼接起来,从而达到恶意攻击的目的。构造ROP攻击的难点在于,我们需要在整个进程空间中搜索我们需要的gadgets,这需要花费相当长的时间。但一旦完成了“搜索”和“拼接”,这样的攻击是无法抵挡的,因为它用到的都是内存中合法的的代码,普通的杀毒引擎对ROP攻击是无计可施的。

2、DEP(Data Execution Prevention)

数据执行保护。DEP是一套软硬件技术,能够在内存上执行额外检查以帮助防止在系统上运行恶意代码。可帮助防止数据页当作代码执行,

### 回答1: 这个错误提示是在Linux系统下遇到的,它表示无法禁用地址空间随机化。地址空间随机化是一种安全机制,它会在每次进程运行时将代码、数据、堆栈等映射到随机的内存地址上,使得攻击者难以利用预设的内存布局进行攻击。 然而,在某些情况下,这种机制可能会影响某些应用程序的正常运行,需要禁用它。但是,由于安全考虑,只有root用户才能够禁用地址空间随机化,因此非root用户会看到类似的错误提示。解决这个问题的方法是使用root用户身份执行相应的命令,或者修改相关系统配置文件来永久禁用地址空间随机化。 ### 回答2: 上述错误信息提示了“禁用地址空间随机化失败:操作不允许”。这是由于操作系统禁止了对地址空间随机化功能进行修改的权限导致的。 地址空间随机化是一种提高操作系统安全性的技术,它会在运行程序时随机化程序的内存地址,使得攻击者难以利用已知的内存布局进行攻击。这个功能通常默认是开启的,因为它带来了很大的安全性提升。 然而,在某些情况下,我们可能需要禁用地址空间随机化。例如,某些应用程序可能与某些特定的库或软件包兼容性有问题,需要禁用地址空间随机化才能正常运行。尝试禁用地址空间随机化时,如果我们没有足够的权限,操作系统将会拒绝我们的请求,出现上述错误信息。 解决这个问题的方法是以root用户或具有管理员权限的用户身份运行命令,通过提升权限来修改操作系统的设置。具体的步骤可能因操作系统而异,但一般包括使用sudo或su命令来提升权限,并通过特定的命令或编辑配置文件的方式禁用地址空间随机化。 需要注意的是,禁用地址空间随机化可能会降低系统的安全性,因此在禁用前需要仔细评估风险和必要性。同时,禁用地址空间随机化可能会涉及到操作系统的相关配置文件和命令,建议仔细阅读相关文档或咨询专业人士的建议,以确保正确操作。 ### 回答3: 这个错误提示是在试图禁用地址空间随机化时出现的,错误信息表明操作不被允许。地址空间随机化是一种安全机制,用于随机分配系统中的进程和程序的内存地址,以增加攻击者进行内存攻击的难度。在某些情况下,用户想要禁用地址空间随机化,可能是为了兼容某些旧软件或进行一些特殊的调试工作。 然而,由于该操作有潜在的安全风险,因此一些系统会限制普通用户对其进行操作。通常情况下,只有具有管理员权限的用户才能禁用地址空间随机化,以确保系统的安全性。 要解决这个问题,你可以尝试以下几个方法: 1. 以管理员身份运行程序:使用sudo或者以管理员身份登录系统,然后再次尝试禁用地址空间随机化,看看能否解决问题。 2. 检查系统安全设置:查看系统的安全设置,确认是否允许普通用户禁用地址空间随机化,如果不允许,则只能由管理员进行该操作。 3. 检查软件兼容性:如果你试图禁用地址空间随机化是为了兼容某些软件,那么你可以尝试联系软件的开发者,寻求他们对于该问题的解决方案或建议。 总之,要解决这个问题,你需要以管理员身份运行程序或者与系统的管理员联系,以获取更高权限来禁用地址空间随机化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值