<span style="font-size:12px;"><span style="font-size:12px;">功能:注入DLL文件,参数要求:进程号,待注入DLL文件路径
//InjectDll.cpp
#include "windows.h"
#include "tchar.h"
BOOL InjectDll(DWORD dwPID, LPCTSTR szDllPath)
{
HANDLE hProcess = NULL, hThread = NULL;
HMODULE hMod = NULL;
LPVOID pRemoteBuf = NULL;
DWORD dwBufSize = (DWORD)(_tcslen(szDllPath)+1) * sizeof(TCHAR);
LPTHREAD_START_ROUTIME pThreadProc;
//#1. 使用dwPID获取目标进程(notepad.exe) 句柄
if(!(hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwPID))
{
_tprintf(L"OpenProcess(%d) failed!!! [%d]\n",dwPID,GetLastError());
return FALSE;
}
//#2. 在目标进程(notepad.exe)内存中分配szDllName大小的内存
pRemoteBuf = VirtualAllocEx(hProcess, NULL, dwBufSize, MEM_COMMIT,PAGE_READWRITE);
//#3. 将myhack.dll路径写入分配的内存
WriteProcessMemory(hProcess, pRemoteBuf, (LPVOID)szDllPath, dwBufSize, NULL);
//#4. 获取LoadLibrar
InjectDll
最新推荐文章于 2023-02-27 21:50:36 发布