c – 将sleep()注入外部进程的函数
作者:互联网
我知道如何将DLL注入正在运行的进程中,以及如何利用进程内部使用的函数,例如
void__stdcall remoteMethod(unsigned short id)
{
typedef void (__stdcall *pFunctionAddress)(unsigned short);
pFunctionAddress pMyFunction = (pFunctionAddress)(0xCAFEBABE);
pMyFunction(id);
}
现在我想在运行过程中将sleep()添加到现有方法中 – 这是程序的主循环,并且不会停止一秒并耗尽所有处理能力.
我知道,对于像绕道这样的框架我可以创建一个调用我的函数然后是原始函数的trampoline函数 – 但是我的问题是while(1)循环在外部进程的函数内.所以我知道循环开始的偏移 – 之后我想首先调用sleep()然后继续循环的正常路由.
到目前为止,我看到的唯一选择是二进制编辑程序,但这不是一个好的解决方案.
有什么建议吗?谢谢
解决方法:
我想你在这里太可爱了.只需在计时器上交替调用SuspendThread / ResumeThread即可.我知道这很难看,但你不会在我怀疑的任何选美比赛中输入你的解决方案.
标签:c-3,detours,inject,c,dll 来源: https://codeday.me/bug/20190903/1795091.html