有人能给我举一个例子,说明如何用字符串参数调用注入的dll函数吗?我试着用我知道的方式去做,但却得到了错误的结果。我用VirtualAllocEx分配内存,然后用WriteProcessMemory编写字符串参数,然后调用CreateRemoteThread,将字符串参数作为lpParameter参数传递。我调用的DLL函数有以下原型:
DWORD TestFunction(LPVOID str);据我所知,当CreateRemoteThread调用此函数时,str包含一个指向传递字符串的指针。但它没有;它含有一些垃圾。看起来,str参数指向错误的地址。我做错了什么?
以下是整个项目文件:
http://pastebin.com/gh4SnhmV
http://pastebin.com/Sq7hpSVx
http://pastebin.com/dvgXpUYz
发布于 2011-07-06 05:47:57
您可能会混淆VA空间,并在地址空间而不是目标空间中传递一个指针。
另外,请不要发布试图将线程注入到其他进程中的软件,从一般意义上说,这是非常困难的,就像试图在某人跑马拉松时对他们进行操作一样。
https://stackoverflow.com/questions/6589776
复制相似问题