使用IDA远程调试APK中的so,学习笔记

一、准备设备
    1.打开设备的USB调试模式
    2.复制android_server文件到设备上。此文件在IDA目录下dbgsrv文件夹中
    3.设备连接到电脑。


二、准备软件
    1.下载并安装android sdk
    2.设置环境变量,把目录……\android-sdk\platform-tools设置进path(为了方便的使用adb.exe)


三、把android_server复制到system/bin目录下,并运行服务端
    1.进入远程shell
      命令:adb shell
    
    2.提升到root权限
      命令:su


    3.重新挂在系统分区为读写模式
      命令:mount -o rw,remount -t yaffs2 /dev/block/mtdblock3/system
      说明:/dev/block/mtdblock3/ 这个路径有可能是需要改变的,可以使用命令mount列出所有路径,并查找/system所在位置


    4.复制android_server文件
      命令:cat android_server > /system/bin/android_server
      说明:前一个路径要正确,按实际情况修改


    5.修改文件权限
      命令:chmod 777 android_server
      说明:路径同样要正确


    6.运行服务端
      命令:cd /system
            cd bin
            ./android_server
      说明:运行服务端之后,就可以看到监听端口,一般是23946


    7.转发到设备端口
      命令:adb forward tcp:23946 tcp:23946
      说明:这是在windows 控制台(cmd)下执行的


四、反编译so文件。然后attach到安卓设备上运行的程序就行。


参考资料:

http://wenku.baidu.com/link?url=Io9pa0SWbD4k1t4IRCVnBoA5N4phmoLb1AevyHXNEkFqZVzxu4mK-GkrnHGgwTinf87Rhhsz9vtKHygsA3-AVzevf7lM6HQTfq7MfP3Klii

http://blog.csdn.net/chence19871/article/details/37599397

你可能感兴趣的:(逆向工程,IDA,APK,SO)