首页
社区
课程
招聘
[求助]如何将64位DLL注入到32位进程
发表于: 2018-2-9 19:55 6457

[求助]如何将64位DLL注入到32位进程

2018-2-9 19:55
6457
注入器64位或者32位都可以,怎么方便怎么弄
DLL64位
目标进程32位

我的目的就是要将64位DLL注入到32位进程里,并可以正常运行这个DLL

如何实现???大大们,小弟是个小白,刚学C++,希望大佬们讲详细点,最好贴上代码,小弟感激不尽。

最后祝各位大佬们《《新年快乐》》!

我现在的代码:
此代码能够注入32位DLL到32位进程, 如何改成64位DLL注入到32位进程

injection( hprocess , "MOGU_DLL.dll");  //这个DLL是64位的

void injection(HANDLE hprocess, LPCTSTR lpszModuleName)
{
//this->EnableDebugPrivilege(1);
//计算dll路径名需要的空间
int cb = 1 + strlen(lpszModuleName);
//使用VirtualAllocEx函数在远程进程的内存地址空间分配dll文件缓冲区
LPVOID pszLibFileRemote = VirtualAllocEx(hprocess, NULL, cb, MEM_COMMIT, PAGE_READWRITE);
//使用WriteProcessMemory函数将dll的路径名复制到远程进程的内存空间
BOOL iReturnCode = WriteProcessMemory(hprocess, pszLibFileRemote, (PVOID)lpszModuleName, cb, NULL);
if (iReturnCode)
{
//计算LoadLibrary的入口地址
LPTHREAD_START_ROUTINE pfnStartAddr = (PTHREAD_START_ROUTINE)GetProcAddress(GetModuleHandle("kernel32.dll"), "LoadLibraryA");
//启动远程线程LoadLibrary,通过远程线程调用用户的dll文件
HANDLE hRemoteThread = CreateRemoteThread(hprocess, NULL, 0, pfnStartAddr, pszLibFileRemote, 0, NULL);
if (hRemoteThread) {
WaitForSingleObject(hRemoteThread, INFINITE);
CloseHandle(hRemoteThread);
VirtualFreeEx(hProcess, pszLibFileRemote, 0, MEM_RELEASE);
}
}
}

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 27
活跃值: (671)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
2
重新编译dll为32位吧,这个搞法应该不可行。
2018-2-9 22:05
0
雪    币: 248
活跃值: (3789)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
bklang 重新编译dll为32位吧,这个搞法应该不可行。
wow64.dll不就是吗?
2018-2-10 02:07
0
雪    币: 285
活跃值: (1090)
能力值: ( LV13,RANK:405 )
在线值:
发帖
回帖
粉丝
4
的确是可以注入的,比较麻烦,http://waleedassar.blogspot.com/2013/01/wow64logdll.html  你看下这个帖子,实现了
2018-2-10 09:30
0
雪    币: 12045
活跃值: (4763)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
不知道  32的DLL能不能注到64位里
2018-2-10 10:39
0
雪    币: 42
活跃值: (208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
bklang 重新编译dll为32位吧,这个搞法应该不可行。
DLL必须是64位
2018-2-10 13:13
0
雪    币: 42
活跃值: (208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
yy虫子yy wow64.dll不就是吗?
wow64.dll如何让使用?能否给你例子
2018-2-10 14:07
0
游客
登录 | 注册 方可回帖
返回
//