3

问题-

Linux 系统上是否有命令查看是否允许从堆栈执行?

背景-

执行需要缓冲区溢出的作业分配,将代码注入堆栈,并覆盖将指令指针设置为注入代码的返回地址。使用 GDB 单步执行时,一切看起来都很好,但是在尝试执行堆栈中的第一行时会出现段错误。指令指针更改到正确的位置,并且该指令是用于测试目的的 NOP。我想知道系统是否阻止从堆栈执行。

谢谢你。

4

1 回答 1

0

你试过 execstack 吗?=> stackoverflow.com/questions/6482759/… – 安蒂昨天

对于任何其他偶然发现这一点的人。“ps -u user”查找 PID,然后“pmap -x PID”并检查显示“stack”的行。如果缺少 x(execute),请键入“execstack -s 文件名”

在常规执行下仍然会出现段错误,即 ./filename,但现在在 GDB 下可以正常工作

于 2013-03-24T22:28:41.270 回答