【发布时间】:2016-01-20 21:17:30
【问题描述】:
我正在为大学作业实施原型堆栈保护机制。 我试图“强化”的测试二进制文件是一个静态链接的 elf 二进制文件,它有多个堆栈,这些堆栈被硬编码为 elf 部分。不同的堆栈由保护页(4096 字节部分)分隔。 保护页面应该是不可访问的,类似于 mprotect 的 PROT_NONE 会做的事情。我尝试在只读模式下使用带有 --set-section-flags 的 objcopy,但溢出其中一个堆栈仍然会导致数据被写入保护页面,这意味着它显然仍然是可写的。
如何仅使用 elf 部分标志(或类似的 elf 属性)使这样的部分无法访问?
【问题讨论】:
标签: elf