在内核中有 PaX 的 linux 中是否有可能溢出缓冲区。我想通过使用正确的输入更改返回地址来利用可执行文件。我使用的是 Ubuntu 10.04,我用 paxtest 对此进行了测试,但我不知道结果意味着什么。这是我系统上 paxtest 的结果:
可执行匿名映射:被杀死 可执行的 bss : 被杀死 可执行数据:被杀死 可执行堆:被杀死 可执行堆栈:被杀死 可执行匿名映射(mprotect):易受攻击 可执行 bss (mprotect):易受攻击 可执行数据(mprotect):易受攻击 可执行堆(mprotect):易受攻击 可执行共享库 bss (mprotect):易受攻击 可执行共享库数据 (mprotect):易受攻击 可执行堆栈(mprotect):易受攻击 匿名映射随机化测试:12 位(猜测) 堆随机化测试(ET_EXEC):13 位(猜测) 堆随机化测试(ET_DYN):14 位(猜测) 主要可执行随机化(ET_EXEC):12 位(猜测) 主要可执行随机化(ET_DYN):12 位(猜测) 共享库随机化测试:12 位(猜测) 堆栈随机化测试(SEGMEXEC):19 位(猜测) 堆栈随机化测试(PAGEEXEC):19 位(猜测) 返回函数(strcpy):易受攻击 返回函数(strcpy,RANDEXEC):易受攻击 返回函数(memcpy):易受攻击 返回函数(memcpy,RANDEXEC):易受攻击 可执行共享库 bss:易受攻击 可执行的共享库数据:已终止 可写文本段:易受攻击