我想编写一个应用程序将库注入到 android 进程中。最重要的是我必须
在远程进程中映射一个安全内存,用于执行注入的功能。
现在问题出在这里,除了Zygote,所有的进程都可以实现memorymapping!
虽然我将 LR 寄存器设置为 0x00000000,但仍然阻塞在 waitpid()
----- 我没有收到 SIGSEVG 信号,希望大家帮帮我,谢谢。
//fake saved return address, triggering a SIGSEGV to catch
regs->ARM_lr = 0x00000000;
ptrace_setregs( pid, regs );
ptrace_cont(pid);
int status;
int id = 0;
do {
id = waitpid(pid, &status, WUNTRACED);//The process was blocked ....! Why..?
printf("[+] id:%d,signal:%d\n",id,WSTOPSIG(status));
} while ((id != pid) || (WSTOPSIG(status) != SIGSEGV));