能力值:
( LV8,RANK:130 )
|
-
-
2 楼
VirtualAlloc不是蛮好?
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
问题就是别人就用malloc得到了,这是怎么实现的?
|
能力值:
( LV8,RANK:130 )
|
-
-
4 楼
再VirtualProtect一下就完了
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
没有发现VirtualProtect的调用
|
能力值:
( LV8,RANK:130 )
|
-
-
6 楼
为何一定要怀疑malloc呢?
#include <windows.h>
#include <stdio.h>
#pragma comment (linker, "/subsystem:windows") int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
DWORD a;
a = (DWORD)malloc(100);
memcpy((LPVOID)a,
"\xE8\x0C\x00\x00\x00\x75\x73\x65\x72\x33\x32\x2E\x64\x6C\x6C\x00\x00\xFF\x15\x78\x40\x40\x00\xE8\x0D\x00\x00\x00\x4D\x65\x73\x73\x61\x67\x65\x42\x6F\x78\x41\x00\x00\x50\xFF\x15\x74\x40\x40\x00\x6A\x00\xE8\x06\x00\x00\x00\x74\x65\x73\x74\x00\x00\xE8\x06\x00\x00\x00\x74\x65\x73\x74\x00\x00\x6A\x00\xFF\xD0\x6A\x00\xFF\x15\x14\x40\x40\x00",
84);
__asm jmp a
}
|
|
|