App 加密参数逆向全图:抓包定位、jadx 下
逆向 App 加密别只盯单个参数,得把整条链路跑通。
这篇文章拿“比特课堂”App的验证码接口当靶子。从抓包一路追到 native 层,最后用 Python 复现。核心就两步:
先抓包分类:把请求头里的字段分个类。固定常量直接放一边,动态值看一眼就行。真正要啃的是签名和加密那几个字段。
再下钻 Native 层:Java 层往往只是个壳,真正的算法都在 so 库里。找到 JNI 入口后,你会遇到字符串混淆。明文全藏在栈上,静态分析根本搜不到。
这时候就得祭出大招:用 Unicorn 模拟执行。把那段解密指令真跑一遍,把明文从虚拟内存里抠出来。光靠 hook 不行,因为中间变量根本 hook 不到。
顺藤摸瓜,后面就是拼凑参数、算签名、AES 解密。说白了,一个加密参数从来不是孤立的函数。它是常量、派生、排序和算法的混合体。只逆一半,下次版本一改脚本就得重写。
其它金额
赞赏金额
¥
最低赞赏 ¥0
1
2
3
4
5
6
7
8
9
0
.
原文App 加密参数逆向全图:抓包定位、jadx 下钻 JNI、oxorany 字符串混淆、Unicorn 模拟执行、HMAC-SHA256、AES-CBC 动态密钥
作者提示: 个人观点,仅供参考
广东,4小时前,
夜雨聆风