欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[原创]**企业版代码分析记录 之 反调试和资源一致性校验

[原创]**企业版代码分析记录 之 反调试和资源一致性校验

0x00 序1

随着移动安全越来越火,各种调试工具也都层出不穷,最近脱360壳的人满天飞,我今天来调一下棒棒企业版。

0x00 序2

现在脱壳动态调试,静态分析,基本上都是只使用ida,但很少有人结合ida_python动态调试,使用ida_python能很大的提高工作效率,就比如脱壳需要过反调试,或者寻找dump点,所以不是打开一次ida,附加一次进程就能脱下壳的,所以笔者决定结合ida_python将调试中使用到的小技巧总结归纳一下。

0x01 过反调试

想要脱壳第一步就需要过反调试,众所周知,反调试有好多种,最基本的一个是读取proc文件状态,所以肯定会调用fopen,所以使用ida_python下一个断点 AddBpt(LocByName('fopen'));一路f9走到这里



然后到lr的地方

f5

跟进来好多函数和变量都看不懂什么意思,分析之后使用ida_python重命名,就好分析了

使用之后是不是豁然开朗


这个函数是检测了这些东西然后判断到正在调试调试,返回1

那我们直接把这个返回值改成0


走出这个函数来到这里

这两个函数都是调试检测如果检测到调试会走到下面的异常函数

程序就会挂掉
同样修改返回值即可。

0x02 资源完整性代码分析

过掉反调试,断点断在 pthread_create 一路f9

确定lr是libDexHelper.so,然后在r2和lr的地址都下断点,继续f9

走到lr以后把主线程暂停

继续f9就可以到资源完整性检测的线程

这个函数会传入一个apk的安装路径。
然后她会分布操作
1读取assets/meta-data/manifest.mf内容

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功