C#进程注入.docVIP

  • 13
  • 0
  • 约1.02万字
  • 约 8页
  • 2017-10-02 发布于山西
  • 举报
C#进程注入.doc

C#进程注入 使用CreateRemoteThread和LoadLibrary技术的步骤如下: 1. 得到远程进程的HANDLE(使用OpenProcess)。 2. 在远程进程中为DLL文件名分配内存(VirtualAllocEx)。 3. 把DLL的文件名(全路径)写到分配的内存中(WriteProcessMemory) 4. 使用CreateRemoteThread和LoadLibrary把你的DLL映射近远程进程。 5. 等待远程线程结束(WaitForSingleObject),即等待LoadLibrary返回。也就是说当我们的DllMain(是以DLL_PROCESS_ATTACH为参数调用的)返回时远程线程也就立即结束了。 6. 取回远程线程的结束码(GetExitCodeThtread),即LoadLibrary的返回值――我们DLL加载后的基地址(HMODULE)。 7. 释放第2步分配的内存(VirtualFreeEx)。 8. 用CreateRemoteThread和FreeLibrary把DLL从远程进程中卸载。调用时传递第6步取得的HMODULE给FreeLibrary(通过CreateRemoteThread的lpParameter参数)。 9. 等待线程的结束(WaitSingleObject)。 10.采用C++/CLI编写: //

文档评论(0)

1亿VIP精品文档

相关文档