首页
社区
课程
招聘
[求助]困扰了一个多小时的问题
发表于: 2015-9-19 22:45 4080

[求助]困扰了一个多小时的问题

2015-9-19 22:45
4080
模块 "C:\Windows\syswow64\kernel32.dll"        装载到 0x76A40000 - 0x76B50000

        LPVOID Kernel32 = (LPVOID)GetModuleHandle(L"kernel32.dll");
        DWORD Kernel32Size = AntiBp.GetModuleImageSize((PVOID)Kernel32);
        void * Kernel32Mem = 0;
        Kernel32Mem = VirtualAlloc(0, Kernel32Size, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);
        CopyMemory(Kernel32Mem, Kernel32, Kernel32Size);
        HMEMORYMODULE module = MemoryLoadLibrary(Kernel32Mem);
        if (module!=NULL)
        {
                LpCreateThread = (_CreateThread)MemoryGetProcAddress(module, "CreateThread");
                if (LpCreateThread)
                {
                        printf("初始化完毕\r\n");
                }
        }

模块只copy到76B11000就停止了 这后面就没有任何东西了 但是为什么模块大小确实是0x110000呢


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 4941
活跃值: (2370)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
应该是申请的内存空间不够吧,仔细分析下
2015-9-20 09:39
0
雪    币: 786
活跃值: (3435)
能力值: ( LV7,RANK:140 )
在线值:
发帖
回帖
粉丝
3
来源内存区域应该不是连续的,遇到非法内存区域就会出错吧
2015-9-20 13:52
0
雪    币: 8
活跃值: (33)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
不是内存不够
2015-9-20 14:41
0
雪    币: 8
活跃值: (33)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
这个不清楚  看调试器下面信息那个函数 我手动跳过去直接到ntdll.dll了 - -
2015-9-20 14:42
0
雪    币: 659
活跃值: (499)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
6
可以用windbg的!address 命令看下申请的内存情况
2015-9-20 16:48
0
雪    币: 118
活跃值: (72)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
楼上正解。。。
2015-9-21 09:30
0
游客
登录 | 注册 方可回帖
返回
//