• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > IDA动态调试Android的DEX文件

IDA动态调试Android的DEX文件

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了ida动态调试android,ida动态调试,ida动态调试so,ida动态调试教程,ida 动态调试apk等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

IDA动态调试Android的DEX文件


0x00

我们以阿里比赛第一题为例,来动态调试dex文件。参考IDA动态调试Android的DEX文件一文,首先AndroidManifest.xml里面android:debuggable="true"。

0x01

下面详细说步骤。

1、将classes.dex拖入IDA中。

2、选择Debugger->Debugger options->Set specific options,在Package Name和Activity中填入主Activity的包名和类名。

\

3、选择Debugger->Process options,将Port改为8700。

\

4、下断点

在左边的侧边栏搜索onCreate。

\

点击MainActivity_onCreate@VL,设置断点。

\

 

5、手机端开启android_server

\

 

6、端口转发,打开要调试的Activity

\

此时应用的界面处于等阶段,如下:

\

注意此时在第7步前一定要关闭eclipse,也就是关闭ddms,否则IDA提示can’t bind socket。

7、选择Debugger->attach to process。出现如下界面:

\

接下来,出现的界面就一直Cancel就好了。

我们看到程序停在的MainActivity的onCreate方法。按F8单步执行。

\

8、怎么在onClick方法下断点呢?

我们使用双开IDA ,在静态分析中,左侧边栏搜索onClick。

\

点击MainActivity$1_onClick@VL,如下图:

\

所以在动态调试的IDA中,按G,调到7A88C的地址。

\

然后下断点。

\

然后点击F8,让程序继续运行,刚才停在onCreate方法。

此时IDA界面如下:

\

应用程序界面如下:

\

此时输入密码,点击登录,程序会停留在刚才下的断点位置。

\

此时按F8,就可以单步调试onClick方法了。

和IDA动态调试so中少了一步jdb -connect com.sun.jdi.SocketAttach:port=8700,hostname=localhost。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android安卓破解之逆向分析SO常用的IDA分析技巧
  • Android安全专项-AndBug动态调试工具环境搭建
  • IDA动态调试Android的DEX文件

相关文章

  • 2017-05-26android列表停止滚动,加载图片,较为通用的一种办法,
  • 2017-05-26android 项目 分享图片到微信
  • 2017-05-26Android菜单项内容大全,android菜单项大全
  • 2017-05-26声明和使用权限,声明使用权限
  • 2017-07-23WKWebView与js交互之完美解决方案
  • 2017-05-26【转载】ReactiveX 的理念和特点,转载reactivex理念
  • 2017-05-26MySQL高可用组件MHA参数详解
  • 2017-05-26Android源码中内置包含so文件的APK文件,androidapk
  • 2017-05-26Android Studio Ndk 编程
  • 2017-05-26Android 的系统架构,Android系统架构

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • java中random随机函数的一些理解
    • android studio 使用checkstyle全攻略
    • android开发之路04(初级android工程师必会,你懂得!),04android
    • Android 上千实例源码分析以及开源分析
    • Android开发学习—— Broadcast广播接收者,androidbroadcast
    • [AndroidAnnotations框架]AndroidAnnotations的配置介绍
    • MySQL高可用组件MHA参数详解
    • Android与HTML+JS交互入门
    • did not call through to super.onCreate(),didsuper.oncreate
    • 我的android学习经历2,android学习经历2

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有