利用无效字节码指令引发逆向工具崩溃(二)
来源:互联网 发布:中班美工区域材料图片 编辑:程序博客网 时间:2024/06/07 13:09
上一节我们介绍了一种利用无效字节码指令引发逆向工具崩溃的方法。(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”改为“12 01 38 01 03 00 1A 00 FF FF 00 00 00 00”(不清楚的可以看上一篇文章)
Opcodes解释:
12 01 // const/4 v1, 0 //v1=0
38 01 03 00 // if-eqz v1, loc_3A2AC //if(v1==0) 跳转到 loc_3A2AC:
1A 00 FF FF // const-string v0,(不存在的引用 FFFF)
// 本行代码被跳过,永远不会执行
// loc_3A2AC:
保存dex。把修改后的dex文件拖入DexFixer进行修复。
用修复后的dex覆盖原apk中的dex文件。
删除META-INF签名文件
使用签名工具,对apk重新签名。
Apk安装到手机,运行成功
下面试试反逆向工具的效果
Apktool:(反编译失败)
Dex2jar:(反编译失败)
用到的工具:
IDA :http://pan.baidu.com/share/link?shareid=132208&uk=1795434040
C32Asm :http://www.crsky.com/soft/3128.html
DexFixer:http://bbs.pediy.com/showthread.php?p=1158816
Ijiami signer:http://t.cn/R2tfvdP (下载此签名工具需登录注册http://t.cn/R2tfAiC)
- 利用无效字节码指令引发逆向工具崩溃(二)
- 利用无效字节码指令引发逆向工具崩溃(一)
- 利用无效字节码指令引发逆向工具崩溃(一)
- (爱加密系列教程十四)利用无效字节码指令引发逆向工具崩溃(一)
- 字节码指令概览
- 字节码指令集
- java 字节码指令
- 字节码指令简介
- 字节码指令简介
- java 字节码指令
- java 字节码指令
- 字节码指令集
- 字节码指令简介
- 8.字节码指令
- Java字节码指令
- 字节码指令
- gradle学习二 利用javassist api修改class字节码
- 关于iOS逆向工程的工具(二)
- JAVA基础二(java中的注释、ava编程语法基础、java数据类型、数据类型的转换、变量、运算符、分支语句、循环语句)
- SQLite C/C++ 接口介绍
- xml学习笔记
- 辛星浅析You don't have permission to access / on this server.的解决办法
- GCD
- 利用无效字节码指令引发逆向工具崩溃(二)
- 第六章:with、正则、变量
- Swift开发Sprite Kit游戏实践(二):让敌人们动起来
- 漠河身份证号码户籍地址信息查询
- 程序员专属谜语 你能猜中几个?
- 生活的每一刻属于有准备的人
- 创建table并赋值
- 黑马程序员——————多态性——vptr和vtable
- hdoj1156_rownie Points II(线段树)