非常简单的利用CreateProcess注入DLL的方法

Posted 朝闻道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了非常简单的利用CreateProcess注入DLL的方法相关的知识,希望对你有一定的参考价值。

[cpp] view plain copy
 
  1. TCHAR szDll[] = TEXT("d:\\test.dll");  
  2. STARTUPINFO si = {0};  
  3. PROCESS_INFORMATION pi = {0};  
  4. si.cb = sizeof(si);  
  5. si.dwFlags = STARTF_USESHOWWINDOW;  
  6. si.wShowWindow = SW_SHOW;  
  7. TCHAR szCommandLine[MAX_PATH] = TEXT("C:\\WINDOWS\\notepad.exe");  
  8.   
  9. CreateProcess(NULL, szCommandLine, NULL, NULL, FALSE, CREATE_SUSPENDED, NULL, NULL, &si, &pi);  
  10. LPVOID Param = VirtualAllocEx(pi.hProcess, NULL, MAX_PATH, MEM_COMMIT, PAGE_EXECUTE_READWRITE);  
  11. WriteProcessMemory(pi.hProcess, Param, (LPVOID)szDll, _tcslen(szDll)*2+sizeof(TCHAR), NULL);  
  12.   
  13. HANDLE hThread = CreateRemoteThread(pi.hProcess, NULL, NULL, (LPTHREAD_START_ROUTINE)LoadLibraryW,Param, CREATE_SUSPENDED, NULL);  
  14. ResumeThread(pi.hThread);  
  15.   
  16. if (hThread)  
  17. {  
  18.     ResumeThread(hThread);  
  19.     WaitForSingleObject(hThread, INFINITE);  
  20. }  

 

http://blog.csdn.net/zwfgdlc/article/details/8827116

以上是关于非常简单的利用CreateProcess注入DLL的方法的主要内容,如果未能解决你的问题,请参考以下文章

Windows Dll InjectionProcess InjectionAPI Hook

使用 CreateProcess 启动子程序时,不会在父程序的工作目录中搜索 DLL

Win32 利用远程线程注入dll

Win32 利用远程线程注入dll

安全之路 —— 利用远程线程注入的方法(使用DLL)实现穿墙与隐藏进程

简单实现程序DLL劫持