美文网首页Java编程相关
Android 反编译工具的各种用法

Android 反编译工具的各种用法

作者: xq9527 | 来源:发表于2020-06-22 13:01 被阅读0次

    前言:

    各位同学大家好 ,相信各位都有听过或者做过安卓的反编译的 ,今天我就给大家介绍几款反编译工具反别是 apktool dex2jar jd-gui.jar 希望能帮助到大家的学习

    准备工作:

    分别下载
    apktool 下载地址 :https://ibotpeaches.github.io/Apktool/install/
    dex2jar 下载地址 : https://sourceforge.net/projects/dex2jar/
    jd-gui.jar 下载地址 :http://java-decompiler.github.io/

    工具的具体作用:

    1、apktool.bat;apktool.jar

    作用:

    最大程度的还原apk中的manifest文件和资源文件 。
    使用apktool工具反编译apk文件比直接解压同一个apk文件大;
    还可以将反编译之后的apk重新打包成apk文件,但需要重新签名,才能安装使用。

    2、dex2jar

    作用:

    将APK直接解压后,目录下包含的一个classes.dex文件反编译为classes-dex2jar.jar文件

    3、jd-gui.jar

    作用:

    直接查看classes-dex2jar.jar文件。

    具体使用:

    一 apktool的使用

    将下载好的apktool.bat与apktool.jar复制到C:\Windows目录下
    如图

    QQ截图20200622123648.png 、
    然后把你需要反编译的apk复制到跟apktool.bat apktool.jar 同一层目录路径下
    然后我们打开cmd命令行 进入该目录下 如图
    QQ截图20200622124003.png
    然后输入 apktool d test.apk
    QQ截图20200622124121.png
    然后按回车键执行这个条命令 就开始反编译了·
    QQ截图20200622124054.png
    反编译成功后我们看到多出test 文件夹就是我们反编译出来的内容
    反编译出来的内容里面有smali 文件和一些资源文件以及安卓的项目清单文件 我们可以做适当的修改再进行二次打包回编译 如图
    QQ截图20200622124534.png

    apktool回编译打包

    我们还是进到刚才的apktool.bat和apktool.jar那个路径


    QQ截图20200622124003.png

    我们输入apktool b test 这条命令进行回编译打包


    QQ截图20200622124719.png
    按下回车键执行即可
    QQ截图20200622124738.png

    回编译成功后的apk在test文件夹里面的dist路径下


    QQ截图20200622124748.png
    QQ截图20200622124804.png
    这个回编译生成的包是没有签名的我们需要自己重新签名才能使用
    我这人推荐大家使用360加固工具签名

    360加固下载地址 :https://jiagu.360.cn

    QQ截图20200622125108.png

    二 dex2jar

    将dex2jar.jar解压成文件夹
    将test.apk后缀名修改为.rar然后解压(.apk 也可以直接解压)
    将test.apk解压后的目录下包含的classes.dex文件复制到dex2jar解压后的文件夹中
    (classes.dex文件与d2j-dex2jar.bat文件同在一个目录中)


    QQ截图20200622125349.png

    打开cmd命令编辑器
    进入classes.dex文件与d2j-dex2jar.bat所在文件目录
    输入命令d2j-dex2jar.bat classes.dex


    QQ截图20200622125416.png
    此时可以看到目录中多出了classes-dex2jar.jar文件
    QQ截图20200622125424.png

    三jd-gui

    双击运行 jd-gui-1.4.0.jar 文件,
    将.jar文件拖到工作区即可打开。

    QQ截图20200622125431.png
    如果我们想要看到andorid apk里面的源代码 Java代码 我们只需要配合使用 dex2jar 和
    jd-gui即可 如果我们是要修改apk包里面的部分内容我们可以使用apktool 来反编译然后回编译重新打包
    生成我们想要的包
    最后附上网盘整理的反编译工具资源
    链接:https://pan.baidu.com/s/145vS1aC8P5FqLgfS1DfquQ 提取码:kvy8

    最后总结:

    安卓逆向的知识非常的复杂 涉及到去壳(加固的壳子) 反代码混淆 算法分析 我这边就不展开讲了今天 只是分享简单的反编译工具的使用 有兴趣学的的同学可以私下多多交流 ,如果觉得文章还不错麻烦给个star 和转发 谢谢

    相关文章

      网友评论

        本文标题:Android 反编译工具的各种用法

        本文链接:https://www.haomeiwen.com/subject/bdhptktx.html