小菜最近开始学安卓破解,无奈市面上模拟器都不能很好的支持ida调试,下面简单介绍下主流的几款模拟器:
1、android自带emulator,基于ARM架构,缺点启动慢,IDA附加经常下不了断点,权限不够等
2、droid4x(中文名海马玩),基于ARM架构,缺点同上
3、Genymotion,基于X86架构,启动快,缺点对于不支持x86平台的apk无法运行和调试
相信如果搭建过模拟器和IDA调试环境的肯定被一些问题折腾的够呛,当然IDA附加不上进程,可以用GDB命令行调试,个人测试过是没有问题的。
废话不多说,还是真机给力,小菜最近拿到一个三星手机,折腾完可以任意进程IDA附加,以下是步骤,大神绕道,不喜勿喷
以下操作在ubuntu 12.04 64位下
1、拆包
[Shell] 纯文本查看 复制代码 perl split_bootimg.pl boot.img
2、查看img信息
[AppleScript] 纯文本查看 复制代码 unpackbootimg -i boot.img
3、解压
[AppleScript] 纯文本查看 复制代码 $ mkdir ramdisk
$ cd ramdisk
$ gzip -dc ../boo.img-ramdisk.gz | cpio -i
4、修改default.prop
ro.secure=0
ro.allow.mock.location=0
ro.debuggable=1
ro.adb.secure=0
5、将ramdisk打包,mkbootfs为32位程序,需要安装32位库
[AppleScript] 纯文本查看 复制代码 sudo apt-get install lib32s
tools/mkbootfs ./ramdisk | gzip > ramdisk-new.gz
6、重新生成boot.img,参数参考步骤2中输出信息
[AppleScript] 纯文本查看 复制代码 tools/mkbootimg --cmdline 'console=ttyDCC0 androidboot.hardware=xxx' --kernel
boot.img-kernel --ramdisk ramdisk-new.gz --base 0x00200000 --pagesize 4096 -o boot-new.img
7、将boot.img重新打包加md5校验
[AppleScript] 纯文本查看 复制代码 tar -cf boot.tar boot.img
md5sum -t boot.tar >> boot.tar
8、手机关机重新进入挖煤模式后使用odin将boot.tar刷入手机
重启手机后,使用DDMS就可以看到所有的进程都可以使用Logcat查看,IDA附加,后面就可以XXOO了
本人QQ:2811325694 一起学习交流
|