ROP是一种高级的堆栈溢出攻击。操作系统针对栈溢出漏洞的措施:数据执行保护(data execution prevention)技术,拒绝执行内存中user可写的区域。
ROP允许攻击者在安全防御(不可执行的内存和代码签名)的情况下执行代码。
Return-into-library technique: 在data exectuion prevention的前提下,attacker只可以利用在executable memory中的code,如代码区或者公共链接库中的code. Shared libraries (eg. libc)中通常包含系统调用或其他功能的代码,因此更多被利用。
Borrowed code chunks:
Blind ROP:
待续
时间: 2024-12-25 05:55:40