加载中…
个人资料
elecs
elecs
  • 博客等级:
  • 博客积分:0
  • 博客访问:53,406
  • 关注人气:1
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
正文 字体大小:

详解:IDA 6.6远程调试android程序

(2016-11-13 11:34:20)
分类: 信息安全
做移动安全免不了要熟悉android逆向,网上关于IDA 6.6远程调试的文章虽然很多,但作者们都没有这些操作的前置条件讲清楚,让很多人绕了不少弯。下面本人尽量将每个细节都描述清楚

在做以下步骤之前要确保手机已经root。USB连接电脑和手机,并在手机上开启“USB调试”。
详解:IDA <wbr>6.6远程调试android程序


1、将IDA文件夹中dbgsrv目录下的android_server上传到手机的/data/local/tmp目录下,这个目录可以自己选。
详解:IDA <wbr>6.6远程调试android程序

2、给android_server添加执行权限,切换到root用户,启动android_server
详解:IDA <wbr>6.6远程调试android程序

3、在电脑启动另一个终端,输入如下命令进行端口转发。
详解:IDA <wbr>6.6远程调试android程序

4、安装要需要调试的apk文件,这里假设为DynamicLoad.apk,里面Native层代码封装成libmyloader.so库。在终端上输入adb install DynamicLoad.apk即可。

然后在手机上启动该DynamicLoad.apk

5、设置APP的debug选项。
设置方法有如下三种
(1)修改APP AndroidManifest.xml中Application标签包含属性android:debuggable=true,重新打包APP
(2)使用setpropex设置
setpropex ro.secure 0
setpropex ro.debuggable 1
(3)修改/default.prop配置文件,重刷boot.img
在此,我们使用第二种方法。注意,如果手机重启了,需要重新设置。大家需要到网上下载setpropex工具,将它安装到手机的/data/local/tmp目录(即adb push setpropex /data/local/tmp),并赋予执行权限。
详解:IDA <wbr>6.6远程调试android程序
ro.secure设置为0,ro.debuggable设置为1,并使用getprop检查是否设置正确。
详解:IDA <wbr>6.6远程调试android程序

6、打开ida 6.6,选择Debugger,选择attach
详解:IDA <wbr>6.6远程调试android程序

7、连接配置。HostName就填localhost,port:默认23946即可
详解:IDA <wbr>6.6远程调试android程序

8、选择目标进程attach。
详解:IDA <wbr>6.6远程调试android程序
点击ok,出现如下的画面
详解:IDA <wbr>6.6远程调试android程序

9、找到需要调试代码的位置,F2下断点。F9运行即可。当你操作你的程序并运行到断点处时,IDA就会断下来。

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有