如何反转一个dll并调用它的函数?

逆向工程 拆卸 调试器 dll 补丁反转
2021-06-28 22:11:09

我有一个custom.dll在更大的应用程序中使用的。应用程序可执行文件导入此 dll 以使用其功能。但是此功能不会在应用程序的整个生命周期中使用,而是仅在特定事件发生时使用。例如,当我在应用程序控制台中输入内容时,将创建一个新线程并使用给定 dll 的某些功能。现在的问题是我无法在没有该应用程序可执行文件的情况下找出 dll 中到底发生了什么。我只有dll文件。我想扭转它。就像调试一个 exe 文件并逐步查看寄存器以找出发生了什么以及为什么会发生一样,只需对 dll 执行动态分析而不是静态分析。

更具体地说,dll 文件创建了一个特定的字符串,我想知道该字符串是如何创建的以及它存储在哪里以供控制台使用。

1个回答

你可以使用OllyDbg 的 loaddll.exe来加载一个 DLL 并调用(和调试)它的函数:

加载dll