反编译apk工具_Android常用工具集合(一)

本文介绍了Android常用的反编译工具,包括apktool、baksmali/smali、dex2jar、jd-gui、jadx和jeb的下载地址及使用方法,并提到了使用这些工具时可能遇到的安全漏洞,如XXE攻击和目录穿越。此外,还分享了常规的反编译分析APK的步骤和动态调试技巧。
摘要由CSDN通过智能技术生成

apktool

下载地址

下载地址 : https://ibotpeaches.github.io/Apktool/

使用方法

反编译成smali

$ java -jar apktool_2.3.4.jar d demo.apk
I: Using Apktool 2.3.4 on demo.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
S: WARNING: Could not write to (/Users/wujiabo/Library/apktool/framework), using /var/folders/pd/1qwx8_fd2wvgtpklyxb6qjvm0000gn/T/ instead...
S: Please be aware this is a volatile directory and frameworks could go missing, please utilize --frame-path if the default storage directory is unavailable
I: Loading resource table from file: /var/folders/pd/1qwx8_fd2wvgtpklyxb6qjvm0000gn/T/1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...

a0ee90b24bffbf96f858e85726aefacc.png

默认生成以apk名称命令的文件夹

cfa84e9e2d4128acd82fe4493a6d6754.png

重打包命令

java -jar apktool_2.3.4.jar b demo

漏洞

构造恶意的AndroidManifest.xml,重打包即可造成xxe攻击

java -jar apktool_2.2.2.jar b demo/ -o demoxxe.apk

c2df7e66eb457bd9881cd0e866f5aac8.png

d66e7bd77e4615358abbd8fe3d8cfa2c.png

影响版本

1.5.2-2.2.4
还有个目录穿越漏洞,详情可以看https://security.tencent.com/index.php/blog/msg/122?from=timeline&isappinstalled=0

baksmali/smali

下载地址

下载地址 : https://bitbucket.org/JesusFreke/smali/downloads/

使用方法

反编译成smali,实际上apktool用的反编译成smali就是用的这个工具

java -jar baksmali-2.2.2.jar disassemble demo.apk -o demo_baksmali

49f7764e260c12c35ab2575f49037433.png

重打包成dex

java -jar smali-2.2.2.jar assemble demo

9a8b135517d752ca67c291fdac2fc963.png

dex2jar

下载地址

下载地址 : https://github.com/pxb1988/dex2jar

使用方法

看这目录就知道很全全面了

70fff062497c4098df838b18ee89f59b.png

把apk/dex文件反编译成smali语言

sh d2j-baksmali.sh  demo.apk

重新签名dex文件

sh d2j-dex-recompute-checksum.sh demo.dex

把apk反编译成可读jar代码

sh d2j-dex2jar.sh demo.apk

注意,如果apk里面有多个dex,该工具只会反编译出一个,如果需要反编译dex文件,需从apk中扣出dex文件自行反编译sh d2j-dex2jar.sh classes.dex

把dex反编译成smali文件

sh d2j-dex2smali.sh classes.dex

把jar文件打包成dex

sh d2j-jar2dex.sh classes-dex2jar.jar

jd-gui

下载地址

下载地址 : http://jd.benow.ca/

使用方法

直接打开用反编译工具反编译出来的jar文件

b74f1e29ac08a26dda1f4f32d665e852.png

把所有java文件保存下来

6ea8bf539a6083b1a75db769ef3d8da7.png

232dc677eaef5ffa1ad9c3b6a574f683.png

jadx

下载地址

下载地址 : https://github.com/skylot/jadx

使用方法

直接打开apk即可

984cd4ae4b418a12b1da88115a468725.png

善用搜索

a046a7e26a2af8fbce116453c8bb615b.png

把整个工程保存在本地

81adb1efb9d6ed5c4fa809850ff7cd70.png

jeb

下载地址

下载地址 : https://www.pnfsoftware.com/

使用方法

直接打开apk即可

d0e1693f7ddb44453e1743d7c0d2face.png

按q反编译成jar代码

常规套路

首先看apk是否有壳,在无壳或者拖壳以后,用以上工具反编译成可读代码,然后阅读代码找敏感url、参数等,如果数据加密,也可以在java代码中寻找解密函数(不要一味的相信反编译出来的代码,没有一款工具能100
%正确),或者利用调试技术获取你想要的东西。

Android动态调试(一)动态调试Smali

Android动态调试(二)动态调试So

Android动态调试(三)Xposed hook

这款APK反编译工具(ApkToolkit)拥有编译、反编译、签名等功能,对于经常DIY安卓软件的朋友来说,是必不可少的工具。能够支持WIN7系统,但是这款安卓apk反编译工具暂不支持WIN8系统。 APK 反编译工具 ApkToolkit 中文版APK 反编译工具 ApkToolkit 中文版 功能介绍 1、反编译.apk 对.apk文件进行反编译。 2、重建.apk 根据反编译.apk得到目录重建.apk文件。 3、签名.apk 对.apk文件进行签名。 4、优化.apk 对.apk文件进行优化。 5、framework-res.apk工具 实现framework-res.apk的安装和管理。 6、.apk转.jar 将.apk文件转换为.jar文件。 7、.dex转.jar 将.dex文件转换为.jar文件。 插件版本: Java版本:1.7.0_60 Aapt版本:0.2 Apktool版本:2.0.0-dirty Dex2Jar版本:translator-0.0.9.15 使用说明 1、反编译.apk 拖拽【XXX.apk】程序到”反编译.apk”按钮前的输入区,点击”反编译.apk”按钮, 会在文件【XXX.apk】的同级目录下生成文件夹【XXX】。 2、重建.apk 把第一步得到的文件夹【XXX】拖拽到”重建.apk”按钮前面的输入区,点击”重建.apk”按钮, 会在文件夹【XXX】的同级目录下生成未签名的程序【XXX.R.apk】。 3、签名.apk 把第二步得到的程序【XXX.R.apk】拖拽到”签名.apk”按钮前的输入区,点击”签名.apk”按钮, 会在文件【XXX.R.apk】的同级目录下生成已经签名好的程序【XXX.RS.apk】。 4、优化.apk 把第三步得到的程序【XXX.RS.apk】拖拽到”优化.apk”按钮前的输入区,点击”优化.apk”按钮, 会在【XXX.RS.apk】的同级目录下生成已经优化好的程序【XXX.RSO.apk】。 5、framework-res.apk工具 拖拽【XXX.apk】文件到”安装”按钮前的输入区,点击”安装”按钮,会生成相应的apk,编译对某 些APK程序的反编译和重建。 点击”查看”,即可在资源管理器中看到已经安装的framework-res.apk,可对其进行管理或删除。 6、.apk转.jar 拖拽【XXX.apk】文件到”.apk转.jar”按钮前的输入区,点击”.apk转.jar”按钮, 会在文件【XXX.apk】的同级目录下生成文件【XXX_dex2jar.jar】。 7、.dex转.jar 拖拽【XXX.dex】文件到”.dex转.jar”按钮前的输入区,点击”.dex转.jar”按钮, 会在文件【XXX.dex】的同级目录下生成文件【XXX_dex2jar.jar】。 注意事项 1、使用环境:首先必须安装JDK 6/7。 2、使用“反编译.apk”功能时,路径中不能出现任何中文字符或全角字符! 3、使用“重建.apk ”功能时,路径中不能出现任何中文字符或全角字符!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值