linux下的APK反编译软件及过程介绍 .

简介: <p>需要工具:<br>   1.apktool apk打包工具<br>   下载地址:<a target="_blank" href="http://code.google.com/p/android-apktool/" rel="nofollow"></a><a target="_blank" href="http://android-apktool.googlecode.com/

需要工具:
  1.apktool apk打包工具
  下载地址:http://android-apktool.googlecode.com/files/apktool1.5.2.tar.bz2
  安装:直接解压即可,是一个apktool.jar文件,通过

  1. $java -jar apktool.jar  

  来运行,依赖于java运行环境

  2.dex2jar dex转化jar工具
  下载地址:http://dex2jar.googlecode.com/files/dex2jar-0.0.9.15.zip
  安装:直接解压即可,是一个文件夹,里面包含了很多文件,通过

  1. $./dex2jar.sh  

  来运行

  3.如果你没有unzip,安装此解压工具, zip解压缩工具,用于解压jar包(jar包是zip压缩的,所以可以用其它工具代替)
  下载地址:ubuntu $sudo apt-get install unzip
  安装: $sudo apt-get install unzip

  1. $upzip [src_path] -d [dst_path]  

  来运行

  4.jad .class文件反编译工具
  下载地址:http://www.varaneckas.com/jad

       http://varaneckas.com/jad/jad158e.linux.static.zip
  安装:直接解压即可,是一个可执行文件,通过  

       ./jad

  来运行。需要说明的是,这个需要下载static版本的,如果不行的话,在去第一个链接里找另一个下载。


  接下来,工具准备完毕了,最好设定一下环境变量,我们就可以反编译apk了

  一、抽取apk资源

      执行: $java -jar apktool.jar d [source.apk]

  二、反编译源码

  (1)解压apk

  1. $unzip [source.apk] -d [step_1]  

  step_1指的是你所需要解压到的目录

  (2)进入step_1 目录,找到classes.dex文件,将dex文件转化成jar文件

  1. $dex2jar.sh classes.dex  

  (3)获得一个classes_dex2jar.jar文件,我们现在要再度解压这个文件

  1. $upzip classes_dex2jar.jar -d [step_3]  

  step_3指的是你解压到的目录

  (4)我们获得一个step_3目录,我们接下来要反编译该目录下所有.class文件  

  1. $./jad -o -r -s  java -d  src step_3/**/*.class  

       对于上面的参数,可以直接执行./jad查看,或者Readme.txt查看

  (5)我们再度获得一个src目录,该目录下就是反编译好的源码文件了。

也可以使用JD-GUI工具直接查看classes_dex2jar.jar的class文件。     


 如果以上命令不执行的话,查看目录是否正确。

相关文章
|
3月前
|
安全 Ubuntu Linux
Linux系统中的软件管理工具主
Linux系统中的软件管理工具主
61 7
|
3月前
|
Web App开发 监控 Linux
在Linux上,有许多软件可以下载和安装
在Linux上,有许多软件可以下载和安装
137 67
|
3月前
|
存储 关系型数据库 Linux
2024 年 16 个适用于 Linux 的开源云存储软件 (上)
2024 年 16 个适用于 Linux 的开源云存储软件 (上)
156 2
2024 年 16 个适用于 Linux 的开源云存储软件 (上)
|
3月前
|
存储 安全 Unix
2024 年 16 个适用于 Linux 的开源云存储软件 (下)
2024 年 16 个适用于 Linux 的开源云存储软件 (下)
67 0
2024 年 16 个适用于 Linux 的开源云存储软件 (下)
|
2月前
|
Linux
Linux - 如何编译源码安装软件
源码编译安装通常包括三个步骤:1) `./configure` 检测平台特征和依赖项,生成 Makefile;2) `make` 编译源码,生成可执行文件;3) `make install` 将可执行文件安装到指定目录并配置环境变量。
64 0
|
5月前
|
Web App开发 安全 Ubuntu
在Linux中,如何安装新软件?
在Linux中,如何安装新软件?
|
5月前
|
存储 缓存 安全
在Linux中,什么是软件仓库,并且如何管理它?
在Linux中,什么是软件仓库,并且如何管理它?
|
5月前
|
安全 Ubuntu Linux
在Linux中,如何卸载软件?
在Linux中,如何卸载软件?
|
5月前
|
缓存 安全 Linux
本地YUM源大揭秘:搭建您自己的Linux软件宝库,从此告别网络依赖!一文掌握服务器自给自足的终极技能!
【8月更文挑战第13天】在Linux中,YUM是一款强大的软件包管理工具,可自动处理依赖关系。为适应离线或特定安全需求,本指南教你搭建本地YUM源。首先创建存放软件包的`localrepo`目录,复制`.rpm`文件至其中。接着,安装并运用`createrepo`生成仓库元数据。随后配置新的`.repo`文件指向该目录,并禁用GPG检查。最后,清理并重建YUM缓存,即可启用本地YUM源进行软件搜索与安装,适用于网络受限环境。
305 3
|
4月前
|
Linux 网络虚拟化 Windows
ccproxy windows上用的代理软件(类似linux系统上的squid)
ccproxy windows上用的代理软件(类似linux系统上的squid)