小弟向一个程序注入一个程序 代码如下:procedure zhuru();stdcall;
var
zhucedizhi:=$33ba21;
begin
asm
call zhucedizhi
end;
end;
如果加上判断就不行了:
procedure zhuru();stdcall;
var
zhucedizhi:=$33ba21;
begin
if zhuru1=true than
begin
asm
call zhucedizhi
end;
end;
end;
zhuru1是我定义的一个全局变量 是不是注入的时候zhuru1再寄主程序里没有地址?另外诸如函数是只执行asm end里的汇编还是整个函数都是在寄主程序里执行啊? 谢谢!
var
zhucedizhi:=$33ba21;
begin
asm
call zhucedizhi
end;
end;
如果加上判断就不行了:
procedure zhuru();stdcall;
var
zhucedizhi:=$33ba21;
begin
if zhuru1=true than
begin
asm
call zhucedizhi
end;
end;
end;
zhuru1是我定义的一个全局变量 是不是注入的时候zhuru1再寄主程序里没有地址?另外诸如函数是只执行asm end里的汇编还是整个函数都是在寄主程序里执行啊? 谢谢!
整个函数,肯定是在自己程序分配的内存空间里面运行的,不可能无缘无故跑到其他进程的内存空间里面去,注入其实是强制指针指向其他程序地址,然后写入