gpt4 book ai didi

C++ - CreateRemoteThread DLL 注入(inject) [Windows 7]

转载 作者:可可西里 更新时间:2023-11-01 09:55:49 30 4
gpt4 key购买 nike

无论我在哪里看,通过 CreateRemoteThread 注入(inject)的方法都是一样的,但是获取进程 ID 的方法却不同......我的函数将返回正确的进程 ID,我对这方面的任何帮助都不感兴趣,所以我会将那部分作废,只包括实际注入(inject)。

我只是刚刚学习 DLL 注入(inject),并试图在 notepad.exe 上进行。如果注入(inject)有效,记事本的标题将从“Untitled - Notepad”变为“Hooked”。

#define DLL_NAME "injectme.dll"

.....

BOOL InjectRemoteThread(DWORD ProcessID)
{
HANDLE RemoteProc;
char buf[50] = {0};
LPVOID MemAlloc;
LPVOID LoadLibAddress;

// Process ID does show correctly!
WCHAR id[100];
StringCbPrintf(id, 100, L"%d", ProcessID); // id contains the process ID... is confirmed in comparing ID shown in tasklist and the messagebox.
MessageBox(NULL, id, L"Process ID", MB_ICONINFORMATION);
// Process ID does show correctly!

if ( !ProcessID )
{
MessageBox(NULL, (LPCWSTR)GetLastError(), L"An error occured", NULL);
return 0;
}
RemoteProc = OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE | PROCESS_CREATE_THREAD | PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, ProcessID);
if ( !RemoteProc )
{
MessageBox(NULL, (LPCWSTR)GetLastError(), L"An error occured", NULL);
return 0;
}
LoadLibAddress = (LPVOID)GetProcAddress(GetModuleHandleA("kernel32.dll"), "LoadLibraryA");
MemAlloc = (LPVOID)VirtualAllocEx(RemoteProc, NULL, strlen(DLL_NAME)+1, MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE);
WriteProcessMemory(RemoteProc, (LPVOID)MemAlloc, DLL_NAME, strlen(DLL_NAME)+1, NULL);
CreateRemoteThread(RemoteProc, NULL, NULL, (LPTHREAD_START_ROUTINE)LoadLibAddress, (LPVOID)MemAlloc, NULL, NULL);

CloseHandle(RemoteProc);
VirtualFreeEx(RemoteProc, (LPVOID)MemAlloc, 0, MEM_RELEASE | MEM_DECOMMIT);
return 1;
}

DLL 可以使用其他人的注入(inject)器,但我不明白为什么...它确实与注入(inject)器位于同一目录中。

最佳答案

我发现了问题……我觉得自己好傻。任何有类似问题的人:使用绝对路径而不是相对路径。

我变了

#define DLL_NAME "injectme.dll"

#define DLL_NAME "C:\\Users\\Raikazu\\Documents\\Visual Studio 2012\\Projects\\Hooking\\Release\\injectme.dll"

关于C++ - CreateRemoteThread DLL 注入(inject) [Windows 7],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14096215/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com