非常简单的利用CreateProcess注入DLL的方法
Posted 朝闻道
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了非常简单的利用CreateProcess注入DLL的方法相关的知识,希望对你有一定的参考价值。
- TCHAR szDll[] = TEXT("d:\\test.dll");
- STARTUPINFO si = {0};
- PROCESS_INFORMATION pi = {0};
- si.cb = sizeof(si);
- si.dwFlags = STARTF_USESHOWWINDOW;
- si.wShowWindow = SW_SHOW;
- TCHAR szCommandLine[MAX_PATH] = TEXT("C:\\WINDOWS\\notepad.exe");
- CreateProcess(NULL, szCommandLine, NULL, NULL, FALSE, CREATE_SUSPENDED, NULL, NULL, &si, &pi);
- LPVOID Param = VirtualAllocEx(pi.hProcess, NULL, MAX_PATH, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
- WriteProcessMemory(pi.hProcess, Param, (LPVOID)szDll, _tcslen(szDll)*2+sizeof(TCHAR), NULL);
- HANDLE hThread = CreateRemoteThread(pi.hProcess, NULL, NULL, (LPTHREAD_START_ROUTINE)LoadLibraryW,Param, CREATE_SUSPENDED, NULL);
- ResumeThread(pi.hThread);
- if (hThread)
- {
- ResumeThread(hThread);
- WaitForSingleObject(hThread, INFINITE);
- }
http://blog.csdn.net/zwfgdlc/article/details/8827116
以上是关于非常简单的利用CreateProcess注入DLL的方法的主要内容,如果未能解决你的问题,请参考以下文章
Windows Dll InjectionProcess InjectionAPI Hook
使用 CreateProcess 启动子程序时,不会在父程序的工作目录中搜索 DLL