微信 电脑版 HOOK(WeChat PC Hook)- 远程线程注入dll原理

时间:2024-04-17 17:29:43

Windows加载dll的特性
  1、Windows系统中,每个exe软件运行的时候,会加载系统模块kernel32.dll
  2、所有加载进exe软件的系统模块kernel32.dll,内存地址都是一样
  3、kernel32.dll中的LoadLibrary()函数用于加别载的dll
  4、dll内的函数相对dll模块的地址不变(偏移不变)

注入dll工具的原理
  1、获取目标进程的句柄
  2、通过句柄,在目标进程的内存里开辟空间
  3、把dll的路径写入到目标进程开辟的内存空间
  4、创建一个远程线程,让目标进程调用LoadLibrary
  5、释放目标进程开辟的内存空间

参考资料
  https://www.cnblogs.com/codex/p/10849200.html

源码: https://github.com/KongKong20/WeChatPCHook