新接触Android安全,一直在逃避总结,因为懒。。。虽然网上有大把的资料,但是很多都是转载,格式什么的乱七八糟的,对于有严重洁癖的我不能忍。现在刚接触,以后经常用到的东西,还是总结一下加深印象吧,省得总忘,好记性不如烂笔头。
具体环境的搭建这些基础的东西这里就不再说了,JDK,SDK,NDK,IDA这些东西如果还没装的话就先别看这个了。还有就是手机要root,百度一键root就可以,会有su文件。
但是要调试一个APK需要有点准备工作,摘自:http://www.kanxue.com/bbs/showthread.php?p=1291716
根据android的官方文档,如果要调试一个App里面的dex代码,必须满足以下两个条件中的任何一个:
1) App的AndroidManifest.xml中Application标签包含属性android:debuggable=true
2) /default.prop中ro.debuggable的值为1
由于正常的软件发布时都不会把android:debuggable设置为true,所以要达成条件1)需要对app进行重新打包,这不仅每次分析一个App都重复操作,而且很多软件会对自身进行校验,重打包后执行会被检测到,所以想办法满足第2)个条件是个一劳永逸的办法,我实际使用的方法就是满足第二个条件。由于default.prop是保存在boot.img的ramdisk中,这部分每次重新启动都会重新从rom中加载,所以要到目的必须修改boot.img中的ramdisk并重新刷到设备中。我测试使用的设备为Nexus 7,修改步骤如下:
a) 从Google官方网站下载到boot.img,