修改android源码过百度加固jdb失败

经过百度加固的有下面特征

可以看见百度调用了系统函数

 

 

 

我们可以直接修改smali然后反编译回去,但是百度在so有检测签名,我们利用修改android内核的办法让百度无法检测,如下

修改完整的内核然后编译

ServiceProxy.java -------------------

ActivityManagerService.java------             -Debug.java-----VMDebug.java--- dalvik_system_VMDebug.cpp

Watchdog.java  --------------------

 

修改1:

frameworks\base\core\java\android\os\Debug.java

  修改此函数为

  public static boolean isDebuggerConnected() {

        returnVMDebug.isDebuggerConnected();

    }

   public static boolean isDebuggerConnected(){

        return false;

}

然后加入函数

 public static booleanisSnowDebuggerConnected() {

        returnVMDebug.isDebuggerConnected();

  }

然后改waitForDebugger函数中的isDebuggerConnected全部改成isSnowDebuggerConnected

 

将下面2个文件中的isDebuggerConnected全部改成isSnowDebuggerConnected

修改3

frameworks\base\services\java\com\android\server\am\ActivityManagerService.java

修改4

frameworks\base\services\java\com\android\server\Watchdog.java

 

不让你擅自修改API,因为你修改的是@hide的,解决办法

要先makeupdate-api

再make得到system.img

 

至于怎么改android源码然后编译运行,请参考本SnowNightDr博客的另外几篇文章

 

你可能感兴趣的:(android安全总结)