动态脱壳学习
1.使用IDA打开libjuan.so,可以查看到很多函数,其中__gnu_armfini_26这个函数,功能是进行一些反调试,并解密JNI_Onload的代码。那么在__gnu_armfini_26的入口处,修改代码为FE FF FF EA EA,而后将APK重新打包并签名,adb install安装;
2.启动./android_server,开启端口转发(adb forward tcp:23946 tcp:23946);
3.启动APP的调试模式(#am start -D -n com.droider.ndkapp/com.droider.ndkapp.MainActivity);
4.打开IDA,远程连接,修改debuger options;
5.运行,并开启jdb(>jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700);
6.G到__gnu_armfini_26地址,下断;