-
-
AAnti_Debug(对抗反调试)系统实现
-
发表于:
2013-12-24 16:05
14500
-
标 题: AAnti_Debug(对抗反调试)系统实现
作 者: 蟑螂一号
时 间: 2013-12-24,15:54:25
Android应用中,为了防止分析人员通过调试工具调试应用,会在应用中调用ptrace,防止其他调试进程再一次附加到本应用中。AAnti_Debug系统是经过android ROM定制之后的反反调试系统。该系统主要是在系统调用ptrace中进行特殊处理,使本进程在调用ptrace时候失败,而让其他调试进程附加到进程的时候调用ptrace成功。
AAnti_Debug系统关键技术:修改android源码中bionic中的libc中的ptrace系统调用。
关机实现代码:
1.根据附加进程pid返回进程uid。
int get_uid_from_status(int pid)
{
FILE *file;
int uid=-1;
char filename[512];
sprintf(filename,"/proc/%d/status",pid);
file=fopen(filename,"r");
char line[256];
if(!file)
{
return uid;
}
while(fgets(line,256,file))
{
sscanf(line,"Uid: %u",&uid);
}
fclose(file);
return uid;
}
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课