Hook Dll 听起来挺高深,其实挺简单
我用大白话解释一遍
正常的程序A和他要调用的Dll B
注入程序C和他要替换的Dll D
A通过loadlibrary 函数加载B到自身内存空间
再说详细点,就是在A中开辟一片内存,然后把B放进去,通过B的地址来调用相关函数
我们要做的就是,替换B的地址为我们的假函数D的地址
通过OpenProcess,CreateRemoteThread,等等函数实现
说多了没用,代码里有详细的注释,一看就明白
用的是VS2015
运行截图
dll 里写的是 sum=a+b;
假dll里做了int tmp = sum(a, b + 8);操作
截断,更改,调原函数,返回值,这就叫做Hook
同理,比如说我要全屏截图,比如说LOL这种DX游戏,只要知道相关函数,就可以截图了
然后你还可以做些羞羞的事情,haha