《逆向工程核心原理》学习笔记9
DLL注入——注入过程
一、DLL注入简介
DLL注入指的是向运行中的其他进程强制插入特定的DLL文件。从技术细节来说,DLL注入命令其他进程自行调用LoadLibrary() API,加载(Loading)用户指定的DLL文件。DLL注入和一般的DLL加载的区别在于,加载的目标进程是自身或者其他进程
二、DLL注入示例
- 改善功能与修复Bug
- 消息钩取
- API钩取
- 其他应用程序
- 恶意代码
三、DLL注入实现的方法
向某个进程注入DLL时主要使用以下三种方法:
DLL注入方法
- 创建远程线程(CreateRemoteThread() API)
- 使用注册表(AppInit_DLLs值)
- 消息钩取(SetWindowsHookEx() API)
四、CreateRemoteThread()
通过练习示例myhack.dll,了解通过创建远程线程进行DLL注入的方法。
首先将InjectDll.exe和myhack.dll放在同一目录下
运行notepad.exe程序
此处有一个问题
我一开始运行的是书中的示例中使用的notepad.exe&#