Quantcast
Channel: CSDN博客移动开发推荐文章
Viewing all articles
Browse latest Browse all 5930

Android 完整反编译第二期:10分钟教会你使用反编译!

$
0
0

之前说过 apktool 插件,可以直接获取 资源文件

【Android ApkTool 反编译获取源码】下载一个apk,然后获取源码

  http://blog.csdn.net/ssh159/article/details/54800061


现在,补充完整版的 反编译吧!




插件 (版本自行决定用多少吧)

1、dex2jar-2.0  :  获取 java方法

2、jd-gui-window-1.4.0 :查看java方法

3、apktool 2.2.2(上个博客 介绍过了!):获取所有的资源文件(图片,xml,value属性),smali文件


一、dex2jar-2.0  的使用方法

二、jd-gui的使用方法

三、apktool的使用方法

四、联合使用

五、签名验证


1、首先,我们从android studio 导出一个apk

  


2、填写apk的信息:

key store:  bahao.jks

所有密码:123456

别名:xiyu

其他随便乱写一点,有效年份:25年,地区:cn(中国)



3、我们导出文件,生成一个apk, 名字太长了,我们改名:mytest.apk


一、dexjar 的使用方法:

1、下载解压,红色的为主要的文件!


这是源码:

只有一个方法:一键拨号。


2、将test.apk 改后缀 apk → zip ,打开压缩文件,

这里有个classes.dex,解压出来 



3、将class文件 放入dex2jar-2.0 文件夹中

4、DOS命令

cmd ,跳转H: ,cd dex2jar-2.0文件夹,

d2j-dex2jar.bat  classes.dex  (window用 bat,OS X用 .sh的文件)




5、可以得到一个jar包 



二、jd-gui 的使用方法:

1、下载解压文件,双击打开快捷方式,

要是报错打不开,请按照它 说的,去java官网下载合适的jdk,然后卸载你旧版的jdk

(这个文件很旧了,2015年的,我jdk1.8识别不了,1.7也不行,按照它说的 ,下了个小插件,

安装后OK)



2、把刚才的jar 包拖进去,就可以看到 MainActivity.class

方法的代码的,跳转的代码是数字,自行从R文件 找吧。


三、apktool 的使用方法:

得到方法后,我这里不使用方法,直接反编译apk

apktool d mytest.apk


H: 盘根目录会生成一个mytest 的文件夹,

打开可以看到里面是我们要的源码(java方法是机械码)


四、混合使用

1、小小改一下 app的头像



2、修改一下验证:以前据说可以绕过签名,但是

我没能绕过呢 ,2333



3、导包 apk

将文件打包成apk:


apktool b xxx(文件夹) -o xxx.apk(自定义)


五、签名验证:反编译后的文件,失去了签名,在手机上,是无法安装的!

在 android studio 或者 eclipse,很轻松的就能找到一个jks签名,

然后利用一下:

把jks复制到 h: 盘

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore 签名文件名 -storepass 签名密码 待签名的APK文件名 签名的别名



效果:




本文转载请注明出处!谢谢!


作者:ssh159 发表于2017/3/13 20:37:16 原文链接
阅读:250 评论:0 查看评论

Viewing all articles
Browse latest Browse all 5930

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>