文章目录 一、apktool 1、apktool 简介 2、直接解压 3、使用 apktool 反编译 4、使用 apktool 重新打包 二、dex2jar 1、dex2jar 简介 2、dex2jar jd-gui 五、jadx 学习 Android 安全 , 首先要了解常用的破解 Android 应用的方式 , 本篇博客中简单介绍了破解 Android 应用的 5 种常用工具 , apktool , dex2jar ---- 1、dex2jar 简介 官方网站 : https://sourceforge.net/projects/dex2jar/ GitHub 地址 : https://github.com/pxb1988 /dex2jar 下载地址 : https://sourceforge.net/projects/dex2jar/files/ dex2jar 的作用是 将 dex 文件反编译成 jar 文件 ; 在 Android 反编译中就是将 classes.dex 反编译成 jar 文件 ; 2、dex2jar 反编译命令 反编译命令 : demo.apk 是指定要反编译的 apk 文件 , -o demo.jar
无论是在Windows平台还是在Mac平台,反编译APK都离不了ApkTool、dex2jar、JD-GUI 这三种工具,那么这三种工具都是做什么用的呢? dex的代码,通常需要配合dex2jar使用; 准备工作(安装ApkTool、dex2jar、JD-GUI的具体流程) 介绍过ApkTool、dex2jar、JD-GUI 的作用后,接下来我们做一些反编译前的准备工作 dex2jar 下载dex2jar 大家可以从https://sourceforge.net/projects/dex2jar/files/上下载dex2jar,也可以下载我为大家准备好的ApkTool 、dex2jar、JD-GUI。 由于APkTool只能将资源文件提取处理,对于.dex类型的文件是无法查看的,这里就需要用到dex2jar了。
工具 dex2jar jd-gui dex2jar使用 先参照上边提供的地址下载并解压dex2jar 然后再使用unzip命令解压apk,我们会在目录下边看到.dex文件 执行反编译命令 sh d2j-dex2jar.sh /home/im/Desktop/dex2jar/-debug-apk/classes.dex 上述命令执行的过程中可能会遇到一些问题: 问题1:提示:d2j-dex2jar.sh: 36: d2j-dex2jar.sh :sudo chmod +x d2j_invoke.sh 问题2:生产的jar可能为空 原因:d2j-dex2jar.sh执行会依赖其它的脚本(单独拷贝出来执行会有问题) 解决:执行它的时候dex2jar $ sudo chmod +x d2j_invoke.sh im@58user:~/Downloads/dex2jar-2.0$ sh d2j-dex2jar.sh /home/im/Desktop/dex2jar /bangjob-apk/classes.dex dex2jar /home/im/Desktop/dex2jar/bangjob-apk/classes.dex -> .
dex2jar+jd-gui工具反编译安卓apk 1.下载并解压以下两款工具 dex2jar 这个工具用于将dex文件转换成jar文件 下载地址:http://sourceforge.net/projects /dex2jar/files/ jd-gui 这个工具用于将jar文件转换成java代码 下载地址:http://jd.benow.ca/ 在JD-GUI栏中,点击Download,如果是windows 3.classes.dex文件就是存放所有java代码的地方了,将它拷贝到dex2jar解压后的目录下 4.在cmd中也进入到dex2jar的目录,然后执行: d2j-dex2jar classes.dex 现在在dex2jar目录,你会发现多了一个文件classes-dex2jar.jar 6.使用jd-gui工具打开classes-dex2jar.jar这个文件就可以看到反编译后的源码 apktool功能介绍 dex2jar下载:https://www.onlinedown.net/soft/989451.htm apktool下载:https://www.onlinedown.net/soft/577702
Android反编译查看源码 首先把.apk应用程序包复制一份到桌面,将.apk后缀名改为.zip文件 打开文件夹,找到classes.dex文件 安装dex2jar工具生成jar包 使用dex2jar 首先把.apk应用程序包复制一份到桌面,将.apk后缀名改为.zip文件 打开文件夹,找到classes.dex文件 安装dex2jar工具生成jar包 官网下载 使用dex2jar工具 将需要反编译的 classes.dex文件复制到 dex2jar 解压目录下 复制进来之后,在此目录打开命令行,输入命令 d2j-dex2jar.bat classes.dex 已经生成了.jar文件,此时就需要用到
TOOLS [apktool](https:/ /bitbucket.org/iBotPeaches/apktool/downloads/) apktool文档 dex2jar jd-gui 获取资源文件 java -jar apktool.jar d -f <xx.apk> -o <XX> java -jar apktool_2.3.3.jar d -f xx.apk -o XX **dex2jar 3.获取classes.dex(可能是安卓64k包所以会有多个classes.dex,有的时候会有好几个,可能因为混淆,或者加了壳,现在裸奔的应用很少了吧) 4.把classes.dex 文件放到 dex2jar mac: sh d2j-dex2jar.sh classes.dex **jd-gui:**查看代码工具 使用jd-gui打开classes-dex2jar.jar就可以看到源代码了 遇到的一些问题 使用dex2jar /d2j_invoke.sh: Permission denied 使用命令把dex2jar提升下权限就可以了 sudo chmod -R 777 dex2jar-2.0 相关链接 Android
dex2jar dex2jar用于将DEX文件转换成JAR文件,我们需要通过阅读程序的源代码,需要此工具。 安装 载dex2jar的源代码。 可以从dex2jar的官方网站下载(https://sourceforge.net/projects/dex2jar/)解压缩源代码压缩包。
APK签名也存储在此文件夹中 lib 此文件夹包含已编译的代码,例如本地代码库 工具介绍 名字 介绍 dex2jar 将apk中的class.dex文件反编译为jar包 jd_gui 将jar反编译为 .java文件 apktool 提取apk中的资源文件 下载注意: 根据自己的系统平台下载对应版本的工具,dex2jar貌似不支持Mac OS,其他两种工具支持Windows,Linux,Mac OS 相关命令 解包: apktool d test.apk dex2jar dex2jar下载 使用dex2jar,可以将解压apk包得到的classes.dex生成jar包。
本篇内容将使用dex2jar和jd-gui两个工具。 进行下载) 1.Java代码 1.1将APK文件改后缀为zip然后用解压缩软件打开,取出里面的classes.dex文件,如下图所示: 1.2将从apk文件中得到的classes.dex文件放入dex2jar 工具的目录中,如下图: 1.3在命令行中进入dex2jar工具的目录,执行命令: d2j-dex2jar.bat classes.dex ,如下图所示: 1.4待命令执行完成后,在 dex2jar工具的目录中会发现多了一个文件classes-dex2jar.jar. 1.5用jd-gui工具(jd-gui.exe)查看生成的jar文件,即可查看java反编译的代码。
Dex2jar:Dex2jar就是反编译源代码的,会把源代码反编译成一个jar包。 jd-gui :在上面Dex2jar反编译出来的jar包,放入jd-gui中,就可以查看源代码了。 然后我们把Dex2jar解压出来,发现里面有d2j-dex2jar.bat,这就是主角了。 Dex2jar解压截图 在Dex2jar解压出来的目录下,打开命令提示符输入: d2j-dex2jar.bat [classes.dex所在的路径] 比如: 反编译命令 运行后,我们发现在Dex2jar
dex2jar 安装 我们下面的操作需要使用到 mac上Android反编译工具dex2jar 已经安装过的可以直接前往下方查看。 dex2jar下载地址: https://sourceforge.net/projects/dex2jar/files/? 把 classes.dex 拷贝一份到 dex2jar工具包中,如图所示: 打开终端窗口 然后在终端里输入以下命令:sh d2j-dex2jar.sh classes.dex , 回车, 如果提示
安装apktool和dex2jar,jd-gui homebrew安装: brew install apktool brew install dex2jar JD-GUI去http://jd.benow.ca 将classes.dex文件复制到dex2jar所在的文件夹 终端cd到dex2jar目录,运行 sh dex2jar.sh classes.dex 生成 classes_dex2jar.jar 用jd-gui
下载dex2jar软件 解压下载的文件 将 APK解压出来的文件夹下的 classes.dex 文件复制到 解压下的dex2jar文件下. 在dex2jar文件夹目录处输入cmd 复制“d2j-dex2jar.bat classes.dex” 右键粘贴 会生成一个.jar文件 下载jd-gui软件 解压后打开软件 拖入.jar文件
与JD-GUI dex2jar用于将DEX文件转换为JAR文件,JD-GUI用于查看JAR文件中的Java代码: # 下载dex2jar wget https://github.com/pxb1988/ dex2jar/releases/download/v2.1/dex2jar-2.1.zip unzip dex2jar-2.1.zip # 使用dex2jar . 转换为Java代码 另一种常用的方法是使用dex2jar将DEX文件转换为JAR,然后使用JD-GUI查看: # 从APK中提取classes.dex unzip example.apk classes.dex -d tmp # 使用dex2jar转换 . 对每个DEX文件运行dex2jar ./d2j-dex2jar.sh example_extracted/classes.dex .
下载地址:https://ibotpeaches.github.io/Apktool/install/ (需要科学网) dex2jar:将 dex 文件转换成 jar 包 下载地址:http://sourceforge.net /projects/dex2jar/files/ jd-gui:用来查看 jar 包里面的代码的一种工具。 dex2jar 使用 把 apk 解压后的 classes.dex 文件放到 dex2jar 所在的文件夹中。
signapk.jar testkey.x509.pem testkey.pk8 xx.apk test_signed.apk smali/baksmali smali/baksmali dex文件的反编译与回编译工具 dex2jar dex2jar 将dex转换为jar包工具 1.把apk的后缀名修改成.zip 2.解压 3.获取classes.dex(有的时候会有多个classes.dex) 4.把classes.dex 文件放到 dex2jar 文件夹内 命令: d2j-dex2jar classes.dex // 会生成classes-dex2jar.jar mac: sh d2j-dex2jar.sh classes.dex ---- 使用dex2jar会提示没有权限 d2j-dex2jar.sh: line 36: . /d2j_invoke.sh: Permission denied 使用命令把dex2jar提升下权限就可以了 sudo chmod -R 777 dex2jar-2.0 jd-gui jd-gui
工具介绍 dex2jar 简介 : 将 .dex 或者 .class 后缀文件转换成 .jar 文件; -- 最新版本 : 目前最新版本 0.0.9.15; -- 官方地址 (需要访问国外网站) : http ://code.google.com/p/dex2jar/ ; -- 下载地址 (需要访问国外网站) : http://code.google.com/p/dex2jar/downloads/list; 执行反编译 : 将 classes.dex 拷贝到 dex2jar 目录下, 执行 . 打包 apk : 选择要打包的 apk 文件 : (4) 验证混淆效果 反编译 : 将 apk 文件后缀改为 .zip, 之后取出 classes.dex 文件 到 dex2jar 根目录中, 执行 /d2j-dex2jar.sh classes.dex dex2jar classes.dex -> classes-dex2jar.jar 在 jd-gui 中查看 Java 代码 : 二.
展示了令无数安全工程师如切豆腐般肢解移动端可执行密文的霸道利刃——dex2jar与其从兄弟工具群。你将学到如何将浑浊不堪的字节码彻底打回原形为平铺直叙的Java源代码,并一窥篡改包体后的反身再嵌术。 在dex2jar的铁蹄下,这种不可读的类文件封装结构只需一秒钟便能被复原抽离还原成JAR源。 开膛手:让DEX现回原形的dex2jar当我们清楚了APK中的战斗核心就是classes.dex文件之后,我们面临的是无法被常人生读的达尔维克(Dalvik)字节码矩阵。 这时候,dex2jar引擎套件登场。 以dex2jar与配套的反译工具流JD-GUI和底极重铸技Smali的连招打法,完全暴露出从Java层强拆出字节码乃至反向恶意修改甚至重封装的极危黑红边界线。
dex2jar:将dex文件转换为class文件,然后class文件打成jar包。 apktool:编译或者反编译apk文件。 AXMLPrinter2:反编译apk的xxx.xml文件。 2、dex2jar dex2jar下载: https://sourceforge.net/projects/dex2jar/ dex2jar使用: cmd下进入到d2j-dex2jar.bat目录, 执行
之前我们一直使用Dex2jar来完成这个工作,不过Dex2jar已经算是一个非常老的工具咯。 Dex2jar在绝大部分情况下都挺不错的,但是如果碰到了些模糊的特性或者特殊案例就会出错或者默默地吐出一些错误的结果。 相比之下,Enjarify在设计的时候就考虑到了尽可能多的情况,特别是对于那些Dex2jar不起作用的情况下。