使用Apktools反编译apk应用
1.获取APK的classes.dex文件:
得到你想要的应用的apk文件,用解压软件打开apk,从apk中复制出classes.dex文件。
2.classes.dex转化为 .jar
解压下载的的dex2jar,将classes.dex复制到dex2jar.bat所在目录。用cmd在命令行下
定位到d...
分类:
其他好文 时间:
2015-07-02 12:18:10
阅读次数:
126
1、把apk文件改名为.zip,然后解压缩其中的class.dex文件,它就是java文件编译再通过dx工具打包成的。
2、把class.dex拷贝到dex2jar.bat所在目录,直接拖动class.dex到dex2jar.bat,生成classes.dex.dex2jar.jar。
或者:1.在cmd下进入dex2jar.bat所在路径,然后输入“dex2jar.bat XX...
分类:
移动开发 时间:
2015-06-18 11:41:59
阅读次数:
121
1、Dalvik虚拟机与Java虚拟机的最显著区别是它们分别具有不同的类文件格式以及指令集。Dalvik虚拟机使用的是dex(Dalvik
Executable)格式的类文件,而Java虚拟机使用的是class格式的类文件。一个dex文件可以包含若干个类,而一个class文件只包括一个类。由于一个dex文件可以包含若干个类,因此它就可以将各个类中重复的字符串和其它常数只保存一次,从而节省了空间...
分类:
移动开发 时间:
2015-06-07 15:55:46
阅读次数:
151
上一节我们介绍了一种利用无效字节码指令引发逆向工具崩溃的方法。(http://blog.csdn.net/lz201234/article/details/46004573)可惜的是大部分反编译工具已经修复了该bug。但是如果我们插入有效的字节码指令,但是后跟无效的数据引用,结果会是怎么样呢?
使用C32asm,以十六进制的方式打开dex文件。按快捷键“Ctrl + G”,定位到“0003A2A4”
把“62 00 02 04 1A 01 8E 07 6E 20 19 10 10 00”改为...
分类:
其他好文 时间:
2015-05-28 11:00:28
阅读次数:
234
Apk的安装过程分两步:
一、apk文件复制到程序目录下(/data/app/)
二、为应用创建数据目录(/data/data/package name/)
提取dex文件到指定目录(/data/dalvik-cache/)
修改系统包管理信息...
分类:
其他好文 时间:
2015-05-27 15:56:21
阅读次数:
121
使用到的工具:1.dex2jar它可以把apk里面的dex文件转换成jar文件2.jd-gui它可以把jar文件或class文件反编译成java文件3.apktool它可以拿到apk里面的资源文件1.获取代码文件首先解压APK文件,得到里面的classes.dex将dex2jar程序所在目录添加到系统环境变量,在classes.dex所在..
分类:
其他好文 时间:
2015-05-27 12:30:06
阅读次数:
110
由于大部分逆向工具都是线性读取字节码并解析,当遇到无效字节码时,就会引起反编译工具字节码解析失败。我们可以插入无效字节码到DEX文件,但要保证该无效字节码永远不会被执行(否则您的程序就会崩溃了!)。首先我们新建一个测试类。为了绕过Dalvik运行时代码验证,BadCode...
分类:
其他好文 时间:
2015-05-26 16:32:29
阅读次数:
224
由于大部分逆向工具都是线性读取字节码并解析,当遇到无效字节码时,就会引起反编译工具字节码解析失败。
我们可以插入无效字节码到DEX文件,但要保证该无效字节码永远不会被执行(否则您的程序就会崩溃了!)。
首先我们新建一个测试类。为了绕过Dalvik运行时代码验证,BadCode.java要保证不被调用。(否则运行app,会出现java.lang.verifyerror异常)...
分类:
其他好文 时间:
2015-05-26 12:51:18
阅读次数:
172
由于大部分逆向工具都是线性读取字节码并解析,当遇到无效字节码时,就会引起反编译工具字节码解析失败。 我们可以插入无效字节码到DEX文件,但要保证该无效字节码永远不会被执行(否则您的程序就会崩溃了!)。 首先我们新建一个测试类。为了绕过Dalvik运行时代码验证,BadCode.jav...
分类:
其他好文 时间:
2015-05-26 11:59:14
阅读次数:
137