安卓反编译详解

发布者:世界美景
发布于:2017-11-03 19:17

作为一个安卓开发人员 反编译应该是必会的 

1. apktool 获取资源文件  下载

2. 安卓逆向助手(推荐)  可视化的工具   下载

3 jd-gui  Jar文件(源码)查看器 下载

4. dex2jar  看名字也是dex 转jar 但我没用过 (安卓逆向助手可以代替他

5. IDA 反汇编神器 静态 动态调试 so(AndroidKiller IDA Jeb jadx  我会单独抽一篇博客介绍使用)


上述连接都是CSDN 站内的 原地址速度太慢    


apktool 下载完毕后 解压到C目录下 会出现  


我给你们推荐的这个版本还是比较好用的 


工具已到为 随便找个应用 来试下 就微信吧  要把微信APK名字改一下

随便什么都行 简单为主  把要反编译的APK   放在 apktool目录下




在W10 上 微软+X  + R (任务管理器) CMD   CD 一下 进入到apktool 目录下  


输入 apktool d 123.apk     d 代表反编译该123.APK  

输入 apktool b 123 -o 111.apk    b  代表把当前反编译出来的123文件 重打包成111.apk  apk需要重新进行签名   



显示为成功 会在 apktool 目录下生成一个和apk 同样名字的 文件 这里就是资源文件了 但微信有加固 获取出来的资源不是很全 缺少了很多  而且没有build 文件 也就无法拿到dex 文件 无法在把他转成Jar 不过没关系 下面会讲到

下面给大家换个APK   正常反编译出来的文件都是很全的    除了代码变成了 smali(虚拟机语言)

其他资源文件 布局 用了什么三方都可以看到


接下来还是回到微信  怎么办 要看他代码 那怕是混淆过的 现在就可以用上 安卓逆向助手了  

1打开逆向助手  点击提取dex  把微信apk 拖到逆向助手上  

点击操作 将会在你的桌面上生成 dex 文件  基本什么apk都可以提取到dex

目前没碰到过失败 百度 高德 微信 都可以 


2 安卓逆向助手 点击  dex转jar 在把dex 拖上去  就会在桌面上生成 一个jar 文件 这就是拿到源码了 



接下来 我们就可以通过 jd-gui 来查看 jar文件  一般操作到这安卓逆向助手会默认打开反编译出来的jar文件



也可以手动打开   点击 File 下面的蓝色文件夹 自行添加  就不加图了 点开你就懂了 我这都详细到不能在详细了...



讲到这里 应该是个人都能看懂了吧 其实很简单 就是工具的使用 而且我加了多张图 基本都快成图解了

 在获取资源文件那步骤  一般的 APK 都能直接拿到dex  到时候直接用 助手一转 就行  望大家灵活使用

jd-gui   快捷键 点击 Search 进行文件查询            


Ctrl  +  F 在当前类 进行查询方法  关键字等等










声明:该文观点仅代表作者本人,转载请注明来自看雪