我挂了一个dll,得到了这个过程的句柄。我想在dll中创建一个函数,并执行一些。 (我知道如何跳到那里,我的问题是复制) 假设我的函数看起来像:
void Test()
{
PUSH EAX;
POP EAX;
}
我想复制这个,到目标进程的末尾(没有指令,到处都是00),让我们说地址是0x12345
所以当我调试程序时,我想看看
00012345 PUSH EAX
00012346 POP EAX
我尝试使用memcpy,但它似乎没有用。 提前谢谢。
答案 0 :(得分:1)
您需要说服被挂钩的进程加载另一个DLL,或者说服它使用写入+执行权限位调用VirtualAlloc
,然后在DLL中使用新代码或将其复制到已分配的内存中 - 请记住,您需要在已分配的内存中重新定位它,往往更容易将另一个DLL注入进程。肯定有相当多的“作弊”。