反编译工具之Jadx

jadx 是一款功能强大的反编译工具,使用起来简单方便(拖拽式操作),不光提供了命令行程序,还提供了 GUI 程序。一般情况下,我们直接使用 GUI 程序就可以了。

jadx 支持 Windows、Linux、 macOS,能够帮我们打开.apk, .dex, .jar,.zip等格式的文件

就比如说我们需要反编译一个 jar 包查看其源码的话,直接将 jar 包拖入到 jadx 中就可以了

 

 

安装SDK: https://www.oracle.com/java/technologies/downloads/

[依赖]

java的安装见之前文章,这里就不再述

保证java已经正常安装即可:

java -version  # 看到打印安装成功

'''
java version "1.8.0_371"
Java(TM) SE Runtime Environment (build 1.8.0_371-b11)
'''

 

[安装]

github地址: https://github.com/skylot/jadx/releases

 

[使用]

1.下载直接解压即可(注意不要放在有中文的路径)
2.把apk直接拖入软件即可

 

根据关键词搜索对应的代码

常用方式:

1) 在找到某个方法之后, 想要查看他的调用,右键选择"查找用例" 即跳转到过去

2)在资源文件中可以看到启动文件AndroidManifest.xml, 其中信息

包名: package

 

 

 

反混淆

一般情况下,为了项目的安全,我们在打包发布一个 apk 之前都会对其代码进行混淆加密比如用无意义的短变量去重命名类、变量、方法,以免代码被轻易破解泄露。

经过混淆的代码在功能上是没有变化的,但是去掉了部分名称中的语义信息。

为了代码的易读性,我们可以对代码进行反混淆。

在 jadx 中,我们通过 Tools -> Deobfuscation 即可开启反混淆功能。

 

posted @ 2024-08-27 16:34  X-Wolf  阅读(393)  评论(0编辑  收藏  举报