我在许多Poc上都看到过这一行,但是我想知道人们是如何使用豁免调试器来实现这一点的,还是我们需要将其自身逆转为窗口呢?是否有一种使用mona的方法或一些简单的方法?
# Return Address for Windows 7 32b SP1
ret = '\x25\xDF\xB8\x68'发布于 2019-03-21 07:03:00
一旦堆栈被正确覆盖,您将看到ESP (堆栈指针)具有有效负载(反向shell)启动的地址。
由于此地址在每次重新启动后都会更改,因此无法在漏洞代码中使用。由于地址存储在ESP中,我们所需要做的就是找到一个JMP ESP或PUSH ESP,以便程序逻辑跳转到我们的shell代码。
在免疫调试器中使用Mona的
首先搜索程序使用的所有DLL,这可以通过键入:
!mona modules这应该会给出一个带有DLL的列表。现在仔细搜索一个未启用DEP和ASLR的DLL。此外,确保地址不包含任何坏字符,如空字节、回车和换行。
找到之后,双击DLL并搜索命令:
JMP ESP或
PUSH ESP
RETN如果没有找到结果,请在菜单栏中单击"C“,然后通过键入以下命令搜索操作码"\xFF\xE4”(这是JMP ESP):
!mona find -s “\xFF\xE4" -m [dll file]如果找到PUSH ESP,则应该使用这个内存位置来跳转到shell代码。
因此,您在这些漏洞中看到的是执行JMP ESP的内存位置。
https://security.stackexchange.com/questions/205529
复制相似问题