代码远程注入

首先在输入某段函数代码前 需要知道函数代码所在的位置;可以通过函数名获取真实函数地址:、

DWORD dwAddr=*(PDWORD)((DWORD)mFunc+1)+(DWORD)mFunc+5;

其中mfunc为我们定义的函数

mfunc函数可以分为有参函数与无参函数:

定义无传参数注入远程call

void __declspec(naked) NormalAtt()

{

//////////////////////////////////////////////////////////////////////////

_asm{

pushad

push -1

push 0

push 0

push 0

mov eax,0x0C7D888

mov eax,[eax]

mov eax,[eax+0X1C]

mov eax,[eax+0X28]

mov ecx,eax

mov eax,dwAddr

call eax

popad

retn

}

定义有参注入远程call

void __declspec(naked) Selmon(DWORD selectmonid)

{

//////////////////////////////////////////////////////////////////////////

_asm{

push ebp

mov ebp,esp

pushad

mov eax,selectmonid

mov eax,[eax]

push eax

mov eax,0x0C7D888

mov eax,[eax]

mov eax,[eax+0X20]

mov ecx,eax

add ecx,0x248

mov eax,dwAddr

call eax

popad

pop ebp

retn

}

}

你可能感兴趣的:(代码远程注入)