Crack App | 某药助手加密内容与请求参数 mc_sign 逻辑分析

咸鱼学Python

共 944字,需浏览 2分钟

 ·

2023-10-04 14:22

点击上方“ 咸鱼学Python ”,选择“ 加为星标

第一时间关注Python技术干货!


c3e0260497f84fe9e933834a277e802b.webp

图源:AI绘画

包名

Y24uZHh5Lm1lZGljaW5laGVscGVy

加固对抗

查了一下是腾讯的加固

92d73b5b4c1b63e4b9488d82c17295a9.webp

使用blackdex32脱壳然后把结果 dump 出来用 jadx 打开

      
      adb pull /storage/emulated/0/Android/data/top.niunaijun.blackdexa32/dump/cn.xxx.xxxx
加密参数分析

app-ac

获取的dxy_app_code,一个版本貌似都是固定的

app-mc

这个参数是app开启的时候注册的

c0a3f19d2cb3b395b229217d3483b535.webp

nonce

随机用0-8的数组生成10位随机数

98b3692eace341a5869af7a43a5716ec.webp

mc_sign

每个请求都要带上 mc_sign,直接搜索 mc_sign 可以定位

29e014832079e9a2f899c58521f3a978.webp

可以找到参数拼接的位置

5566d9272a2f3483ec32640b67ee2c2f.webp

然后传入到参数加密的地方

217de081ffb0f93439efc7965e8f1de2.webp

通过上面的逻辑可以直接hook SHA-1 加密

这里直接跑一下通用的 java 层加密 hook 脚本,可以看到下面的参数

5517e7df190883d47546854888b4763d.webp

直接可以看到盐值,使用 python 复写一下就可以了

运行结果如下

5a693e0b7544ef0a443785cb4a61b605.webp返回值解密

逻辑定位

除了上面的加密参数之外,在详情部分的返回值是加密的,需要进一步分析

50def6804108ffa288ea2aaa200defb6.webp

直接搜索 data 肯定不太行,命中的筛选项太多了

所以试着通过请求链接找,可以找到下面的位置

94efa9aff4ac25b3d788b3ecb0561cb8.webp

然后再找 c 的引用部分

8edee546b34f976870a87d31be056c1c.webp

跟进去可以看到回调了下面的代码

cabe4831fb548b56b976f33eb918f647.webp

继续分析找到下面的位置

28a1d1b9d0c14d7815ba7bb4aaca2328.webp

跟进去这里的 b,a 就是解密的部分了

f88db3d628c6892226d44541592ef034.webp

Hook 验证

直接 hook 可以看到 key,带入 Python即可

62e19d50cb87c11588c1d7f01a0ff6e6.webp

结果如下

8dd6308b36b73fdd99a4ebc6feee2702.webp

End.

以上就是全部的内容了,咱们下次再会~

备注【 咸鱼666

入群交流

我是没有更新就在摸鱼的咸鱼

收到请回复~

d85e3b721892010b7511d6ebd695f800.webp咸鱼:来都来了,再不点赞就不礼貌了!

浏览 29
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报