利用无效字节码指令引发逆向工具崩溃(二)-创新互联

上一节我们介绍了一种利用无效字节码指令引发逆向工具崩溃的方法。(http://blog.csdn.net/lz201234/article/details/46004573)可惜的是大部分反编译工具已经修复了该bug。但是如果我们插入有效的字节码指令,但是后跟无效的数据引用,结果会是怎么样呢?

创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为始兴企业提供专业的网站设计、成都做网站始兴网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

    使用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)

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


本文题目:利用无效字节码指令引发逆向工具崩溃(二)-创新互联
本文链接:http://hbruida.cn/article/ceopsg.html