• mac上Android反编译工具apktool、dex2jar入门


     

    MAC上Apktool的安装

    官网链接

     
    image.png

    使用步骤如图1-6

    • 第一:下载一个shell脚本,保存的名字就是”apktool”,不要带.sh后缀。可以复制到sublimetext,然后保存.记得删除后缀。

    • 第二:下载最新的apktool

     
    image.png
    • 第三:将下载的apktool_2.3.0.jar文件改名为apktool.jar

    然后可以把这两个文件放到一个文件夹下(方便管理)

     
    image.png
    • 第四:将shell脚本”apktool”和”apktool.jar”放到 “/usr/local/bin”目录下

    root 权限拷贝文件到usr/local/bin
    $ cd /usr/local/bin
    如果电脑不存在这个目录,那么创建一个:
    $ sudo mkdir
    打开终端,使用cd命令定位到apktool文件夹:我是放在 Documents文件下
    $ cd Documents/apktool/
    使用cp命令把apktool.jar和apktool文件拷贝到/usr/local/bin
    $ sudo cp apktool.jar apktool /usr/local/binbin
    • 第五:给这两个文件添加权限

    $ cd Documents/apktool/
    $ chmod a+x apktool
    $ chmod a+x apktool.jar
    • 第六:sudo apktool

    • 第七:现在就可以反编译相应的apk文件了

    把apk文件放到apktool文件夹,然后回到apktool文件夹下:(需注意目录是否正确)我是把它们全都放在Documents/apktool/下
    接下来执行命令
    $ cd Documents/apktool/
    $ apktool d xxx.apk
     
    image.png
     
    image.png

    test下即为反编译生成的资源文件


    dex2jar和JD-GUI的安装

    第一:下载 dex2jar,并解压

    第二:下载class反编译工具 jd-gui,并解压

    第三:把这两个放到同一个文件夹下dex2jar

     
    image.png

    第四:为了检测下是否能破解,我们先用Apktool反编译,免得我们最后一场空。(只有Apktool能反编译/回编译,我们的破解才有意义)。

    反编译见上边的命令:$ apktool d xxx.apk
    回编译的命令:$ apktool b xxx
    通常如果回编译失败,说明apk加固过,这时候的dex2jar生成的代码也是看不了的。如果两个命令都成功了,可以继续接下来的步骤

    第五:将dex2jar-2.0里的d2j_invoke.sh和d2j-dex2jar.sh增加可执行权限

    $ cd Documents/dex2jar/dex2jar-2.0
    $ sudo chmod +x d2j_invoke.sh
    $ sudo chmod +x d2j-jar2dex.sh

    第六:现在就可以用dex2jar将apk转成jar文件,实质是将apk里的classes.dex转成jar。

    $ sh d2j-dex2jar.sh /Users/xxx/Downloads/simple.apk

    在simple.apk所在的目录,就会生成Simple-dex2jar.jar文件

    第七:将Simple-dex2jar.jar该文件拖入jd-gui,就可以查看了

  • 相关阅读:
    容易遗忘的配置
    linux中启动Zookeeper
    Linux中设置静态ip地址
    IDEA中工程上传到SVN
    Invalid bound statement(not found):cn.e3mall.mapper.TbItemMapper.selectByExample.....
    获取不到jdbc.driver的值解决办法
    idea中applicationContext-trans.xml中的Cannot resolve bean 'dataSource'...的问题解决
    idea中applicationContext-dao.xml文件中Cannot resolve file***** :spring xml model validation问题
    如何在IDEA中导入一个普通的java工程
    Navicate for mysql如何导入一个sql文件
  • 原文地址:https://www.cnblogs.com/hualuoshuijia/p/10212669.html
Copyright © 2020-2023  润新知