Android SO 逆向总结 -- 如何得出所需的逆向算法

前置步骤

1.抓包确定目标参数
2.jadx 发现是否有壳 回填
2.jadx java层 hook 动静态 分析 参数加密地方
3.参数加密属于so层 找出对应的so文件 也就是 native 属于哪个so
4.进入so层 ida分析 打开确定是否混淆 是否动态加载

进入SO层分析

参考文章

看雪 夜幕 吾爱

init.array so 初始化 shift F7

data 字段查看信息

进入方法

DCD sub_939D8+1

看见了混淆

F5查看伪代码

修复参数

JNI_OnLoad函数注册

.data.rel.ro 注册函数信息

是否要抠出来算法

其他问题

应对检测 root检测
应对反调试 – 单独开一篇文章讲解
风控分析相关文章

https://bbs.pediy.com/thread-263401.htm
https://bbs.pediy.com/thread-260547.htm

FART脱壳的步骤主要分为三步:
1.内存中DexFile结构体完整dex的dump
2.主动调用类中的每一个方法,并实现对应CodeItem的dump
3.通过主动调用dump下来的方法的CodeItem进行dex中被抽取的方法的修复

FART 反射大师 易开发助手 dexDUMP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值