文章目录[隐藏]
android 逆向 18 / 38
- app OAuth api_sign 分析
- app sig 参数加密分析 unidbg 模拟黑盒调用
- app sign so 加密参数破解|unidbg
- sgmain x-sign 分析 - unidbg
- androidAsync fridaManager sgmain 70102 rpc 远程调用
- app edata 参数 so aes 加密分析破解|unidbg
- frida 加载 sekiro dex 文件 实现与服务端交互
- frida sekiro 实现 sgmain 70102 远程 rpc 调用
- xposed sekiro hook 获取 wx 万能 key
- unidbg console debugger 使用
- unidbg hook inline hook 使用
- app 公众号文章列表 so 加解密算法分析还原 | 简单分析
- app 公众号文章列表 so 加解密算法分析还原 | 加密 rsa base64 分析
- app 公众号文章列表 so 加解密算法分析还原 | 加密 zip aes 分析
- app 公众号文章列表 so 加解密算法分析还原 | response 内容解密分析
- app sign so 加密算法分析还原|简单分析
- app sign so 加密算法分析还原|so 算法分析
- app sign so 加密算法分析还原|so sub_126AC 函数算法还原
- app so signkeyV1 参数分析
- ida 动态调试 android so 文件|基础入门环境搭建
- app so newSign 参数分析破解
- app tzRgz52a 参数分析破解
- app sign-v2 签名算法 aes 加解密分析
- app so 加密参数分析|protocbuf 分析
- mxtakatak android app 加解密分析
- android app so 加密算法分析破解|mtgsig unidbg
- android app so 加密算法分析破解|siua unidbg
- android app nsign so 加密算法分析
- android app sig 参数 so 加密逻辑逆向分析
- android app so sig 加密参数 unidbg
- 狗狗音乐登陆协议加密参数逆向分析
- android sign so 加密参数分析|unidbg
- android app X-SS-QUERIES 参数分析
- unidbg android app xgorgon 加密参数 leviathan
- sgmain 6.4.x xsign 加密算法分析研究
- sgmain 6.4.x xminiwua 加密算法分析研究
- 某 app mas 算法分析还原 cms so
- 某东登陆协议 tlv 逻辑分析
仅供学习研究 。请勿用于非法用途,本人将不承担任何法律责任。
const 龙哥 = Function() {}
const a = 全能的傻宝,每天都会换一种姿势来分享各种骚操作,10月份开始分享密码学;
const b = 点击加入星球;
return "无敌的龙哥";
推荐阅读
unidbg hook inline hook 使用
unidbg console debugger 使用
so 分析过程在验阶段会使用unidbg debugger hook
功能,不熟悉的可以阅读以上文章
JD app sign so 加密算法分析还原|简单分析
JD app sign so 加密算法分析还原|so 算法分析
前言
上一篇分析了
so
的加密逻辑,其中核心逻辑是sub_126AC
函数,这篇文就来看看sub_126AC
函数的加密逻辑
0x1
简单静态分析,看下
sub_126AC
函数的逻辑
上面一段代码看不出来是啥,猜测是 copy
一些数据,主要是下面的 switch
,经过调试发现走的是 case 2
分支
这里面调用了三个函数
sub_12FF0
这函数的大概逻辑,看起来应该是计算生成数据 类似于 md5
的盐值,大小是 64
个字节,没看到啥随机数,返回值应该也是固定的
sub_12ECC
这个函数看起来,应该就是核心逻辑了
sub_130D0
这个函数是释内存,下面主要分析 sub_12ECC
函数
0x2 sub_12ECC 函数分析
这个函数有两个大逻辑,因为对 c语言
不太熟悉,就自己对照着汇编代码,写了一些注释,当然都是我个人的理解,小伙伴们可以适当的参考一下
0x3 unidbg debugger 动态调试
0x10DF6
地址下个断点
成功断下来,查看 r0
的数据,看不出来是个啥,输入 n
指令,单步执行
再查看 r0
的数据,发现多了 8个字节
具体是啥,有啥用咱也不知道先不管了
使用 b
指令在这里下个断点 c
跳转
这里的话 unidbg
帮我们自动计算出了 0x40210040
地址,复制查看数据
不知道是啥,但发现大小是 64字节
猜测可能是 sub_12FF0
函数返回的,先保存下来
这个代码块就是计算然后把结果存到 v27
里,咱们就不分析了,直接看下面的逻辑
这里下个断点 c
执行跳转
查看 r0
看不来是啥,在 0x12F7A
下断点 c
执行
这里是 r2 的地址 - 20 = 0xbffff4ac 在取出第一个字节 = 0x37
,看下 0xbffff4ac
地址的数据
正是 37
,r2 = 0x37
,继续执
来到这里查看 0xbffff580
80306f4370b39fd5630ad0529f77adb6
是啥?,如果仔细分析 so
就会发现在字符串窗口里是有这个字符串的
字符串窗口里搜索一下,是有的,所以这个值在还原算法的时候是可以写的
继续往下,这时候就开始进行异或了,后面的逻辑都差不多
0x12F9C
下断点,c
执行,这里的 r2 = 0xaf
也就是最终异或计算的结果
0x4 python 还原
这是使用 python
还原后的运行结果,第一次循环的结果正好是 0xaf
最后会把所有循环计算的结果拼接到一起
最终的 md5
结果是 669355a2e119a4ad76d1c8d06fe18fd3
然后 unidbg
删除所有断点 c
执行,查看最终结果也是 669355a2e119a4ad76d1c8d06fe18fd3
0x5 python 测试
随便找个接口测试一下,请求成功
最后
某东
app
到此结束,我也没有去啊不还原,有些内容数据都是写死的,还原的代码也非常少,最后放出我修改好的so
文件,有需要的自取
逍遥
2021-11-19py源码有吗,可以发一波邮箱不
会爬山的小脑虎
2021-11-19@逍遥 sign 参数 py 已还原,有兴趣的话可以添加 wx: 2027762055 一起讨论
逍遥
2021-11-18app识别口令得接口也支持得把,小老弟儿
会爬山的小脑虎
2021-11-18@逍遥 这个接口没看过,如果有 sign 参数的话,没啥大问题