赞
踩
Android Killer是一款可以对APK进行反编译的工具,它能够对反编译后的Smali文件进行修改,并将修改后的文件进行打包
apktool、dex2jar、jd-gui的集合体
(注意:androidKiller版本可能太旧,导致反编译失败,需要下载版本更新补丁包或及时更新工具版本)
jdk1.8.0 + 已加补丁整合包下载路径
链接:https://pan.baidu.com/s/1oIigQ5QEUnJag-AB0EE4dg
提取码:59lw
将需要反编译的 apk 拖进 AndroidKiller 里,进行反编译(通过apk-tool、dex2jar)
当出现 APK 所有反编译工作全部完成!!!时,说明反编译成功
以一款计算机app为例
点开工程管理器,便会呈现apk的目录结构
对比得出以下结论:
无 META-INF 文件的原因:对apk的反编译过程中,对apk的整体性造成破坏,apk的签名没有存在意义,所以在反编译时被处理掉
AndroidManifest.xml 文件转换为 values 文件:AndroidManifest.xml 的反编译结果存放在了values开头的文件夹中,(对字符操作时,如汉化,需要修改values文件)
classses.dex 文件反编译为 smali 代码文件
当点开文件会出现smali代码,点击上方Javalogo,会呈现Java源码(通过 jd-gui)
当对反编译的文件做完操作后,重编译、签名打包成apk,点击上方”Android“后,点击左上角“编译“
当出现APK 所有编译工作全部完成!!!(包括编译与重签名) ,说明反编译成功
作用
进行解包,获得smail码
java -jar .\apktool的名字 d(反编译) .\要解包的apk -o(输出) 文件名
重新打包
java -jar .\apktool的名字 b(打包) .\要打包的文件夹名字
重新打包后的apk在要打包的文件夹里的dist目录下
Android 中的一个反编译工具,它可以将 Android 程序安装包 Apk 文件中的 .dex 文件反编译成一个 .jar 文件,也可以将反编译后的 .jar 文件重新编译成 .dex 文件。
d2j-dex2jar
命令按回车键第一种方法
d2j-dex2jar < dexFilePath > -o < outputJarFilePath >
dexFilePath: 要反编译的 .dex 文件的文件路径。
outputJarFilePath: 反编译后输出的 .jar 文件的文件路径。
第二种方法
将需要反编译的dex文件(这里是classes.dex)复制到 dex2jar 解压目录下。
打开命令行进入 d2j-dex2jar.bat 文件所在目录,输入命令 .\d2j-dex2jar.bat classes.dex
(.\当前目录 …\上一级目录)
d2j-jar2dex < jarFilePath > -o < outputDexFilePath >
将源代码转换成二进制执行代码的过程叫“编译”,那么反编译就是将二进制执行代码转换成源代码。
在java开发里,源代码是.java文件,然后经过编译后生成计算机识别的.class文件,但是.class文件是计算机识别的我们一般看不明白,因此需要反编译变成我们能读懂的源码
jadx是一款反编译器,同时支持命令行和图形界面,能以最简便的方式完成apk的反编译操作。
jadx 支持 Windows、Linux、 macOS,能够打开.apk
, .dex
, .jar
,.zip
等格式的文件
安装jadx
链接:https://pan.baidu.com/s/1FXaqUEobcuunVeQA-aGJdw?pwd=1234
提取码:1234
然后将build/jadx/bin加入到环境变量。
使用jadx
通用File - Open file选择文件或者直接将apk拖进窗口中,就可以查看某个 apk 的Java源码(自动分类源代码和资源文件)
用途:更直接地帮助分析代码
JEB是一款为安全专业人士设计的功能强大的Android应用程序反编译工具。用于逆向工程或审计APK文件,可以提高效率,减少工程师的分析时间。JEB支持Windows, Linux和Mac OS
安装jeb
链接:https://pan.baidu.com/s/1842GhhbKsk8WNaSiJMRVxw?pwd=1234
提取码:1234
下载完成后进行解压,解压完成后打开文件夹,运行安装目录下的.bat后缀的文件,等待一会就会出现jeb面板,这就说明我们的jeb工具能成功打开了。
如果cmd窗口显示一个检查更新出错,直接无视就可以了。
如果没有出现JEB面板,检查一下JDK环境是否配置了“JAVA_HOME”。如果已经配置,就要检查配置的路径是否正确以及检查jdk版本是否过高。
菜单栏使用
文件:文件的打开、导入、保存、另存为等操作。
编辑栏:文件的复制粘贴、搜索、语言设置、style设置字体、选项设置等操作。
行为栏:包含了快捷键操作:①Q:转换成伪代码 ② /:添加注释 ③ N:重命名 ④ Delete:删除
窗口:窗口显示的相关设置,使用默认即可。
帮助:官方的相关信息。
使用JEB反编译
将APK安装包拖进主界面即自动反编译,结构如下图,如果有外部引用还会有Libraries文件夹。
链接:https://pan.baidu.com/s/1nkZ32sK3IlanhTEAz21qjA?pwd=1234
提取码:1234
点击uiautomaatorviewer.bat,点击后会出现一个console黑窗口,使用时不要关掉。
打开APP,在 Ul Automator Viewer 点击 Device Screenshot
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。