level 8
JudgeOu
楼主
DLL注入的方法有两种:
1,利用系统钩子(windows hook)
2,通过远程创建线程注入
一般我们都是用第二种比较多,方法先使用WriteProcessMemory往目标进程写入执行代码,执行代码的具体内容,就是调用LoadLibrary去载入指定DLL,然后使用CreateRemoteThread去执行这段代码。这就是DLL注入的原理。之所以要绕几个圈,就是因为LoadLibrary函数只能往自己的进程载入DLL,而不能往别的进程载入DLL,所以,我们必须要在目标进程的地址空间中执行LoadLibrary,而不是在我们的注入器中去执行。
2014年12月02日 04点12分
1
1,利用系统钩子(windows hook)
2,通过远程创建线程注入
一般我们都是用第二种比较多,方法先使用WriteProcessMemory往目标进程写入执行代码,执行代码的具体内容,就是调用LoadLibrary去载入指定DLL,然后使用CreateRemoteThread去执行这段代码。这就是DLL注入的原理。之所以要绕几个圈,就是因为LoadLibrary函数只能往自己的进程载入DLL,而不能往别的进程载入DLL,所以,我们必须要在目标进程的地址空间中执行LoadLibrary,而不是在我们的注入器中去执行。