
逆向之路
outer199
好好学习,天天向上!
展开
-
Android:Smali高亮语法插件
首先贴上插件链接:https://github.com/ShaneWilton/sublime-smali 如果你是使用Sublime Text查看smali代码的话,那你就来对了。根据上方链接中smali高亮语法项目的描述, 安装高亮语法插件需要如下几部操作:首先导航到Sublime的包管理目录 Mac电脑是Command + Shift +P 然后输入Preferences: Bro原创 2016-12-10 16:14:53 · 754 阅读 · 0 评论 -
Dalvik指令集
转载:http://blog.youkuaiyun.com/canfengxiliu/article/details/20144119 Dalvik指令格式 一段Dalvik汇编代码由一系列Dalvik指令组成,指令语法由指令的位描述与指令格式标识来决定。位描述约定如下: ● 每16位的字采用空格分隔开来。 ● 每个字母表示4位,每个字母按顺序从高字节开始,排列到低字节。每4位之间可转载 2017-03-03 14:09:57 · 1667 阅读 · 0 评论 -
Android:Dalvik虚拟机
【本文是Android软件安全与逆向分析读书笔记,纯手打】一、Dalvik虚拟机Dalvik虚拟机是google专门为Android设计的虚拟机。1、Dalvik虚拟机的特点:体积小、占用内存空间小专有的DEX可执行文件格式、体积更小、执行速度更快常量池采用32位索引值,寻址类方法名、字段名、常量更快基于寄存器架构,并拥有一套完整的指令系统提供了对象生命周期管理、堆栈管理、线程管理、安全和原创 2016-12-08 20:07:24 · 494 阅读 · 0 评论 -
Java 字节码操控框架ASM(四):Tools
一、TypeA Type object represents a Java typeType.getType(String.class).getInternalName() :结果是 java/lang/StringType.getType(String.class).getDescriptor() :其实就是 Ljava/lang/String;Type.INT_TYPE.getD原创 2017-02-21 15:32:20 · 1084 阅读 · 0 评论 -
Java 字节码操控框架ASM(三):修改 classes
Account.javapackage com.asm.modifyclass;/** * Created by ouer1994 on 2017/2/18. */public class Account { public static void main(String args[]) { new Account().doAccount(); } publ原创 2017-02-20 18:34:57 · 1718 阅读 · 0 评论 -
Android:Smali(部分文档)
cmpl-double vx,vy,vz 比较vy和vz的值,并把结果赋值给vxif-nez vx,target 如果vx != 0,就跳转到target if-eqz vx,target 如果vx == 0,就跳转到target原创 2016-12-15 13:57:27 · 552 阅读 · 0 评论 -
Charles将指定的请求改为固定返回值
方法一:本地映射Charles进行抓包选择某一个网络请求 > 鼠标右键 Save Response...如果该请求返回的是一个json串,保存文件时需要保存rename.json需要更改的请求点击右键 Map Local.. 指定到本地保存的renam.json.通过在本地更改rename.json就可以自动的更改请求的返回值。方法二:打断点选择某一个网络请求 > 鼠标右键 Break原创 2017-02-11 16:33:42 · 6599 阅读 · 0 评论 -
Java 字节码操控框架ASM(一):创建class文件
1、什么是 ASM ?ASM 是一个 Java 字节码操控框架。它能被用来动态生成类或者增强既有类的功能。ASM 可以直接产生二进制 class 文件,也可以在类被加载入 Java 虚拟机之前动态改变类行为。ASM 从类文件中读入信息后,能够改变类行为,分析类信息,甚至能够根据用户要求生成新类。2、Java 字节码小知识a、类型描述符 b、方法描述符 3、创建class文件首先去官网下载一下原创 2017-02-18 18:12:19 · 2032 阅读 · 0 评论 -
Java 字节码操控框架ASM(二):Parsing class
解析类需要的ASM框架的类是:ClassReaderClassPrinter.javapackage com.asm.readclass;import org.objectweb.asm.*;/** * Created by ouer1994 on 2/19/2017. */public class ClassPrinter extends ClassVisitor { public原创 2017-02-19 19:16:40 · 456 阅读 · 0 评论 -
Android从手机中拷贝出文件
一、查看应用创建的文件(data目录无法打开问题)在使用 Android Device Monitor 时要查看data目录下某个文件,data目录无法打开? 首先,使用的手机需是root过的,然后在终端输入Mac-mini~ aaa$ adb shellshell@aries:/ $ suroot@aries:/ # 如果手机没有root会提示:/system/bin/sh: su: no原创 2017-02-16 15:32:25 · 2221 阅读 · 0 评论 -
Android:Smali语法(下)
[这篇总结的比较乱,不过干货很多。]一、需要知道的小知识点所有的局部变量用v开头,方法的顶部.locals 8表示这个方法使用8个局部变量。所有的参数用p开头,局部变量和参数都是从0开始编号。对于非静态方法来说,p0就是对象本身的引用,即this指针。对于Java文件中的每一个内部类,都会产生一个单独的smali文件,比如ActivityThread$1.smali,这些文件的命名规范是如果是匿名类原创 2016-12-10 16:34:57 · 764 阅读 · 0 评论 -
Android: .java文件转.dex和java字节码
一、.java文件转.dex首先将 .java 文件转成 .class 文件(例如:Hello.java) javac Hello.java —> 得到Hello.class [这里有一个坑,请大家注意:如果你的java版本是1.7的话,在转dex文件的时候很有可能会报错,请使用如下命令:javac -source 1.6 -target 1.6 Hello.java].cla原创 2016-12-16 15:13:43 · 1519 阅读 · 0 评论