0

问题


你能告诉我一种使用 IDA pro 通过 rundll32.exe 调试具有特定参数的 DLL 导出函数的方法吗?

rundll32.exe 调用带有无意参数的导出函数。

细节


我在进程选项中使用了以下设置来调试 Windows10(x64) 中的 32 位 DLL。

应用程序:C:\Windows\SysWOW64\rundll32.exe

输入文件:C:\Users\xxxx\AppData\Local\Temp\92D7.dll

目录:C:\Users\xxxx\AppData\Local\Temp

参数:C:\Users\xxxx\AppData\Local\Temp\92D7.dll,abc arg1 arg2


开始调试后,我可以在堆栈中看到从 rundll32 传递的参数。

第一个参数:从 CreateWindowExA() 返回的窗口处理程序

第二个参数:DLL 的 BaseImage

第三个参数:指向“arg1 arg2”的指针

第 4 个参数:“arg1 arg2”的大小

在此处输入图像描述

这就是为什么,导出函数被调用如下。

abc(hwnd, baseImage, "arg1 arg2", sizeof("arg1 arg2"));

我想知道如何称呼它如下。

abc("arg1", "arg2");

如果无法通过rundll32,我将编译一个简单的二进制文件来调用它。

4

0 回答 0