缓冲区溢出-没有足够的空间用于Shellcode

时间:2018-11-15 14:31:41

标签: reverse-engineering buffer-overflow exploit

我正在练习缓冲区溢出。经过一番摸索之后,我成功地使应用程序崩溃并覆盖了确切的4个字节的EIP,然后成功跳转到保存了我的一些有效负载的ESP(有效负载的开始为40字节,另外我注意到EBP也链接到我的其他有效负载有效负载的一部分,但也有40字节(我可以成功地将流重定向到EBP的shellcode部分。)

我尝试运行egg-hunter,但是因为它的Windows x64,hunter shellcode的长度为46字节,所以它无法以我拥有的40字节空间运行,而且我也没有发现缓冲区剩余的任何迹象猎人会找到它的。

有关缓冲区的一些信息 缓冲区=“ A” * 7 + ret +“ ^” +“ B” * 1000(仅40个可用)

  • 我可以将缓冲区中的“ B”位置替换为“ ^”,但是存在相同的问题
  • “ ^”是导致崩溃的符号
  • 7个字节后eip覆盖
  • B是有效负载的其余部分,但只有40个字节可用,其余只是截止
  • buffer =“ A” * 7 + ret + 在这里我还可以放置40个字节 +“ ^” +“ B” * 1000,我在Egg Hunter及其作品中尝试过仍然我有一点缓冲和同样的问题.. 有什么想法吗?

谢谢

0 个答案:

没有答案