【逆向】用汇编代码注入器远程调用call

 

准备

1.demo1.exe 一份

2.x64dbg(实际是x32dbg)

3.汇编注入器

 


 

1.demo1.exe

 

点击中间的按钮会弹出一个信息框提示内容

 

 

2.使用x64dbg分析找出按钮的call

将软件拉进x64dbg,F9运行

 

 

汇编代码区---右键---搜索--当前区域---字符串

找到我们提示框的内容,双击转到汇编区

 

 

直接能看到弹出消息框的call,

但是现在要找的不是这个call,该call需要push参数 比较麻烦,要找触发按钮的call,

 

 

我们是通过按钮点击后,才触发信息框的call,那么按钮call一定是在弹出消息call的上面,所以要往上找 

 

上面这里有一个很接近信息框call,疑似按钮call 我们这里F2下断点(因为不知道是不是这个所以下断点,然后在点击一下按钮,看看有没有被断下)

 

 

 

 

断点后在点击按钮,发现成功被断下

寄存器eip也是指向这里  这就是按钮的call了 

记住地址,是  00401007

 

 

 

然后把断点取消,F9运行程序,让程序恢复正常

 

下面就可以用汇编注入器调用call了

 

界面如下,

可以按左上角的电脑图标,选中demo1.exe的进程,获取pid

也可以直接小电脑图标右边的图标,按住后选中软件 demo1 

 

 

汇编代码:

mov eax,0x401007
call eax
retn

 

因为不能直接调用call,所以需要用寄存器存call的地址,再调用寄存器

最后需要retn返回,否则堆栈不平衡会崩溃。

 

这次不点击软件上的按钮,直接注入代码,直接弹出信息框,调用call成功

 

 

posted @ 2022-05-16 15:27  Hello霖  阅读(2730)  评论(3编辑  收藏  举报