java反编译工具_(技术) 叨逼叨一下 Android APK的反编译

首先声明一下,作为有正义感、有社会责任心的博主,立场必须坚定,旗帜必须鲜明,请勿通过反编译APK做一些违法乱纪的事儿

好了,声明结束,正式开始叨逼叨一下如何反编译APK。

我猜看到这篇文章的主儿应该都是IT从业人员,并且受到各方面因素的影响,无论是领导交代的任务还是自己的兴趣爱好想了解关于反编译的技能,看篇帖子你能学到什么?嘿嘿,能学到非常有用的技能。

你或许看到一些app,想要测试一下下人家的接口,所以想方设法扒接口,扒到接口之后,盗用人家的接口以及数据,然后自己做一个app,然后....然后....然后作为个人开发者你也上不了应用市场,因为要求软著以及企业账号....但是你可以上一些野鸡市场,野鸡市场还是很多的,比如那谁,那谁和那谁.....

在这个数据就是工业石油的时代,有了数据项目就有了血液....

说了这么多,你知道我想说什么吗? 试试吧,后浪,一切皆有可能

跟上我的脚步,进入正题

反编译apk就是查看 Android dex 文件的源码,然后分析出自己想要的信息

工欲善其事,必先利其器,所以我们先看看工具 apktool,并进行环境变量配置,下载链接如下:

https://ibotpeaches.github.io/Apktool/install/

见图如面,根据下图步奏,下载apktool相关文件

a2f92aee1a0b28013181e2e28e35dde0.png


1.png

首先在磁盘上创建apktool文件夹,用于存放apktool相关文件

第一步:下载apktool.bat, 截图中告诉你了"Right Click,Save Link As apktool.bat",存放到apktool文件夹下,特别注意如果后缀名不是".bat",一定要改为 “apktool.bat”

第二步:下载apktool.jar ,截图中告诉你了"find newest here",尽量下载最新版本,因为如果是老版本可能会导致反编译出问题,这里我使用的是2.3.3版本,下载后存放到apktool文件夹下

第三步:截图中又告诉你了“Rename downloaded jar to apktool.jar” ,因为如果没问题,应该都能看得懂,改名呗,我下载apktool_2.3.3.jar改名为apktool.jar

第四步,截图中告诉我们说,放到c:盘下,配置环境变量,我们放到了apktool文件夹下,同样也需要配置环境变量

上图,见图如面:

d2680829c5c6b9ed12d10d46c81a02bc.png


2.png

对了,看官知道如何配置环境变量吧,作为一个IT从业者,说不会可是会丢人的哦,没事儿,不会的话,加QQ群(578060039)问我,我不使劲儿嘲笑你,就嘲笑你一会儿

至此,我们的apktool工具就配置好了,有了金刚钻,咱就能揽瓷器活喽

下面我们进行反编译的实战,第一步找个apk,执行下图命令:

0aac8af5c07dcfa68779a47a0e5b746d.png


4.png

命令执行完之后我们发现,apktool目录下多了一个名为aaa的文件夹,里面我们就可以看到xml文件、AndroidManifest.xml和图片等资源文件,见下图

9d7d53603c991ce109d96bc32be9d337.png


4-2.png

其中文件夹smali,这里面其实就java代码,只不过不是jar形式的,但是我们要分析的是java代码,这怎么搞?其实也很简单,我们接着往下看。

我们还以aaa.apk为例,比如下图中的aaa.apk,第一步,复制一份,重命名为aaa.zip, 然后解压,见下图:

46e3feb73785785de3aa10c78ab89fd3.png


3.jpg

第二步:打开解压后的aaa文件,如下图

9d725b07010d1394315508cbb2651943.png


5.png

第三步,分析 dex文件,上图中我们看到有两个dex文件,classes.dex 和 classes2.dex ,这是因为进行了分包操作,这俩货就是 java的源码了,但是我们如何查看呢,这里还需要一个工具叫 dex2jar ,顾名思义就是dex转jar,

第四步,下载 dex2jar,下载链接哪里的有?下面的有,下载后是zip文件,拷贝到apktool文件夹下,解压

https://bitbucket.org/pxb1988/dex2jar/downloads/

第五步,将classes.dex 和 classes2.dex 拷贝到 dex2jar-2.0目录下,cmd 命令行,切换到 E:apktoolsdex2jar-2.0 ,输入命令:d2j-dex2jar.bat classes.dex 加下图:

6c0e247607965165084afccbb934a28a.png


7.jpg

第六步,在第五步中我们已经获取到了jar包,接下来就是查看jar包了,那如何查看呢?你真聪明,就是用jd-gui 工具,打完收工,哈哈哈

都说到这儿,当然有始有终,哪里下载jd-gui 工具,这里的下载,然后解压,然后打开jar,见下图

https://github.com/java-decompiler/jd-gui/releases/

b12fe59c7285a9f7dcfa24d218d70937.png


8.png

咦,窝巢,这个apk加固了,用的360加固的,这还看狗屁的逻辑,日了

加固之后肯定就看不到接口了,肿么办?抓包呀,下一篇文章我就教你如何通过Fiddler进行手机抓包

想不想联系到我?想?不想?到底想不想?想,想我就把我的QQ群:578060039 告诉你 访问我的网站 爱乐读 发现更多惊喜

爱乐读​www.iyuedu.space

打完收工

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值