zoukankan      html  css  js  c++  java
  • Netbeans 6.8 + apktool_2.0.0b9 动态调试smali文件

    前言

    很早就知道用Netbeans能够单步调试smali,一直拖到现在才真正的自己实现了一次~ 下面是详细步骤!

    0×1

    环境及工具

    a.apktool_2.0.0b9 下载地址:http://connortumbleson.com/2014/02/apktool-2-0-0-beta-9-released/

    b.Netbeans 6.8版本 下载地址:http://dlc.sun.com.edgesuite.net/netbeans/6.8/beta/bundles/netbeans-6.8beta-ml-windows.exe

    c.一个模拟器

     0×2

    详细步骤:(以test.apk为例)

    第一部分:生成可供调试的apk

    a.加-d参数进行反编译

    b.通过查看AndroidManifest.xml获得入口activity,然后找到oncreate()函数。在

    后添加:

    c.重打包

    d.签名,然后安装debug.apk

    成功生成了一个支持调试的apk文件

    第二部分:netbeans设置

    a.删除out目录下的build文件夹

    b. 打开netbeans,选择“文件”-“新建项目”-“基于现有源代码的java项目”

    c. 在“项目文件夹处”选择out目录

    d. 在“源包文件夹”出选择out目录下的smali文件夹

    e. 点击完成,项目创建完毕

    第三部分:开始调试

    a.在模拟器中运行刚刚安装的debug.apk,程序会处于挂起状态。

    b.在netbeans中找到入口activity的oncreate函数,在刚才invoke-static {}, Landroid/os/Debug;->waitForDebugger()V

    下一行下断点

    c. 在netbeans中,选择“调试”-“连接调试器”

    d. 依次设置:
    调试器:JPDA
    连接器:SocketAttach
    传输:dt_socket
    主机:127.0.0.1
    端口:8700 (端口号可以通过DDMS中看到)
    超时:[可不填]

    e. 确定,即完成连接调试,可以发现IP停在了刚才下断点的地方。

    f. 可以看到,apktool2.0+netbeans 6.8支持显示寄存器的值。

    查看端口号:

    调试成功:

    0×3

    单步调试一个实例

    在Challenge1Verifier.java文件中的某一行下好断点

    F5让程序运行起来,在模拟器中选择关卡1、随意输入:

    点击按钮,程序会断在刚刚下好的断点处,可以看到程序已经获取到了用户名和注册码

    单步能够清楚的看到程序的流程, 这里就不具体的写出过程了。到最后比较处:

    很清楚的能看到,通过用户名计算出来的值‘38808’和注册码进行比较!

    正确一组:

    abcd
    38808

    写在最后

    动态调试smali网上资料很多,要是喜欢玩算法的话,动态跟踪smali是一个很不错的选择~

    相关文章:

    使用Netbean和Apktool调试smali

     apktool 2.0+netbeans 7.3调试apk

    Smali调试

    Debugging Smali code with apk-tool and NetBeans works!

    本文出自 0n1y3nd's Blog,转载时请注明出处及相应链接。

    本文永久链接: http://0nly3nd.sinaapp.com/?p=576

  • 相关阅读:
    在SQLite中使用索引优化查询速度
    SQLite支持的SQL数据操作
    left (outer) join , right (outer) join, full (outer) join, (inner) join, cross join 区别
    深入理解Android内存管理原理(六)
    Merge Sorted Array
    Sort Colors
    Construct Binary Tree from Preorder and Inorder Traversal
    Binary Tree Postorder Traversal
    Symmetric Tree
    Rotate Image
  • 原文地址:https://www.cnblogs.com/xunbu7/p/4207845.html
Copyright © 2011-2022 走看看