上一节我们介绍了一种利用无效字节码指令引发逆向工具崩溃的方法。(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
$ cd /edx/app/edxapp/edx-platformubuntu@ip-10-16-152-13:/edx/app/edxapp/edx-platform$ sudo -u www-data /edx/bin/python.edxapp ./manage.py cms --settin...
分类:
其他好文 时间:
2015-05-22 16:47:09
阅读次数:
142
目录结构src Java源码gen 资源文件assets 存放较大文件res 图片res-layout 界面布局 textview显示内容不能修改res-values-string.xml 存放字符串AndroidMainfest.xml 清单文件drawable 程序图标classes.dex.....
分类:
移动开发 时间:
2015-05-18 10:40:45
阅读次数:
202
Dalvik虚拟机存在于Android系统,JVM是Java虚拟机,两者都是虚拟机,它们之间有什么区别呢?本文就对两者进行比较,讲述它们的不同。
1.定义:
Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一。它可以支持已转换为.dex(即Dalvik Executable)格式的Java应用程序的运行,.dex格式是专为Dalvik设计的一种...
分类:
移动开发 时间:
2015-05-16 09:18:23
阅读次数:
266