【发布时间】:2020-03-04 21:04:41
【问题描述】:
是否可以不在堆栈上执行您的 shellcode?有没有另一种方式来执行shellcode?在此先感谢
【问题讨论】:
标签: c gcc buffer-overflow shellcode
是否可以不在堆栈上执行您的 shellcode?有没有另一种方式来执行shellcode?在此先感谢
【问题讨论】:
标签: c gcc buffer-overflow shellcode
是的,有可能,但这里有很多话要说。
首先,堆栈上的代码通常无法在许多使用NX-bit 的现代设备上执行。
但更一般地说,如果您设法获得所需的权限,则可以使内存的任何部分成为可执行文件。这可以是堆、RAM、驱动器的任何区域。没关系。
堆栈只是最常见的默认攻击,但例如,shellcode 也可以利用堆溢出(有关说明,请参阅this answer)。
一种常见的攻击结构是:
希望这能回答问题
【讨论】: