如何使用dll注入?

时间:2010-05-02 00:21:26

标签: visual-c++ dll

我正在寻找如何将dll注入程序(exe或dll等)。我一直在谷歌dll注射,但我没有找到任何非常有用的东西:(。我没有非常使用dll所以我不知道该怎么做,我真的可以在这上面使用一些帮助。

呃,我唯一真正找到的是setwindowshookex,但我找不到它的任何例子,我不知道如何使用它。任何问题只是问,我会尽力帮助。

编辑嘿,我正在使用Google搜索,这看起来像是关于dll注入的东西,值得一看,但我无法运行代码:\(How to hook external process with SetWindowsHookEx and WH_KEYBOARD

1 个答案:

答案 0 :(得分:0)

Jefferey Richter在Programming Applications for Microsoft Windows中描述了我最熟悉的方法。我之所以提到这一点,是因为即使你没有亲自动手本书,也可能会有样本代码浮动。我想他也可能写过一些期刊文章。他还提到了几种替代方法,我将从记忆中仅描述一种方法。他也可能写了一些相关的MSJ / MSDN文章。

无论如何,基本的想法是使您要加载DLL的进程发出对LoadLibrary的调用。这是使用CreateRemoteThread LoadLibary的{​​{1}}地址和lpStartAddress命名DLL的​​字符串地址完成的。使用lpParameter来安排和定位字符串以在远程进程中分配一些内存,并使用VirtualAllocEx来填充字符串。

PSEUDO CODE:

WriteProcessMemory